IEEE754标准中的4种舍入模式

IEEE754标准中的4种舍入模式
  • 一、IEEE754标准中的4种舍入模式
  • 二、举例说明
  • 1.就近舍入Round to nearest (even)
  • 2.朝0舍入Round toward zero (Truncate)
  • 3.朝正无穷舍入Round up (toward +∞)
  • 4.朝负无穷舍入Round down (toward −∞)
  • 三、舍入模式的英文简写


一、IEEE754标准中的4种舍入模式

1.就近舍入(向偶数舍入):即十进制下的“四舍五入”
(1)例如有效数字超出规定数位的多余数字是1001,它大于超出规定最低位的一半(即0.5),故最低位进1;
(2)如果多余数字是0111,它小于最低位的一半,则舍掉多余数字(截断尾数、截尾)即可;
(3)对于多余数字是1000、正好是最低位一半的特殊情况,最低位为0则舍掉多余位,最低位为1则进位1、使得最低位仍为0(偶数)。

2.朝0舍入(正数向下舍入、负数向上舍入):即朝数轴零点方向舍入,即直接截尾。

3.朝正无穷舍入(向上舍入):对正数而言,只要多余位不全为0则向最低有效位进1;负数则直接截尾。

4.朝负无穷舍入(向下舍入):对负数而言,向最低有效位进1;正数若多余位不全部为0则简单截尾。
此处加入数轴,便于理解
在这里插入图片描述

二、举例说明

1.就近舍入Round to nearest (even)

Rounded result is the closest to the infinitely precise result. If two values are equally close, the result is the even value (that is, the one with the least-significant bit of zero).
四舍五入的结果是最接近无限精确的结果。如果两个值相等,则结果为偶数(即最低有效位为0的那个值)。

<span style="color:#333333"><span style="background-color:#f9f5e9"><code class="language-c">对于1.001_1001,舍入处理后为1.010(去掉多余的4位,加0.001)
对于1.001_0111,舍入处理后为1.001(去掉多余的4位)
对于-1.001_1000,舍入处理后为-1.010(去掉多余的4位,加0.001,因为此时最低位为1)
对于-1.010_1000,舍入处理后为-1.010(直接去掉多余的4位,因为此时最低位为0)
</code></span></span>

2.朝0舍入Round toward zero (Truncate)

Rounded result is closest to but no greater in absolute value than the infinitely precise result.
四舍五入的结果在绝对值上最接近但不大于无限精确的结果。

<span style="color:#333333"><span style="background-color:#f9f5e9"><code class="language-c">//正数直接截尾
对于1.001_1001,舍入处理后为1.001(直接去掉多余的4位)
对于1.001_0111,舍入处理后为1.001(直接去掉多余的4位)

//负数直接截尾
对于-1.001_1000,舍入处理后为-1.001(直接去掉多余的4位)
对于-1.010_1000,舍入处理后为-1.010(直接去掉多余的4位)
</code></span></span>

3.朝正无穷舍入Round up (toward +∞)

Rounded result is closest to but no less than the infinitely precise result.
四舍五入的结果最接近但不低于无限精确的结果。

<span style="color:#333333"><span style="background-color:#f9f5e9"><code class="language-c">//正数多余位不全为0进位1
对于1.001_1001,舍入处理后为1.010(去掉多余的4位,加0.001)
对于1.001_0111,舍入处理后为1.010(去掉多余的4位,加0.001)

//正数多余位全为0直接截尾
对于1.001_0000,舍入处理后为1.001(直接去掉多余的4位)

//负数直接截尾
对于-1.001_1010,舍入处理后为-1.001(直接去掉多余的4位)
</code></span></span>

4.朝负无穷舍入Round down (toward −∞)

Rounded result is closest to but no greater than the infinitely precise result.
四舍五入的结果最接近但不大于无限精确的结果。

<span style="color:#333333"><span style="background-color:#f9f5e9"><code class="language-c">//正数直接截尾
对于1.001_1001,舍入处理后为1.001(直接去掉多余的4位)
对于1.001_0111,舍入处理后为1.001(直接去掉多余的4位)

//负数多余位全为0直接截尾
对于-1.001_0000,舍入处理后为-1.001(直接去掉多余的4位)

//负数多余位不全为0进位1
对于-1.001_1010,舍入处理后为-1.010(去掉多余的4位,加0.001)
</code></span></span>

参考链接: https://www.cnblogs.com/jva-index/p/13897423.html
https://blog.51cto.com/u_8741388/1625404

三、舍入模式的英文简写

<span style="color:#333333"><span style="background-color:#f9f5e9"><code class="language-c">rne: 最近舍入,朝向偶数方向(round to nearest, ties to even)
rtz: 朝零舍入(round towards zero)
rdn: 向下舍入(round down)
rup: 向上舍入(round up)
rmm: 最近舍入,朝向最大幅度方向(round to nearest, ties to max magnitude)
dyn: 动态舍入模式(dynamic rounding mode)
</code></span></span>

后记:星光不问赶路人,时光不负有心人。

IEEE754标准中的4种舍入模式-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值