分享
分享赚钱 收藏 举报 版权申诉 / 53

类型第04章 数据运算.ppt

  • 上传人:pw17869
  • 文档编号:5861360
  • 上传时间:2019-03-20
  • 格式:PPT
  • 页数:53
  • 大小:1.04MB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    第04章 数据运算.ppt
    资源描述:

    1、第04章 数据运算,-2-,本章内容安排,逻辑运算 移位运算 算术运算,-3-,逻辑运算,逻辑运算的分类 位层次上的逻辑运算:对1位二进制位执行逻辑运算 模式层次上的位运算:对n位位模式逐位执行逻辑运算,-4-,1、位层次上的逻辑运算,位和逻辑运算 一个位可能是0或1,假设0代表“假”,1代表“真” 可以运用布尔代数中定义的运算去操纵二进制位,从而处理逻辑运算。 基本运算 非(NOT):一元运算,只有1个输入。 与(AND):二元运算。 或(OR):二元运算。 异或(XOR):二元运算。,-5-,真值表,-6-,非(NOT),只有1个输入,输出为输入的反转 输入0,输出为1 输入1,输出为0,

    2、-7-,与(AND),2个输入,真值表有4行 只有当两个输入都为1时,输出为1 其它情况,输出为0,For x = 0 or 1 x AND 0 0 0 AND x 0,AND即“和”是并且的意思,同时成立为真,只要一边为0则结果为0,-8-,或(OR),2个输入,真值表有4行 只有当两个输入都为0时,输出为0 其它情况,输出为1,For x = 0 or 1 x OR 1 1 1 OR x 1,OR即或者的意思,两者有一个为真则结果为真,只要一边为1则结果为1,-9-,异或(XOR),2个输入,真值表有4行 两个输入不同(相异)时,输出为1 两个输入相同时,输出为0,For x = 0 or

    3、 1 1 XOR x NOT x x XOR 1 NOT x,XOR为异或,其逻辑为相异为真,只要一边为1则结果为另一边取反,-10-,2、模式层次上的逻辑运算,相同的运算符(NOT、ADN、OR、XOR)可以运用到n位位模式上 对n位位模式逐位执行相同的逻辑运算,多以若干字节为操作对象,-11-,逻辑运算示例,问题 对位模式10011000执行NOT运算 解答,-12-,逻辑运算示例,问题 对位模式10011000和00101010执行AND运算 解答,For x = 0 or 1 x OR 1 1 1 OR x 1,-13-,逻辑运算示例,问题 对位模式10011001和00101110执

    4、行OR运算 解答,-14-,逻辑运算示例,问题 对位模式10011001和00101110执行XOR运算 解答,-15-,3、应用,求反 通过NOT运算可以对整个模式求反 对指定位复位(置0) 通过构造第二个输入(掩码),执行AND运算,可以对一个位模式的指定位复位 掩码中设置为0的位,AND运算后第一个输入中对应位被复位;掩码中为1的位,运算后第一个输入对应位保持不变。,利用AND逻辑只要一边为0则结果为0特性,-16-,复位示例,问题 设置掩码,复位8位位模式的最左5位,以10100110为例进行验证 解答,掩码为:00000111,-17-,应用,对指定位置位(置1) 构造掩码,执行OR

    5、运算,可以对位模式指定位置位。 掩码中设置为1的位,运算后第一个输入对应位被置位;掩码中设置为0的位,运算后第一个输入对应位保持不变。 对指定位反转 构造掩码,执行XOR运算,可以对位模式指定位反转。 掩码中设置为1的位,运算后第一个输入对应位被反转;掩码中设置为0的位,运算后第一个输入对应位保持不变。,利用OR逻辑只要一边为1则结果为1特性,利用XOR逻辑只要一边为1则结果为另一边取反特性,-18-,置位示例,问题 设置掩码,置位8位位模式的最左5位,以10100110为例进行验证 解答,掩码为:11111000,-19-,反转示例,问题 设置掩码,反转8位位模式的最左5位,以1010011

    6、0为例进行验证 解答,掩码为:11111000,-20-,应用,检测指定位* 构造掩码,执行AND运算,可以检测位模式指定位。 掩码中设置为1的位,运算后第一个输入对应位被取得;掩码中设置为0的位,运算后第一个输入对应位被置0。 如结果等于掩码则所测位均为1,否则所测位有为0的。,利用AND逻辑只要一边为1则结果保持不变特性,X X X X X X X X AND) 0 0 0 0 1 0 1 0 掩码0 0 0 0 X 0 X 0,-21-,逻辑运算小结,非: 与: 0&0=0 1&0=0 0&1=0 1&1=1 或: 0|0=0 0|1=1 1|0=1 1|1=1 异或:00=0 01=1

    7、 10=1 11=0,可用十进制表示:11&5=1,可用十进制表示:14|10=14,可用十进制表示:1410=4,非(NOT):反转数位,与(AND逻辑乘):并且的意思,同时成立为真,或(OR逻辑加):或者的意思,两者有一真为真,同时假为假,异或(XOR):相异为真,用于置0:如一边为0则结果为0;否则为另一边原值,用于置1:如一边为1则结果为1;否则为另一边原值,用于置反:如一边为1则结果为另一边取反;否则原值,-22-,本章内容安排,逻辑运算 移位运算 算术运算,-23-,移位运算,基本概念 移位运算移动位模式中的位,改变其位置 逻辑移位运算:不考虑符号位的移位运算 算术移位运算:考虑符

    8、号位的移位运算,-24-,1、逻辑移位运算,逻辑移位运算应用于无符号整数 逻辑移位 逻辑右移:每位向右移动,左侧补0 逻辑左移:每位向左移动,右侧补0,-25-,逻辑移位运算,循环移位运算应用于无符号整数 循环移位 循环右移:每位向右移动,移出的位补充到左侧 循环左移:每位向左移动,移出的位补充到右侧,-26-,逻辑移位示例,问题 对位模式10011000执行逻辑左移运算 解答,-27-,循环移位示例,问题 对位模式10011000执行循环左移运算 解答,-28-,2、算术移位运算,算术移位运算应用于二进制补码格式的带符号整数 算术右移:移动过程中保留符号位,产生除2的效果 算术左移:移动过程

    9、中丢弃符号位,如果新的符号位与原来的符号相同,运算成功,否则产生溢出;算术左移产生乘2的效果。,-29-,算术移位示例,问题 对位模式10011001执行算术右移运算 解答,原始数据为-103,计算结果为-52,-30-,算术移位示例,问题 对位模式11011001执行算术左移运算 解答,原始数据为-39,计算结果为-78,-31-,算术移位示例,问题 对位模式01111111执行算术左移运算 解答,原始数据为127,计算结果为-2, 因为预期结果254无法用8位存储,-32-,操纵位的示例,问题 判断8位位模式的右起第3位是0还是1 解答,再执行AND逻辑利用只要一边为1则结果保持不变特性,

    10、先执行逻辑右移将被测位移至最低位,-33-,本章内容安排,逻辑运算 移位运算 算术运算,-34-,1、整数的算术运算,整数支持的算术运算 整数支持加、减、乘、除等运算 乘法和除法可以通过重复的加法(减法)来实现。 两种编码格式的运算 二进制补码的加减法 符号加绝对值(原码)的加减法,-35-,二进制补码加减法,加法运算减法运算 遇到减法时,对第二个数(减数)做补码运算后,将减法转变为加法。,补码一大优点是其符号位参加运算其结果仍正确。 例:-12+8-4, 即应得 11111100(n=8)1200001100 80000100011110100 -12+ 00001000 811111100

    11、 为负数? 求补得00000100为4原数?为-4,补码运算(求补):“右侧连续0及首个1不变,其余位取反”;或者用“取反后加1”操作,-36-,加法运算,基本方法 按最右侧的位对齐 从右开始,逐列相加并加上一列的进位,“逢二进一” 最高位进位丢弃 加法表,0个1则和为0进位也为0,1个1则和为1进位为0,2个1则和为0进位为1,3个1则和为1进位也为1,-37-,二进制补码加减法流程,-38-,二进制补码加法示例,问题 A和B以二进制补码形式存储,计算A+BA = (00010001)2 B = (00010110)2 解答,十进制检查:A17,B22,A+B39,2个1则和为0进位为1,-

    12、39-,二进制补码加法示例,问题 A和B以二进制补码形式存储,计算A+BA = (00011000)2 B = (11101111)2 解答,十进制检查:A24,B-17,A+B7,最高位进位1被丢弃,-40-,二进制补码减法示例,问题 A和B以二进制补码形式存储,计算A-BA = (00011000)2 B = (11101111)2 解答,十进制检查:A24,B-17,A-B41,减数先做补码运算再变作加,-41-,二进制补码减法示例,问题 A和B以二进制补码形式存储,计算A-BA = (11011101)2 B = (00010100)2 解答,十进制检查:A-35,B20,A-B-55

    13、,减数先做补码运算再变作加,最高位进位1被丢弃,-42-,二进制补码加法的溢出,问题 A和B以二进制补码形式存储,计算A+BA = (01111111)2 B = (00000011)2 解答,十进制检查:A127,B3,A+B-126 预期的结果130无法存储,产生溢出,在计算机上进行算术运算时,确保参与运算的数以及运算结果在指定位分配可表示的区间之内,-43-,符号加绝对值(原码)整数的加减法,符号加绝对值整数的加减法非常复杂 检查运算,如果是减法,变更第二个数的符号位; 对两个数的符号位执行XOR运算,结果为0表示同号,结果为1表示异号; 如果符号相同,绝对值相加,结果符号不变; 如果符

    14、号不同,计算A-B,减法时,取第二个数的补码后相加,结果的符号取绝对值大者。 若AMBM,结果为正数,最后结果取A的符号; 若AMBM,结果为负数,对结果求补码,最后结果取B的符号,这下标M表示绝对值,-44-,符号加绝对值整数的加减法流程,-45-,符号加绝对值(原码)加法示例,问题 A和B以符号加绝对值形式存储,计算A+BA = (0 0010001)2 B = (1 0010110)2 解答,十进制检查:A17,B-22,A+B-5,异号相加,RM = AM + (BM +1),异号相加实际做减B也就是B先做补码运算再变作加,做减,结果的符号取绝对值大者,AMBM结果应为负数,对结果求补

    15、,-46-,符号加绝对值减法示例,问题 A和B以符号加绝对值形式存储,计算A-BA = (1 1010001)2 B = (1 0010110)2 解答,十进制检查:A-81,B-22,A+B-59,减法,对B求补,减B也就是B先做补码运算再变作加,最高位进位1被丢弃,做减,结果的符号取绝对值大者,-47-,2、实数的算术运算*,实数支持的算术运算 实数支持加、减、乘、除等运算 实数的乘法涉及符号加绝对值表示的整数的乘法;实数除法涉及符号加绝对值表示的整数的除法。 实数的加减法 以浮点数格式存储的实数加法和减法,可以简化为小数点对齐后以符号加绝对值格式(符号加尾数)存储的两个整数的加法和减法。

    16、,-49-,实数加法示例,问题 展示计算机内(+5.75)10+ (+161.875)10= (+167.625)10计算过程 解答,步骤一:浮点数表示,规范化:(101.11)2 (1.0111)222 E= 2+127 = 128+1 (10000001)2,规范化:(10100001.111)2 (1. 0100001111)227 E= 7+127 = 128+6(10000110)2,-50-,问题 展示计算机内(+5.75)10+ (+161.875)10= (+167.625)10计算过程 解答,实数加法示例,步骤二:去规范化,-51-,实数加法示例,问题 展示计算机内(+5.7

    17、5)10+ (+161.875)10= (+167.625)10计算过程 解答,10000111,10000111,101000011110000000000000,000001011100000000000000,步骤三:对齐尾数,-52-,实数加法示例,问题 展示计算机内(+5.75)10+ (+161.875)10= (+167.625)10计算过程 解答,步骤四:执行符号加绝对值(原码)加法,-53-,实数加法示例,问题 展示计算机内(+5.75)10+ (+161.875)10 = (+167.625)10计算过程 解答,E = (10000110)2 = 134 M = 0100111101 结果:(1.0100111101)2 2 134127 = 167.625,步骤五:重新规范化,

    展开阅读全文
    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:第04章 数据运算.ppt
    链接地址:https://www.docduoduo.com/p-5861360.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开