计算机原理 负溢出,计算机组成原理二章 第6讲 溢出的检测.ppt

计算机组成原理二章 第6讲 溢出的检测

溢出的检测 2.2.2 溢出的检测 溢出的检测 可能产生溢出的情况 两正数加,变负数,上溢(大于机器所能表示的最大数) 两负数加,变正数,下溢(小于机器所能表示的最小数) 2.2.2 溢出的检测 例3:x=+0.1011, y=+0.1001, 求x+y 例4:x=-0.1101, y=-0.1011, 求x+y * * [例15] x=+1101 , y=+1001 , 求 x+y 。解:[x]补=01011 , [y]补=01001      [x]补   0 1 0 1 1  +   [x]补   0 1 0 0 1  ——————————————     [x+y]补   1 0 1 0 0两个正数相加的结果成为负数,表示正溢。 [例16] x=-1101 , y=-1011 , 求 x+y 。解:[x]补=10011 , [y]补=10101      [x]补   1 0 0 1 1  +   [x]补   1 0 1 0 1  ——————————————     [x+y]补   0 1 0 0 0两个负数相加的结果成为正数,表示负溢。 2.2.3 溢出概念与检测方法 溢出的概念 2.2.2 溢出的检测 一、检测方法 1、双符号位法(参与加减运算的数采用变形补码表示) 什么是变形补码? 对于定点小数:x0.x1x2……xn x 1>x≥0 [x]补= 4+x 0≥x >-1 2.2.3 溢出概念与检测方法 定点整数x0x1x2…xn x 2n>x≥0 [x]补= 2n+2+x 0≥x ≥ -2n 举例: x=+0.1100, y=+0.1000, X,y的变形补码: [x]补   0 0 . 1 1 0 0    [y]补   0 0 . 1 0 0 0 双符号位 举例: x=-1100 , y=-1000 , X和y的变形补码: 。 [x]补=24+2 +(-1100) =1000000-1100 =1 1 0 1 0 0 [y]补=24+2 +(-1000) =1000000-1000 =1 1 1 0 0 0 双符号位 变形补码运算结果的两个符号位: Sf1 Sf2 0 0正确(正数)01正溢10负溢11正确(负数) Sf1 表示正确的符号, 逻辑表达式为V=Sf1⊕Sf2, V=1表示溢出产生 可以用异或门来实现 2.2.3溢出的检测 举例: x=+0.1100, y=+0.1000,求x+y [x]补   0 0 . 1 1 0 0 +   [y]补   0 0 . 1 0 0 0 ———————————————— 0 1 . 0 1 0 0 x=-0.1100, y=-0.1000,求x+y [x]补   1 1 . 0 1 0 0 +   [y]补   1 1 . 1 0 0 0 ———————————————— 1 0 . 1 1 0 0 [例17] x=+1100 , y=+1000 , 求 x+y 。解: [x]补 = 001100 , [y]补 = 001000     [x]补   0 0 1 1 0 0 +   [y]补   0 0 1 0 0 0 ————————————————    [x+y]补   0 1 0 1 0 0 (表示正溢) [例18] x=-1100 , y=-1000 , 求 x+y 。解: [x]补 = 110100 , [y]补 = 111000     [x]补   1 1 0 1 0 0 +   [y]补   1 1 1 0 0 0 ————————————————    [x+y]补   1 0 1 1 0 0

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值