- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇编语言编程PPT电子课件教案-04 算术与逻辑运算指令
3)符号扩展指令 CBW ;字节转换为字:AL符号扩展成AX CWD ;字转换为双字:AX符号扩展到DX,DX.AX看作一个整体 符号扩展指令常用来获得有符号数的倍长数据。例如获得有符号除法时倍长于除数的被除数。对无符号数应该采用直接使高8位或高16位清0的方法,获得倍长的数据。 MOV AX,-12345 MOV BX,34 CWD ;DX.AX←AX IDIV BX ;AX←DX.AX÷BX 十进制调整指令 算术运算指令实现了二进制数的加减乘除,要实现十进制BCD码运算,还需要对二进制运算结果进行调整 8088/8086支持压缩BCD码调整指令和非压缩 BCD码调整指令。 压缩BCD码就是通常的8421码,它用4个二进制位表示一个十进制位,一个字节可以表示两个十进制位,即 00-99 非压缩BCD码用8个二进制位表示一个十进制位,实际上只是用低4个二进制位表示一个十进制位0-9,高4位任意 例:压缩BCD码加法调整指令 DAA ;压缩BCD码加法调整指令:将AL的加和调整为压缩BCD码 DAA指令跟在以AL为目的操作数的ADD或ADC指令之后,对AL的二进制结果进行压缩BCD码调整,并在AL得到压缩BCD码结果。 MOV AL,68H ;al=68h,压缩BCD码表示真值68 MOV BL,28H ;bl=28h,压缩BCD码表示真值28 ADD AL,BL ;二进制加法:al=68h+28h=90h(144) DAA ;十进制调整:al=96h ;实现压缩BCD码加法:68+28=96 AND dest, src ;逻辑与指令:dest←dest∧src OR dest, src ;逻辑或指令:dest←dest∨src XOR dest, src ;逻辑异或指令:dest←dest src TEST dest, src ;测试指令:dest∧src NOT reg/mem 逻辑运算指令 逻辑运算指令与标志位 双操作数逻辑指令均设置CF=OF=0,根据结果设置SF、ZF和PF状态,而对AF未定义。单操作数逻辑非指令NOT不影响标志位。 逻辑运算指令的应用 AND指令可用于复位某些位(同0相与),不影响其他位:将BL中D3和D0位清0,其它位不变 AND BL,0F6H ;) OR指令可用于置位某些位(同1相或),不影响其他位:将BL中D3和D0位置1,其它位不变 OR BL,9 XOR指令可用于求反某些位(同1相异或),不影响其他位:将BL中D3和D0位求反,其它不变 XOR BL,9 XOR AX,AX ;AX=0,CF=ZF=0,MOV AX,0 测试指令TEST 格式: TEST DEST,SRC 功能: 将两个操作数进行逻辑“与”运算,结果只反映在标志位上,对操作数无影响 受影响标志: CF=0 , OF=0 , PF, ZF,SF 说明:该指令用于测试操作数的某位是否为1,被测试的位与1相“与” TEST AL,1 ;测试D0的值 ZF=0, D0=1 ZF=1,D0=0 移位指令 移位指令分逻辑移位和算术移位,分别具有左移或右移操作 SHL reg/mem,1/CL ;逻辑左移:reg/mem左移1/CL位,最低位补0,最高位进入CF SHR reg/mem,1/CL ;逻辑右移:reg/mem右移1/CL位,最高位补0,最低位进入CF SAL reg/mem,1/CL ;算术左移,与SHL是同一条指令 SAR reg/mem,1/CL ;算术右移:reg/mem右移1/CL位,最高位不变,最低位进入 CF 逻辑左移 shl al,1 * 汇编语言课件04算术与逻辑运算指令 算术运算类指令 算术运算类指令用来执行二进制的算术运算:加减乘除。 这类指令会根据运算结果影响状态标志,有时要利用某些标志才能得到正确的结果 使用它们时请留心有关状态标志。 加法和减法指令 加法指令包含 ADD、ADC和INC三条指令 减法指令包括SUB、SBB、DEC、NEG和CMP五条指令。 除 INC和DEC不影响CF标志外,其它按定义影响全部状态标志位。 采用双操作数的加法、减法和后面介绍的逻辑运算指令具有共同的操作数组合形式: 运算指令助记符 reg , imm/reg/mem 运算指令助记符 mem , imm/reg 1)加和减指令 ADD dest, src ;加法:dest←dest+src SUB dest, src ;减法:dest←dest-src 加法指令与标志位 若(AL)=
您可能关注的文档
- 新世纪全套信息安全应用教程PPT电子课件教案-第8章 计算机病毒及防范.ppt
- 新世纪全套信息安全应用教程PPT电子课件教案-第9章 操作系统安全.ppt
- 新世纪全套信息安全应用教程PPT电子课件教案-第7章 密码学实践.ppt
- 新公司法解读及其对银行信贷经营的影响.ppt
- 新劳动合同法应对技巧及实务操作解析.ppt
- 数控编程技术PPT电子课件教案.ppt
- 文档数字化与资源共享平台v3.ppt
- 新目标八年级下册Unit_9_Have_you_ever_been_to_an_amusement_parkPPT课件3.ppt
- 新目标八年级下册Unit5_If_you_go_to_the_partyPPT课件1.ppt
- 新病历书写基本规范讲解.ppt
- 汇编语言编程PPT电子课件教案-03 寻址方式与传送指令.ppt
- 求谏课件(人教社选修“文化经典”).ppt
- 汇编语言编程PPT电子课件教案-06 汇编语言环境.ppt
- 汇编语言编程PPT电子课件教案-10 顺序、分支、循环程序.ppt
- 汇编语言编程PPT电子课件教案-11 子程序设计.ppt
- 江铃5年计划(最新版).ppt
- 江苏某医药企业企业信息化ERP解决方案.ppt
- 汇编语言编程PPT电子课件教案-05 其他指令.ppt
- 汽油发动机微机控制系统检修PPT电子课件教案-3.1汽车发动机微机控制点火系统认识.ppt
- 汽油发动机微机控制系统检修PPT电子课件教案-4.2汽车发动机微机控制可变进气系统检修.ppt
文档评论(0)