浮点数的运算步骤活着的虫子

为虫子生,为虫子死,为虫子奋斗一辈子

浮点数的加减运算一般由以下五个步骤完成:对阶、尾数运算、规格化、舍入处理、溢出判断

一、对阶

所谓对阶是指将两个进行运算的浮点数的阶码对齐的操作。对阶的目的是为使两个浮点数的尾数能够进行加减运算。因为,当进行Mx·2Ex与My·2Ey加减运算时,只有使两浮点数的指数值部分相同,才能将相同的指数值作为公因数提出来,然后进行尾数的加减运算。对阶的具体方法是:首先求出两浮点数阶码的差,即⊿E=Ex-Ey,将小阶码加上⊿E,使之与大阶码相等,同时将小阶码对应的浮点数的尾数右移相应位数,以保证该浮点数的值不变。几点注意:

(1)对阶的原则是小阶对大阶,之所以这样做是因为若大阶对小阶,则尾数的数值部分的高位需移出,而小阶对大阶移出的是尾数的数值部分的低位,这样损失的精度更小。

(2)若⊿E=0,说明两浮点数的阶码已经相同,无需再做对阶操作了。

(3)采用补码表示的尾数右移时,符号位保持不变。

(4)由于尾数右移时是将最低位移出,会损失一定的精度,为减少误差,可先保留若干移出的位,供以后舍入处理用。

二、尾数运算

尾数运算就是进行完成对阶后的尾数相加减。这里采用的就是我们前面讲过的纯小数的定点数加减运算。

三、结果规格化

在机器中,为保证浮点数表示的唯一性,浮点数在机器中都是以规格化形式存储的。对于IEEE754标准的浮点数来说,就是尾数必须是1.M的形式。由于在进行上述两个定点小数的尾数相加减运算后,尾数有可能是非规格化形式,为此必须进行规格化操作。

规格化操作包括左规和右规两种情况。

左规操作:将尾数左移,同时阶码减值,直至尾数成为1.M的形式。例如,浮点数0.0011·25是非规格化的形式,需进行左规操作,将其尾数左移3位,同时阶码减3,就变成1.1100·22规格化形式了。

右规操作:将尾数右移1位,同时阶码增1,便成为规格化的形式了。要注意的是,右规操作只需将尾数右移一位即可,这种情况出现在尾数的最高位(小数点前一位)运算时出现了进位,使尾数成为10.xxxx或11.xxxx的形式。例如,10.0011·25右规一位后便成为1.00011·26的规格化形式了。

四、舍入处理

浮点运算在对阶或右规时,尾数需要右移,被右移出去的位会被丢掉,从而造成运算结果精度的损失。为了减少这种精度损失,可以将一定位数的移出位先保留起来,称为保护位,在规格化后用于舍入处理。

IEEE754标准列出了四种可选的舍入处理方法:

(1)就近舍入(roundtonearest)这是标准列出的默认舍入方式,其含义相当于我们日常所说的“四舍五入”。例如,对于32位单精度浮点数来说,若超出可保存的23位的多余位大于等于100…01,则多余位的值超过了最低可表示位值的一半,这种情况下,舍入的方法是在尾数的最低有效位上加1;若多余位小于等于011…11,则直接舍去;若多余位为100…00,此时再判断尾数的最低有效位的值,若为0则直接舍去,若为1则再加1。

(2)朝+∞舍入(roundtoward+∞)对正数来说,只要多余位不为全0,则向尾数最低有效位进1;对负数来说,则是简单地舍去。

(3)朝-∞舍入(roundtoward-∞)与朝+∞舍入方法正好相反,对正数来说,只是简单地舍去;对负数来说,只要多余位不为全0,则向尾数最低有效位进1。

(4)朝0舍入(roundtoward0)

即简单地截断舍去,而不管多余位是什么值。这种方法实现简单,但容易形成累积误差,且舍入处理后的值总是向下偏差。

五、溢出判断

与定点数运算不同的是,浮点数的溢出是以其运算结果的阶码的值是否产生溢出来判断的。若阶码的值超过了阶码所能表示的最大正数,则为上溢,进一步,若此时浮点数为正数,则为正上溢,记为+∞,若浮点数为负数,则为负上溢,记为-∞;若阶码的值超过了阶码所能表示的最小负数,则为下溢,进一步,若此时浮点数为正数,则为正下溢,若浮点数为负数,则为负下溢。正下溢和负下溢都作为0处理。

要注意的是,浮点数的表示范围和补码表示的定点数的表示范围是有所不同的,定点数的表示范围是连续的,而浮点数的表示范围可能是不连续的。

六、例子

floata=0.3;b=1.6;

a=(0.3)10=(00111110100110011001100110011010)2Sa=0Ea=01111101Ma=1.00110011001100110011010

b=(1.6)10=(00111111110011001100110011001101)2Sb=0Eb=01111111Mb=1.10011001100110011001101

a+b=

第一步:对阶

∵Ea

∴Ma要调整为0.0100110011001100110011010

E=01111111

第二步:尾数运算

0.01001100110011001100110

+1.10011001100110011001101

1.11100110011001100110011

第三步:规格化

1.11100110011001100110011已经是个规格化数据了

第四步:舍入处理

由于在对阶时,Ma有右移,且第一次最高为1,第二次为0,所以按"0舍1入",尾数运算结果调整为1.11100110011001100110100

第五步:溢出判断

没有溢出,阶码不调整,所以最后的结果为

a+b=(00111111111100110011001100110100)2=(00111111111100110011001100110100)2=(3FF33334)16

转为10进制

a+b=1.90000010

b-a=

跟上面加法一样

1.10011001100110011001101

-0.01001100110011001100110

1.01001100110011001100111

1.01001100110011001100111已经是个规格化数据了

由于在对阶时,Ma有右移,且第一次最高为1,第二次为0,所以按"0舍1入",尾数运算结果调整为1.01001100110011001100110

a-b=(00111111101001100110011001100110)2=(00111111101001100110011001100110)2=(3FA66666)16

THE END
1.数据处理的主要步骤是什么?数据处理通常包括以下几个主要步骤: 数据收集 这是数据处理的第一步,涉及到从各种来源收集原始数据。这些来源可能包括数据库、文件、图像、声音、视频等。 数据预处理 这一步通常包括数据清洗和数据转换。数据清洗是指检查数据中的错误、重复或不完整的部分,并进行修正或删除。数据转换是将数据从一种格式转换为另一种https://cloud.tencent.com/developer/techpedia/2280/17195
2.?数据处理的六大步骤?数据处理是什么?简单来说,就是将原始数据转化为有价值的信息。这通常包括六个关键步骤:1 数据清洗:去除数据中的噪音和异常值,确保数据的准确性和可靠性。2 数据集成:将来自不同来源的数据合并,形成一个统一的数据集。3 数据分析:运用各种统计方法和算法,深入挖掘数据的内在规律和关系。https://mbd.baidu.com/newspage/data/dtlandingsuper?nid=dt_3641058908124792352
3.数据处理中的准确性问题2. 数据处理五个步骤 对于大部分数据应用来说,数据处理都可以划分为如下五个步骤: 在这五个步骤中的每一步,都会面临数据准确性的问题,并且神策分析也相应地进行了针对性的处理和应对,下面结合我们之前的一些实际的应对案例,进行详细介绍。 2.1 采集环节的准确性问题与应对 https://www.sensorsdata.cn/blog/data_accuracy/
4.手把手教您如何进行数据质量管理提高数据质量意味着拥有可持续成功且适合数据使用的数据质量管理实践,同时不断发展以跟上或领先于不断变化的业务和数据环境。这不是一次修复一个数据集的问题,这是资源和时间密集型的,而是确定数据质量始终偏离轨道的地方,并创建一个程序来改进源头的数据处理。 https://36kr.com/p/2346113073061509
5.10分钟搭建你的第一个图像识别模型(附步骤代码)机器之心最后,我们加载测试数据(图像)并完成预处理步骤。然后我们使用训练模型预测这些图像的类别。 所需时间:1分钟 四、设置问题定义并认识数据 我们将尝试一个非常酷的挑战来理解图像分类。我们需要建立一个模型,可以对给定的图像进行分类(衬衫、裤子、鞋子、袜子等)。这实际上是许多电子商务零售商面临的一个问题,这使得它https://www.jiqizhixin.com/articles/2019-02-20-9
6.数据分析流程包括哪些步骤数据分析流程包括以下步骤: 一、问题定义; 二、数据采集; 三、数据探索和可视化; 四、数据预处理和特征工程; 五、建立模型和算法选择; 六、模型评估和优化; 七、模型应用和结果解释。数据分析是一个迭代的过程,需要不断调整和优化,才能提高分析结果的质量。 https://www.linkflowtech.com/news/1597
7.EtherCAT抓包分析及故障排除示例EtherCAT技术知识五、对于整个从站网络运行状态的辨别和分析 EC-Inspector具备全网络拓扑的图形化视图,我们可以从端口颜色反映连接质量:灰色=好/黄色=警告/红色=错误。右侧是整个EtherCAT网络的数据的记录和统计,所有从站的错误计数器和端口信息都在这里展示。 六、快照留存和数据处理步骤 https://www.motrotech.com/article/371.html
8.2024年策略人必备的124个营销模型(14.0最新版)93、罗兰贝格解决问题七大步骤 94、战略树 95、平衡计分卡 96、风险报酬图 97、产品/市场演变矩阵 98、5why分析法 99、战略钟模型 100、BLM模型/业务领先模型 101、熊彼特“五个创新” 102、项目管理五大过程组 103、项目管理十大知识领域 104、面试PRES模型 https://www.digitaling.com/articles/1225412.html
9.初一数学上册知识点15.科学记数法:把一个大于10的数记成a×10n的形式,其中a是整数数位只有一位的数,这种记数法叫科学记数法. 16.近似数的精确位:一个近似数,四舍五入到那一位,就说这个近似数的精确到那一位. 17.有效数字:从左边第一个不为零的数字起,到精确的位数止,所有数字,都叫这个近似数的有效数字. https://www.oh100.com/shuxue/4915112.html
10.《仪器分析》实验教学大纲3.测量未知样品中苯酚含量:用移液管分别移取含酚水样10ml于2个25ml容量瓶中,分别用水和0.1MKOH稀释至刻度。在测定波长下,把碱性溶液稀释的待测试样放在样品光路上,把中性溶液稀释的待测试样放在参比光路上,测定吸光度差值。 五、数据处理 1.用实验步骤2中测得的吸光度差值,绘制吸光度—浓度曲线,计算回归方程。https://hxsyjxzx.snsy.edu.cn/info/1033/1161.htm
11.济南市邵而小学应急预案五、事故报告和现场保护 (一)重大事故(包括外来暴力侵害事故)发生后,学校应立即将事故情况上报教育主管部门,并呈送书面报告,事故报告包括:发生事故的学校及事故发生的时间、地点;事故的简要经过、伤亡人数、直接经济损失的初步估计;事故原因、性质的初步判断;事故抢救处理的情况和http://www.shizhong.gov.cn/gongkai/site_shizhongquqjyhtyjdjnssexxabz/channel_jns_shizhongquqjyhtyjdjnssexxabz_22d/doc_64ae55d240a1bf20332d450d.html
12.高中物理测定电池的电动势和内阻优秀教案(五)发导学案、布置预习。 九、板书设计 一、实验原理: 二、实验步骤: 三、数据处理: 计算: 图像: 四、误差分析: 十、教学反思:本节课重在数据处理、误差分析。 学校:临清三中 学科:物理 编写人:孙风武 审稿人:盛淑贞 多用电表学案 课前预习学案 https://www.unjs.com/jiaoan/wuli/20181122163420_1771133.html
13.PMP项目管理第五章:项目范围管理分解的五个步骤: 识别和分析可交付成果及相关工作 确定WBS 的结构和编排方法 自上而下逐层细化分解 为WBS 组件指定和分配标识编码 核实可交付成果分解的程度是否恰当 WBS 的结构可以采用如下形式: 把项目生命周期的各阶段作为分解的第二层,产品和项目可交付成果放在第三层。 https://maimai.cn/article/detail?fid=1707810195&efid=kQgJnuPQSwW7IukMeNbcwA
14.关于做好全国党员管理信息系统运行维护和培训工作的通知(五)多步骤处理 1.党组织合并。当出现党组织合并时,应视情况进行操作。例如: (1)A和B两个党组织,需要将B党组织合并到A党组织,应先将B党组织下的所有党组织和党员,使用改变党组织隶属关系或党员组织关系转接等操作,全部转到A党组织,然后再删除B党组织。 https://www.zjjsxy.org.cn/dangweigongzuo/2335.html
15.谈谈数据项目中的Datamapping(数据映射)数据映射是从一个或多个源文件中提取数据字段,并将它们与目标文件中相关的目标字段进行匹配的过程。数据映射还通过提取、转换和将数据加载到目标系统来帮助强化数据质量。任何数据处理(包括ETL)的初始步骤都是数据映射。企业可以使用映射数据产生相关的见解,以提高业务效率。 https://developer.aliyun.com/article/1116168
16.大学化学实验报告(精选10篇)五、实验结果处理: c(待)=c(标)×V(标)/V(待)注意取几次平均值。 六、实验评价与改进: [根据:c(H+)×V(酸)=c(OH—)×V(碱)分析] 大学化学实验报告 2 一、实验目的: 1、培养同学们“通过实验手段用已知测未知”的实验思想。 2、学习相关仪器的使用方法,掌握酸碱滴定的原理及操作步骤、 https://www.ruiwen.com/gongwen/baogao/932632.html
17.NLPPPL计算nlp基本算法mob64ca14150f43的技术博客1.2、文本处理步骤 1.2.1、分割(Tokenization:文本—>单词/字母) 分割就是将一句话分解成一个个单词或者一个个字母,为了方便讲解我们以分割成单词讲述。 1.2.2、one-hot编码 此时是使用字典统计一下各个单词在整个文本中所出现过的次数,使用key记录文字,使用value记录单词出现的次数。 https://blog.51cto.com/u_16213703/7220643
18.学习笔记GB5749生活饮用水微生物指标——菌落总数解读③ 按同法依次稀释成1:1000、1:10000等稀释度的液体备用。每稀释一个稀释度,应更换一次1mL无菌吸管或吸头。 ④ 用无菌吸管或移液器吸取2个~3个适宜稀释度的水样1mL,分别注入无菌平皿内。以下操作同生活饮用水的检验步骤。 4. 实验数据处理 结果报告:可用眼睛直接观察,必要时用放大镜检查,以防遗漏。 https://www.huankai.com/show/53609.html
19.数据预处理的四个步骤数据预处理的流程数据预处理的四个步骤 数据预处理的四个步骤分别是数据清洗、数据集成、数据变换和数据归约;而数据的预处理是指对所收集数据进行分类或分组前所做的审核、筛选、排序等必要的处理;数据预处理,一方面是为了提高数据的质量,另一方面也是为了适应所做数据分析的软件或者方法。https://blog.csdn.net/qq_53724742/article/details/127485400