帮忙给每行注释下.越详细越好.MOV\x05\x05CX,100MOV\x05\x05AL,待搜索的对象LEA\x05\

帮忙给每行注释下.越详细越好.
MOVx05x05CX,100MOVx05x05AL,待搜索的对象LEAx05x05DI,BLOCKMOVx05x05AX,SEG BLOCKMOVx05x05ES,AXREPNE SCASBDECx05x05DI
循环的是哪几句?
rollercoster 1年前 已收到1个回答 举报

jelly-lin 幼苗

共回答了18个问题采纳率:72.2% 举报

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自减

1年前

1
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.020 s. - webmaster@yulucn.com