汇编中的:mov [edi+01],al 是什么意思,请大家帮我看下我分析的对不对
首先假设edi=10 第一步算的是:edi+01=11 然后再11*al吗?或者是加上al 可是我找出al的值等于edi呀
补充:求教如何找到al的值是多少呢???小弟汇编没入门
追问:那请问大侠怎么找al的值呢?这是个很大的难题看看要恶补汇编知识了,在王爽的教程里发现debug这个词语。可不会使用············
首先假设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的问题(汇编)
下一个:汇编小程序求源代码。。。