[计算机软件及应用]汇编语言

[计算机软件及应用]汇编语言

ID:40005232

大小:225.45 KB

页数:44页

时间:2019-07-17

[计算机软件及应用]汇编语言_第1页
[计算机软件及应用]汇编语言_第2页
[计算机软件及应用]汇编语言_第3页
[计算机软件及应用]汇编语言_第4页
[计算机软件及应用]汇编语言_第5页
资源描述:

《[计算机软件及应用]汇编语言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、串的基本概念顺序存放在内存中的一组数据,称为串。用串的首(末)地址、元素类型、串的长度表示。3.3.4串处理指令MOVS串传送指令STOS存入串指令LODS从串取指令CMPS串比较指令SCAS串扫描指令INS串输入指令OUTS串输出指令配合使用的前缀有:REP重复REPE/REPZ相等/为零则重复REPNE/REPNZ不相等/不为零则重复1、与REP配合工作的MOVS/STOS/LODS/INS/OUTS格式:REPMOVS/STOS/LODS/INS/OUTS执行操作:(1)如(CX)=

2、0则退出REP,否则转(2)(2)(CX)(CX)-1(3)执行MOVS/STOS/LODS/INS/OUTS(4)重复(1)~(3)MOVS串传送指令格式:MOVSDST,SRC须指明传送的是字节、字、双字MOVSB(字节)MOVSW(字)MOVSD(双字)(386后)例:MOVSES:BYTEPTR[DI],DS:[SI]低地址高地址DSES(SI)(DI)执行操作:(1)((DI))←((SI))(2)字节操作:(SI)←(SI)±1,(DI)←(DI)±1字操作:(SI)←(SI)±2,(

3、DI)←(DI)±2方向标志DF=0时用+,DF=1时用-。执行REPMOVS之前,应先做好:(1)首地址(末地址)→SI(2)目的串首地址(末地址)→DI(3)串长度→CX(4)建立方向标志(CLD使DF=0,STD使DF=1)注意:源串默认在数据段中,目的串必须在附加段中,但源串可以使用段跨越前缀来修改例datareasegmentmess1db‘personal_computer’datareaendsextrasegmentmess2db17dup(?)extraendscodesegment…

4、(ES,DS装填)leasi,mess1leadi,mess2movcx,17cldrepmovsb…codeendsleasi,mess1+16leadi,mess2+16movcx,17stdrepmovsbSTOS存入串指令STOSDST(例:STOSES:BYTEPTR[DI])STOSB(字节)STOSW(字)执行操作:字节操作:((DI))←(AL),(DI)←(DI)±1字操作:((DI))←(AX),(DI)←(DI)±2例:把附加段中的5个字节缓冲区mess2置为20Hleadi,me

5、ss2moval,20Hmovcx,5cldrepstosb自学:LODS从串取指令INS串输入指令OUTS串输出指令与REPE/REPZ和REPNE/REPNZ配合工作的CMPS和SCAS格式:REPE/REPZ(REPNE/REPNZ)CMPS/SCAS执行操作:(1)如(CX)=0或ZF=0(ZF=1)则退出,否则转(2)(2)(CX)←(CX)-1(3)执行CMPS/SCAS(4)重复(1)~(3)CMPS串比较指令CMPSSRC,DSTCMPSB(字节)CMPSW(字)执行操作:(1)((SI

6、))-((DI))根据比较结果设置条件标志位:相等ZF=1不等ZF=0(2)字节操作:(SI)←(SI)±1,(DI)←(DI)±1字操作:(SI)←(SI)±2,(DI)←(DI)±2SCAS串扫描指令SCASDSTSCASB(字节)SCASW(字)执行操作:字节操作:(AL)-((DI)),(DI)←(DI)±1字操作:(AX)-((DI)),(DI)←(DI)±2CMPS/SCAS与REPE/REPZ和REPNE/REPNZ配合用于比较两个数据串,或从一个字符串中查找一个指定的字符例:从一个字符串

7、中查找一个指定的字符messdb‘COMPUTER’leadi,messmoval,‘T’movcx,8cldrepnescasb(DI):相匹配字符的下一个地址(CX):剩下还未比较的字符个数COMPUTER(di)COMPUTER(di)例比较两个字符串,都是8个元素,找出它们不相匹配的位置leasi,mess1leadi,mess2movcx,8cldrepecmpsb无条件转移指令JMP格式:JMP标号段内直接短转移JMPSHORTOPR执行操作:(IP)←(IP)+8位位移量(-128~

8、127)例:…...JMPSHORTHELLO……HELLO:MOVAL,33.3.5控制转移指令段内直接近转移JMPNEARPTROPR执行操作:(IP)←(IP)+16位位移量段内间接转移JMPWORDPTROPR执行操作:(IP)←(EA)段间直接转移JMPFARPTROPR执行操作:(IP)←OPR的段内偏移地址(CS)←OPR所在段的段地址段间间接转移JMPDWORDPTROPR执行操作:(IP)←(EA)(CS)←(EA

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。