第三讲 定点运算(加减法).ppt

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

第三讲 定点运算(一) 本讲主要内容 移位运算 补码加法 补码减法 益处概念与检测方法 基本的二进制加法/减法器 公式:[x]补+[y]补 =[x+y]补 证明:假设︱x︱﹤1, ︱y︱﹤1, ︱x+y︱﹤1 现分四种情况来证明 (1)x﹥0,y﹥0,则x+y﹥0 [x]补=x, [y]补=y, [x+y]补=x+y 所以等式成立. (2)x﹥0,y﹤0,则x+y0或x+y0 [x]补=x, [y]补=2+y, [x]补+[y]补=x+ 2+y 当x+y0时,2 + (x+y) 2,进位2必丢失,又因(x+y)0, 故 [x]补+[y]补=x+y=[x+y]补    当x+y0时,2 + (x+y) 2,又因(x+y)0, 故 [x]补+[y]补=2+(x+y)=[x+y]补    所以上式成立 (3)x0,y0,则x+y0或 x+y0 这种情况和第2种情况一样,把x和y的位置对调即得证。 (4)x0,y0,则x+y0  相加两数都是负数,则其和也一定是负数。  ∵[x]补=2+x,   [y]补=2+y  ∴[x]补+[y]补=2+x+2+y=2+(2+x+y)  上式右边分为”2”和(2+x+y)两部分.既然(x+y)是负数,而其绝对值又小于1,那么(2+x+y)就一定是小于2而大于1的数,进位”2”必丢失.又因(x+y)0, 所以 [x]补+[y]补=2+(x+y)=[x+y]补  4 、溢出概念与检测方法 * * 一、移位运算 1. 移位的意义 15 m = 1500 cm 小数点右移 2 位 机器用语 15 相对于小数点 左移 2 位 ( 小数点不动 ) . . 左移 绝对值扩大 右移 绝对值缩小 在计算机中,移位与加减配合,能够实现乘除运算 2. 算术移位规则 1 右移 添 1 左移 添 0 0 反 码 补 码 原 码 负数 0 原码、补码、反码 正数 添补代码 码 制 符号位不变 例16 设机器数字长为 8 位(含1位符号位),写出 A = +26时,三种机器数左、右移一位和两位后的表示形式及对应的真值,并分析结果的正确性。 解: A = +26 则 [A]原 = [A]补 = [A]反 = 0,0011010 + 6 0,0000110 +13 0,0001101 +104 0,1101000 + 52 0,0110100 +26 0,0011010 移位前 [A]原=[A]补=[A]反 对应的真值 机 器 数 移位操作 = +11010 左移一位 左移两位 右移一位 右移两位 例17 设机器数字长为 8 位(含1位符号位),写出 A = –26时,三种机器数左、右移一位和两位后的表示形式及对应的真值,并分析结果的正确性。 解: A = – 26 – 6 1,0000110 – 13 1,0001101 – 104 1,1101000 – 52 1,0110100 – 26 1,0011010 移位前 对应的真值 机 器 数 移位操作 原码 = – 11010 左移一位 左移两位 右移一位 右移两位 – 6 1,1111001 – 13 1,1110010 – 104 1,0010111 – 52 1,1001011 – 26 1,1100101 移位前 对应的真值 机 器 数 移位操作 – 7 1,1111001 – 13 1,1110011 – 104 1,0011000 – 52 1,1001100 – 26 1,1100110 移位前 对应的真值 机 器 数 移位操作 补码 反码 左移一位 左移两位 右移一位 右移两位 左移一位 左移两位 右移一位 右移两位 3. 算术移位的硬件实现 (a)真值为正 (b)负数的原码 (c)负数的补码 (d)负数的反码 0 0 0 1 0 丢 1 丢 1 出错 影响精度 出错 影响精度 正确 影响精度 正确 正确 4. 算术移位和逻辑移位的区别 算术移位 有符号数的移位 逻辑移位 无符号数的移位 逻辑左移 逻辑右移 低位添 0,高位移丢 高位添 0,低位移丢 例如 逻辑左移逻辑右移算术左移 算术右移11011001(补码) 高位 1 移丢 0 1 0 1 0 0 1 1 0 Cy 0 1 0 1 0 0 1 1 0 0加法规则: 先判符号位,若相同,绝对值相加,结果符号不变; 若不同,则作减法, |大

文档评论(0)

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

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

1亿VIP精品文档

相关文档