小飞侠 发表于 2011-5-14 00:51:00

这些地址玩死我了~~我去!

本帖最后由 loop 于 2011-5-19 16:31 编辑

请教大家这个问题~~

(1)
如这段代码:mov ax,2000H
                         mov ds,ax
                         mov ax,


有时候是字单元的数据写入AX

而有时候是字节单元的数据写入AX

如何区分呢??

(2)
还有检测点3.1中:

第一个填空的数据是怎么来的,前三句口令是确定了地址:0010:000而题中给的数据中地址是0000:0000和0000:0010

那么有-d查看的地址,和算式表达的物理地址,有区别嘛??

请大家帮我梳理下~谢谢!!{:5_100:}
                                                                     

loop 发表于 2011-5-14 01:34:51

本帖最后由 loop 于 2011-5-14 01:41 编辑

小飞侠 发表于 2011-5-14 00:51 static/image/common/back.gif
请教大家这个问题~~

(1)


问题1:
      首先要分清楚两个概念,字和字节。
      字是16位的,由两个8位字节组成。
      字节是8位的,分高、低字节。
      所以判断写入的是字还是字节,只要看是16位,还是8位。

问题2:mov ax,1      ;把1赋值给ax
mov ds,ax   ;把ax的值传送给数据段ds
mov ax,   ;这时段地址为0010,偏移地址为0,所以ax的值为:26 62

那么有-d查看的地址,和算式表达的物理地址,有区别嘛??
第二问,有点没看懂。{:2_25:}期待各位鱼友解答。

超越自我 发表于 2011-5-14 15:05:12

回复 小飞侠 的帖子

(1):写入的数据是字还是字节是由被写入对象决定的,如moval , 与mov ax, 的差别就是前者写入的是2000:0000字节单元中的数据,后者写入的是字单元中的数据,即:2000:0000到2000:0001两个字节中的数据。
(2):-d 查看的地址有多种组合,不过指向的是同一个物理地址

小飞侠 发表于 2011-5-14 16:05:53

回复 超越自我 的帖子

感谢指导,我体会理解下~{:5_106:}

小飞侠 发表于 2011-5-14 16:06:24

回复 loop 的帖子

谢谢指教,我好好想想~~{:5_108:}

sunhopp 发表于 2011-5-15 02:50:56

问题1
mov al,;al是8位的,所以写入的是字节数据
mov ax,;ax通用寄存器是16位的,所以写入的是字节数据
问题2
(那么有-d查看的地址,和算式表达的物理地址,有区别嘛?)
是没有区别的!因为同一个物理地址的表达有多种组合,其实终于的目标地址都是一样的!只是表达的形式不同而以
页: [1]
查看完整版本: 这些地址玩死我了~~我去!