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

汇编语言 MOV [DI],AX 求解答。

还有,MOV AL,DI 和 MOV AL,ES:DI 有区别吗? ES:DI 和 ES:[DI] 有区别吗?
答案:MOV AL,DI = MOV AL,ES:DI 前提是dl的段前缀默认是es,ES是段前缀的意思就是说di是偏移量是相对于ES这个段前缀的di只是个逻辑地址,也就是偏移量(相对于ES的),要看dl的默认段是不是ES,我记得好像不是吧dl的默认偏移段是ds吧、
ES:DI 和 ES:[DI]前者同上,后者是先取es段偏移量为dl的值再将这个值当作地址,取这个地址所指向内存单元的值,明白了么
其他:要求如此,请达人解答 ; 本程序在MASMPlus 1.2集成环境下通过编译,xor dx,dx div bx or dl,30h mov [di],dl dec di test ax,0ffffh MOV AL,DI 和 MOV AL,ES:DI 在同一段中只要没动过ES就是一个意思,
ES:DI 和 ES:[DI] 这两个区别可大了,前一个是直接寻址,指到的是DI值的位置,
后这加了[  ]是间接寻址,就是指到的是DI中装的数的位置上去了,

上一个:汇编语言中子程序参数可以通过什么进行传递
下一个:汇编语言中,mov a,#30H是什么意思

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,