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

(微机原理与接口技术知识)chapter05算术和逻辑运算指令.ppt

(微机原理与接口技术知识)chapter05算术和逻辑运算指令.ppt

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

第5章 算术和逻辑运算指令;加法、减法和比较指令;加法指令; 例 1 寄存器加法;例 3 存储器与寄存器的加法;加 1指令;;例 6;带进位加法指令;;例 8;例 9;减法指令;例 10 寄存器减法指令;减 1指令;带借位减法指令;例 12;比较指令;例 13;比较交换指令;乘法指令;;例 14;特殊的立即数16位乘法指令;除法指令;8位除法指令;例 15;例 16;例 17;余数的处理 1、直接截断法 2、四舍五入法:对无符号除法的结果,要求用余数与除数的一半进行比较 ;3、余数转换成小数形式:先把商保存起来,再将AL清零,然后用AX中剩余的数除以原来的操作数后,产生小数形式的余数 例 19 假定用小数表示余数,而不是整数余数;BCD码和ASCII码算术运算指令;BCD算术运算指令;DAA指令;例 20 假定DX和BX每个都包含有4个压缩BCD数,并且将结果存入CX中;DAS指令;例 21 假定DX和BX每个都包含4位压缩BCD数,将DX和BX中的BCD数相减,???且将结果存入CX中;ASCII算术运算指令;AAA指令;例 22;AAD指令;例 23;AAM指令;例 24 AAM指令将AX中的16位二进制转换成4位ASCII码的字符串;例 25 AAM指令用AH= 02H的DOS 21H号功能调用,在视频显示器上以十进制形式显示一个数字;;AAS指令;基本逻辑指令;AND;;例 26 AND指令把ASCII码数的最左边4位二进制位屏蔽掉,就可以转换为BCD码;OR;;例 27 假定两个BCD数相乘并且用AAM指令将结果调整为两个非压缩BCD数存放在AX中。用OR指令将两个十进制的结果转换为ASCII码;XOR;;例 28 给出一个短指令序列,清除CX的第0位和第1位,置位CX的第9位和第10位,并且使CX的第12位取反;测试和位测试指令;;例 29;80386-Pentium 4微处理器新增的位测试指令;例 30;Not指令和 NEG指令;;;移位指令;逻辑移位操作用于无符号数,而算术移位操作作用于有符号数 一种形式用立即数计算移位次数,另一种形式是将移位次数装入寄存器CL;;例 31;例 32;双精度移位指令;循环移位指令;;例 33 将寄存器DX, BX和AX中48位数据向左移1位的程序 ;位扫描指令;串比较指令;串比较指令;例 34 在长为100字节的存储区内搜索关键字 00H;例 35 跳过存储器数组中的ASCII码空格符。假定DI寄存器已经寻址到ASCII码字符串,而且串长度是256字节或更短些;例 36 比较两个存储区,以检查是否有匹配的内容。当CX寄存器变成0或出现不等条件时,CMPSB指令就停止执行。CMPSB指令结束后,若标志位指示相等,则两个串匹配;如果CX不为0,或标志位指示不相等,则两个串不匹配;第二次实验: 1、两个数组的多位数加法操作(比如数组是100个字节的数据等),可以考虑数组中的数据既可以是二进制数,也可以是十进制数。 2、编程完成以下公式的运算:(假设公式中的所有变量均为16位有符号的数) 1)W=X+Y*300 要求乘积的高位在W中,低位在R中 2)W=P / (Q-15) 要求商存入W,余数存入R;小结 1、加法和加法 指令可以是8、16或32位,指令影响状态标志(C、A、S、Z、P和O标志) 2、加1 和 减1 指令,不影响进位标志 3、乘法和除法指令,要注意操作数的符号的问题 4、BCD码算数运算,要进行十进制调整。十进制调整分成两类:压缩的BCD码调整和非压缩的BCD码调整 5、逻辑运算指令,CF和OF清零 6、有8种不同的位移和循环位移指令,位移的次数可以是立即数,也可以是由CL指出的位移次数 7、SCAS 和 CMPS 指令是串操作指令,可以用前缀(REPE / REPNE)进行重复操作

您可能关注的文档

文档评论(0)

youngyu0329 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档