帮忙给每行注释下.越详细越好.

问题描述:

帮忙给每行注释下.越详细越好.
MOV\x05\x05CX,100MOV\x05\x05AL,待搜索的对象LEA\x05\x05DI,BLOCKMOV\x05\x05AX,SEG BLOCKMOV\x05\x05ES,AXREPNE SCASBDEC\x05\x05DI
循环的是哪几句?
1个回答 分类:综合 2014-11-08

问题解答:

我来补答
MOV CX,100 ;设置循环次数100次
MOV AL,待搜索的对象 ;设置待匹配对象
LEA DI,BLOCK ;将BLOCK偏移地址赋给DI,作为目的串起始地址
MOV AX,SEG BLOCK ;将BLOCK段地址赋给AX
MOV ES,AX ;将目的串段地址赋给附加段
REPNE SCASB ;重复字节串搜索指令,每次CX-1,至CX=0或ZF=1为止;每次搜索完DI位于匹配处的下一单元
DEC DI ;所以最后一次结束后DI位于串结尾的下一个单元,通过自减一得到匹配处的偏移地址
[补充] SCASB作用是在字节串中搜索AL中的值,根据DF值设置每次结束后DI是值,DF=0(默认)时,DI自增,DF=1时,DI自减
 
 
展开全文阅读
剩余:2000
上一页:希望高人解答