zhangzaifang 发表于 2013-8-12 13:55:47

求助求助求助~

已知(DS)=2000H,(SI)=32D4H,(EAX)=12345678H,执行指令MOV , EAX后,存储单元2000:32D5H中的数据是
 A)12H  B)34H  C)56H  D) 78H网上的答案是C对不对呢.如果对的为什么呢。

zer0 发表于 2013-8-12 13:55:48

答案是C吧~~~~

00000000 00000000 00000000 00000000
|===============EAX===============|--32个0,4个字节,2个字,1个双字
                  |======AX=======|--16个0,2个字节,1个字
                  |==AH===|-----------8个0,1个字节
                           |===AL==|---8个0,1个字节

si,ds是16位的,eax是32位的
如果是MOV , EAX只会传进ax中的内容吧(对应都是16位吧)
从上图可知 所以相当于传进了 mov ,3456h
所以是 mov ds:,3456h=> mov 2000:32d4,3456h
$ 32d5就是56h吧

我觉得是这么理解的,如有错请指出,不想误人子弟~~

Seandor 发表于 2013-8-12 14:36:31

应该是这样吧

Dardy 发表于 2013-8-12 22:23:56

是内存地址,不是寄存器,没有16位32位之别
页: [1]
查看完整版本: 求助求助求助~