- 1、本文档共304页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章-寻址方式指令系统PPT
* * 循环移位指令对标志的影响 按照指令功能设置进位标志CF 不影响SF、ZF、PF、AF 如果进行一位移动,则按照操作数的最高符号位是否改变,相应设置溢出标志OF:如果移位前的操作数最高位与移位后操作数的最高位不同(有变化),则OF = 1;否则OF = 0。当移位次数大于1时,OF不确定 * * 例3.33:32位数移位 ;将DX.AX中32位数值左移一位 shl ax,1 rcl dx,1 DX AX CF 0 * * 例3.34:位传送 ;把AL最低位送BL最低位,保持AL不变 ror bl,1 ror al,1 rcl bl,1 rol al,1 AL、BL CF BL CF AL CF AL之D0 * * 例3.35:BCD码合并 ;AH.AL分别存放着非压缩BCD码的两位 ;将它们合并成为一个压缩BCD码存AL and ax,0f0fh ;保证高4位为0 mov cl,4 rol ah,cl ;也可以用shl ah,cl add al,ah ;也可以用or al,ah * * DATAW DW 97F4H COUNT DB ? … … XOR AL,AL ; AL清零,用来存放“1”的个数 MOV DL,16 ; 循环移位16次 MOV BX,DATAW ; 将操作数放入BX AGAIN: ROL BX,1 ; 循环左移1次 JNC NEXT ; CF=0 则跳 ADD AL,1 ; CF=1 则计数 DAA ; adjust the count for BCD NEXT: DEC DL ; 循环16次 JNZ AGAIN ; 16次做完了吗? MOV COUNT,AL ; 将AL中的十进制数存入 COUNT 例: 编写统计DATAW字数据中1的个数COUNT的程序,要求COUNT是BCD码。 * * 3.已知AX、BX中存放带符号数,实现AX÷BX的指令是( )。 A. DIV BX???????? B. XOR DX,DX / DIV BX C. CWD / IDIV BX D. CBW / IDIV BX ? 练习题 1. 已知AL中有一带符号数,欲将AL内容除以2的指令是(??)。??? A. SAR AL,01H??????????????????????? B. SHR AL,01H ??? C. MOV BL,02H / IDIV BL?? D. MOV AL,AL/2 ? ? 2. 设AL中已有压缩BCD码,要实现AL减1,可选用的指令是(??)。??? A. DEC AL / AAS??????????????????????? B. SBB AL,0 / DAS ??? C. SUB AL,1 / AAS D. SUB AL,1 / DAS ? * * 练习题 4. 设BX的内容为0AA40H,执行SHR BX,1指令后的结果是(??)。??? A. 5520H B. 5480H C. 0D420H D. 0D580H ? 5.试分析下面的程序段完成什么功能? MOV CL, 04 SHL DX, CL MOV BL, AH SHL AX, CL SHR BL, CL OR DL, BL 实现了DX.AX左移4位。 * * 练习题 6. 设AX=0CCBBH,CF=1,执行AND AX,7FFEH和RCR AX,1指令后,AX和CF中的内容分别是(??)。??? A. 265DH,0 B. 265DH,1 C. A65DH,0 D. A65DH,1 ? 7. 假设执行指令前BX=5678H,CL=8,指令ROL BX,CL执行后,BX=( )。 * * 控制转移类指令 控制转移类指令用于实现分支、循环、过程等程序结构,是仅次于传送指令的最常用指令 重点掌握:JMP/Jcc/LOOP CALL/RET INT n/IRET 常用系统功能调用 一般了解:LOOPZ/LOOPNZ INTO 控制转移类指令通过改变IP(和CS)值,实现程序执行顺序的改变 * * 控制转移指令汇总 ? 无条件转移指令 JMP ? 条件转移指令 JZ / JNZ 、 JE / JNE、 JS / JNS、 JO / JNO、 JP / JNP、 JB / JNB、 JL / JNL、 JBE / JN
文档评论(0)