“21天好习惯”第一期-6

2.舍入处理
(1)0舍1入
原码与补码尾数的最末位相同,因而采用相同的舍入方法。这种方法类似十进制中的“四舍五入”。
例:原码0.1101,舍入得0.111(只保留3位有效尾数)
原码0.1100,舍入得0.110
补码1.0011,舍入得1.010
补码1.0100,舍入得1.010
低位舍入后一般会产生误差,误差值小于被舍去位的权值
(2)末位恒置1
无论第n+1位是1还是0,舍入时都将第n位(最低有效位)固定设置为1。
例:原码0.1101,舍入得0.111(保留3位有效尾数)
原码0.1011,舍入得0.101
补码1.0011,舍入得1.001
补码1.0101,舍入得1.011
这种舍入方法比较简单,没有进位运算,逻辑上易于实现。当负数补码第n位被恒置1后,尾数其余各位与原码具有按位相反的对应关系,这在补码除法中求商值时很有用。
3.代码的扩展与压缩
(1)符号扩展与0扩展
符号扩展:指扩展符号数的位数时,直接把各扩展位(高位)设置为数符(0或1)。具体而言:对于真值为正的符号数,其符号位为0,则把扩展位全部置为0;对于真值为负的符号数,其符号位为1,所以在扩展位数时把扩展位全部都置为1。
对于补码格式的数,对它进行符号扩展时,不会改变原数的真值。
所谓0扩展,就是指在扩展数据位时,各扩展位均固定置为0。这种扩展模式主要是针对扩展位数时不必考虑数符或者该数据本身不具备符号位的数据,比如逻辑值。
例:80H->FF80H(符号扩展)
28H->0028H(符号扩展)
80H->0080H(0扩展)
28H->0028H(0扩展)
(2)数位压缩
长字长的数据位压缩成短字长数据位时,去除高位保留低位即可。
例:FF80H(-128)->80H(-128) (无损)
FE80H(-384)->80H(-128) (有损)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值