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

汇编中的:mov [edi+01],al 是什么意思,请大家帮我看下我分析的对不对

首先假设edi=10 第一步算的是:edi+01=11 然后再11*al吗?或者是加上al 可是我找出al的值等于edi呀
补充:求教如何找到al的值是多少呢???小弟汇编没入门
追问:那请问大侠怎么找al的值呢?这是个很大的难题看看要恶补汇编知识了,在王爽的教程里发现debug这个词语。可不会使用············
答案:方括号“[]”内的表达式是一个内存地址;逗号的前半段是目的操作数,后半段是源操作数;mov指令是数据传送指令,也就是把AL的值传送至偏移地址EDI + 01h指向的内存单元中。

假设EDI = 10(十六进制数0ah),位移量1h,则偏移地址EDI + 1h = 0bh。又假设AL = 0ffh,则
            | ……|                                                            AH     AL
 DS:[0bh] --> |  ffh  | <--------------------------------------- |   ……  |  ffh  |                    
                     | ……|                                                               AX  
                     | ……|   


另外,debug无法查看EDI的值,你需要使用32位的调试程序。
其他:你是不知道MOV指令的意思
把AL的值送到内存为[11]的地方 

上一个:Proteus isis的问题(汇编)
下一个:汇编小程序求源代码。。。

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