【细碎知识3】浮点数的加减、乘除运算

1.浮点数的加减运算

1.1 运算步骤

(1)对阶(小向大对齐);
(2)尾数相加;
(3)浮点数规范化;
(4)舍入操作;
(5)判断溢出。

1.1.1 对阶

需要注意的是阶码小的要向阶码大的对齐,这样误差更小,如:
在这里插入图片描述
对阶操作可能会引起尾数最低几位数据移出,对此涉及到1.1.4的舍入操作。

1.1.2 尾数相加减

对阶后,将尾数相加减,如果是加法的话直接加,减法的话变成加上减数的补码然后再加。

1.1.3 规格化处理

尾数相加减后,需要进行规格化处理,处理的步骤可参考这篇,说得很清楚:
浮点数的规格化
在这里插入图片描述

1.1.4 舍入操作

在对阶和规范化的右规过程中,可能会把尾数的低几位舍弃,如:
在这里插入图片描述
这时,我们需要进行舍入操作来减小误差,一般采用“0舍1入法”:
当舍弃的最高位为1时,舍弃后在尾数的最低位加1,否则直接舍弃。

1.1.5 判断阶码是否溢出

若阶码下溢,则结果置为机器0,若阶码上溢,则置溢出标志。

1.2 举个例子

在这里插入图片描述

2.浮点数的乘除操作

2.1 操作步骤

(1)阶码相加减;
(2)尾数乘除运算;
(3)浮点数规范化;
(4)舍入操作;
(5)判断阶码溢出;

后三步和浮点数的加减操作类似

2.1.1 阶码相加减

阶码常用移码表示,注意移码的加减公式:
[X+Y] 移= [X]移 + [Y]补
这里有移码的介绍:移码介绍

2.1.2 尾数乘除运算

将尾数换位原码,然后用原码一位乘、恢复余数法或加减交替法
定点数的乘除法

2.2 举个例子

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SinHao22

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值