在寄存器间接寻址中,若指令指定的寄存器是BX、SI、或者DI,则默认操作数存放在(46)段中。这时要用寄存器(47)的内容作为段地址。对于指令MOV BX,[SI],假设数据段寄存器DS=1000H,代码段寄存器CS=4000H,堆栈段寄存器SS=7000

admin2010-05-10  30

问题 在寄存器间接寻址中,若指令指定的寄存器是BX、SI、或者DI,则默认操作数存放在(46)段中。这时要用寄存器(47)的内容作为段地址。对于指令MOV BX,[SI],假设数据段寄存器DS=1000H,代码段寄存器CS=4000H,堆栈段寄存器SS=7000H,SI=2000H,则操作数的物理地址为(48)。

选项 A、C000H
B、12000H
C、3000H
D、6000H

答案B

解析 汇编语言的部分寄存器解释如下。
   AX:累加寄存器,常用于运算。
   BX:基址寄存器,常用于地址索引。
   CX:计数寄存器,常用于计数。
   DX:数据寄存器,常用于数据传递。
   CS:代码段寄存器。
   DS:数据段寄存器。
   SS:堆栈段寄存器。
   ES:附加段寄存器。
   SI:源变址寄存器可用来存放相对于DS段之源变址指针。
   Dh目的变址寄存器,可用来存放相对于ES段之目的变址指针。
   操作数在存储器中,操作数的有效地址用SI、DI、BX和BP这4个寄存器之一来指定,称这种寻址方式为寄存器间接寻址方式。在不使用段超越前缀的情况下,有下列规定:
   若有效地址用SI、DI和BX等之一来指定,则其缺省的段寄存器为DS;若有效地址用BP来指定,则其缺省的段寄存器为SS。
   该寻址方式物理地址的计算方法为
   
   根据题意,物理地址PA=(DS)×16+(SI),即:PA=1000H×16+2000H=12000H。
转载请注明原文地址:https://kaotiyun.com/show/fYtZ777K
0

最新回复(0)