【微机原理与接口技术】8086指令的寻址方式及寻址过程.ppt

【微机原理与接口技术】8086指令的寻址方式及寻址过程.ppt

  1. 1、本文档共174页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【微机原理与接口技术】8086指令的寻址方式及寻址过程.ppt

4. 除法指令 (1) DIV s 功能:无符号数相除 a. 字节除 被除数=AX,除数=s (s?0) 结果:商=AL,余数=AH AL AH AL (8位) (16位) ... AH (8位) s(8位) 商 余数 b. 字除 被除数=DX:AX,除数= s (s?0) 结果:商=AX,余数=DX AX DX AX (16位) (32位) ... DX (16位) s (16位) 商 余数 注:如果除数太小,使得商超出了一个字节或字所能表示的范围,则会产生“被0除”错误。 例:MOV AX,800H MOV BL,2 DIV BL 结果错误,“被0除” (2) IDIV s 功能:带符号数除法 采用的固定寄存器与DIV相同。 (3) CBW和CWD CBW:字节除法的符号扩展指令 功能:若AL为正数(D7=0) 则 AH=00H AL为负数(D7=1) 则 AH=FFH CWD:字除法的符号扩展指令 功能:若AX为正数(D15=0) 则 DX=0000H AX为负数(D15=1) 则 DX=FFFFH CBW和CWD一般用于带符号数除法指令之前。 5. 十进制调整指令 运算器按二进制规律进行运算,如果参与运算的是BCD码数,则需要对结果进行调整。 1000 1001 0000 1001 0000 1000 组合的BCD码数 未组合的BCD码数 89 9(低位) 8(高位) 代表 89 (1) AAA 功能:对未组合型BCD码加法的结果进行校正(调整)。 校正(调整)方法: 若AL中低4位数值 > 9 或 AF = 1,则: a. AL+6 ? AL,且 AL 高4位清0 b. AH+1 ? AH 否则不作调整。 (2) DAA 功能:对组合型BCD码加法的结果进行校正(调整)。 DAA同时对AL中低4位和高4位进行调整。 例: MOV AH, 0 MOV AL, ;代表6 ADD AL, ;代表7 AAA6 + 7 调整 + 00010011?AL 清01AH 最后结果 AH = 01H,AL = 03H 例. 组合BCD码调整 MOV AL, ;代表27 ADD AL, ;代表86 DAA + 00100111 调整 + 10101101 1进位1 调整后结果: CF=1,AL(代表13) 进位位与AL合成结果: 113 (3) AAS 功能:对未组合型BCD的减法结果进行调整。 功能:对组合型BCD的减法结果进行调整。 (4) DAS 最后结果 AL =(代表36),CF=0 例: MOV AL, (代表73) MOV BL, (代表37) SUB AL, BL? 00111100DAS 相减 调整 ? (5) AAM 功能:对未组合型BCD的乘法结果进行调整。 例: MOV AL, (代表8) MOV BL, (代表9) MUL BL AAM? AL=AH =最后结果 AH = (代表7) 对结果进行调整:AL?AH AL =?AL AL = (代表2) AH,AL中表示未组合型BCD码72。 (6) AAD 功能:对未组合型BCD码(在AX中)进行除法前的校正。 例:MOV AX, (代表72) AAD 调整前, AH =AL =调整后, AH =AL = + = 7D 10D 2D 72D=48H AAD相当于将两个未组合型BCD码数合并为一个二进制数。 三、逻辑运算和移位循环指令 逻辑指令在底层软件中提供了对二进制位的控制。可以对位进行置位、清0或取反。常用于控制系统的I/O设备。 1. 逻辑运算指令 (1)

文档评论(0)

精品资料 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档