网站大量收购独家精品文档,联系QQ:2885784924

微机原理课件第六讲.pptVIP

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理课件第六讲

第3章 8086的寻址方式和指令系统 ;乘法指令;①MUL无符号数乘法指令;①MUL无符号数乘法指令;①MUL无符号数乘法指令;?举例 MUL CL  ;AL乘CL,结果在AX中 MUL BX  ;AX乘BX,结果在DX:AX中 MUL BYTE [DI]; AL乘存储器(8位),结果在AX中 MUL WORD[BX]; AX乘存储器字,结果在DX:AX中   如果运算结果的高半部分(在AH或DX中)为零,则状态标志位(CF)=(OF)=0,否则(CF)=(OF)=1。因此,状态标志位(CF)=(OF)=1,表示AH或DX中包含着乘积的有效位。  ;?举例 MOV AL,14H ;(AL)=14H--20 MOV CL,05H ;(CL)=05H--5 MUL CL ;(AX)=0064H--100   本例中结果的高半部分(AH)=0,因此,状态标志位(CF)=(OF)=0,通过检测标志,可以去除结果中的前导无效零。   有了乘法(和除法)指令,使有些运算程序的编程变得简单方便。但是必须注意,乘法指令的执行速度很慢,除法指令也是如此。 ;②IMUL整数乘法指令;?举例 IMUL CL  ;AL乘CL,结果在AX中 IMUL BX  ;AX乘BX,结果在DX:AX中 IMUL BYTE [DI]; AL乘存储器(8位),结果在AX中 IMUL WORD[BX]; AX乘存储器字,结果在DX:AX中   如果运算结果的高半部分(在AH或DX中)为0或1,则状态标志位(CF)=(OF)=0,否则(CF)=(OF)=1。因此,状态标志位(CF)=(OF)=1,表示AH或DX中包含着乘积的有效位。为0,则表示高半部分是符号扩展。  ;?举例 MOV AX,04E8H ;(AX)=04E8H MOV BX,4E20H ;(BX)=4E20H IMUL?BX ;(DX:AX)=(AX) ? (BX)   以上指令的执行结果为:(DX)=017FH,(AX)=4D00H,且(CF)=(OF)=1。实际上,以上指令完成带符号数+1256和+20000的乘法运算,得到乘积为由于此时DX中结果的高半部分包含着乘积的有效数字,故状态标志位(CF)=(OF)=1。;③AAM乘法的ASCII调整指令;③AAM乘法的ASCII调整指令;除法指令;①DIV无符号数除法指令;①DIV无符号数除法指令;①DIV无符号数除法指令;?举例 MOV AX,0F05H ;(AX)=0F05H MOV DX,068AH ;(DX)=068AH MOV CX,08E9H ;(CX)=08E9H DIV CX ; 运算完毕后,商(AX)=BBE1H,余数(DX)=073CH ;?注意事项   执行DIV指令时,如果除数为0,或字节除法时AL寄存器中的商大于FFH,或字除法时AX寄存器中的商大于FFFFH,则CPU立即自动产生一个类型号为0的内部中断。   ;②IDIV整数除法指令;?注意事项   执行IDIV指令时,如果除数为0,或字节除法时AL寄存器中的商超出-128~127范围,或字除法时AX寄存器中的商超出-32768~32767范围,则CPU立即自动产生一个类型号为0的内部中断。   ;②IDIV整数除法指令;被除数扩展问题;③CBW把字节转换成字指令;扩展方法 MOV AL,4FH ;(AL) CBW ; 由于AL80H,或者说AL为正数时,符号位为0,AH应补0,因此(AH) MOV AL,0F4H ;(AL) CBW ; 由于AL7FH,或者说AL为负数时,符号位为1,AH应补1,因此(AH) ;④CWD把字转换成双字指令;  CBW和CWD指令在带符号数的乘法(IMUL)和除法(IDIV)运算中十分有用,在字节或字的运算之前,将AL或AX中数据的符号位进行扩展。例如: MOV AL,MUL_BYTE;(AL)←8位被乘数(带符号数) CBW ;扩展成为16位带符号数,在AX中 IMUL?BX ;两个16位带符号数相乘,结果在DX:AX

文档评论(0)

shaoye348 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档