当前位置:编程学习 > 汇编语言 >>

汇编中ds的设置

在DEBUG中,用 "D 0:0 lf" 查看内存,结果如下: 0000:0000 70 80 F0 30 EF 60 30 E2-00 80 80 12 66 20 22 60 0000:0010 62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88 下面的程序执行前,AX=0,BX=0,写出每条汇编指令执行完后相关寄存器中的值 mov ax,1 mov ds,ax mov ax,[0000] ax= 2662H 为什么这里的ax是2662H,不是8070H
答案:mov ax,[0000]  实际上就是mov ax,ds:[0000]转成逻辑地址就是1:[0000]
他所对应的物理地址就是1*10H+0=10H
物理地址10H又可以写成0:[0010]
实际上1:[0000]=0:[0010]都等于物理地址10H
其他:执行mov ax,1 
mov ds,ax
后
ds=1
[0001:0000]=[0000:0010]=2662h
[0000:0000]=8070H 

上一个:汇编illegal indexing mode
下一个:请问这个是汇编程序吗

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,