浮点数加减法运算(对阶、尾数求和、规格化、舍入、溢出判断)

浮点数加减法运算(对阶、尾数求和、规格化、舍入、溢出判断)浮点数的加减法运算前言 运算过程 对阶 尾数求和 规格化 舍入 溢出判断浮点加减运算在计算机中 加减法运算用补码实现 算术运算的常识 两个浮点数如果要进行加减法运算 它们的阶或者指数必须相等 一 对阶求阶差如果把阶码大的向阶码小的看齐 就要把阶码大的数的尾数部分左移 阶码减小 这个操作有可能在移位过程中把尾数的高位部分移掉 这样就引发了数据的错误 所以 尾数左移在计算机运算中不可取 如果把阶码小的向阶码大的看齐 在移位过程中如果发生数据丢失 也是最右边的数据位发生丢失 最右边的数据

浮点数的加减法运算


浮点加减运算

在计算机中,加减法运算用补码实现。
算术运算的常识:两个浮点数如果要进行加减法运算,它们的阶或者指数必须相等
在这里插入图片描述

一、对阶

  • 求阶差
  • 如果把阶码大的向阶码小的看齐,就要把阶码大的数的尾数部分左移,阶码减小。这个操作有可能在移位过程中把尾数的高位部分移掉,这样就引发了数据的错误,所以,尾数左移在计算机运算中不可取。
  • 如果把阶码小的向阶码大的看齐,在移位过程中如果发生数据丢失,也是最右边的数据位发生丢失,最右边的数据位丢失,只会影响数据的精度,不会影响数据的大小。
    在计算机中,采用小阶向大阶看齐的方法,实现对阶。

二、 尾数求和

补码加法

三、规格化

  • 左规
    尾数左移一位,阶码减1,直到数符和第一数位不同为止(机器数表示方式是补码)。
  • 右规(尾数的绝对值太大时,右规)
    尾数右移一位,阶码加1。
    当尾数溢出( >1 )时,需要右规
    是否溢出,可以通过两位的符号位得出:
    即尾数出现01.xx…xx或10.xx…xx(两位符号位不同)



四、舍入

舍入,是指数据的长度超过了计算机当中存储数据的物理器件所保存的数据长度。低位部分就要进行处理,保证数据能够以比较精确的精度保存在计算机当中。

对阶右规过程中,可能出现尾数末位丢失,引起误差。为了尽可能减小误差,就需要考虑舍入。

舍入的方法:

  1. 截断法
    将移出的数据一律舍去。该方法简单,很常用。但是影响精度。
  2. 0舍1入法
    移掉的是1,则尾数末尾加1,移掉的是0,就不加。
  1. (末位)恒置“1”法
    将要保留的末位数据恒置1,无论右移掉的是1还是0,末位是1还是0。

五、溢出判断

在这里插入图片描述


例题1:x=0.1101✖201 ; y=(-0.1010)✖211。求x+y
解:先写出x和y的补码表示形式
[x]补码=00,01;00.1101
[y]补码=00,11;11.0110


  1. 对阶
  2. 尾数求和
    在这里插入图片描述
  3. 规格化
    [x+y]补的尾数是11.1001,符号位是1,尾数的最高位也是1,补码形式表示。
    采用左规的方式,使数据规格化:把尾数左移一位,同时阶码减一。
    左规之后的数据:00,10;11.0010
    得到结果为:x+y=(-0.1110)✖210



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/208076.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午12:25
下一篇 2026年3月19日 下午12:25


相关推荐

  • 使用WinINet和WinHTTP实现Http訪问

    使用WinINet和WinHTTP实现Http訪问

    2021年12月9日
    46
  • linux如何删除tree命令,误删tree命令如何恢复

    linux如何删除tree命令,误删tree命令如何恢复误删tree命令如何恢复考察rpm,yum的用法一、删除tree命令,tree命令不可用[root@centos7~]#whichtree/usr/bin/tree[root@centos7~]#rm-f/usr/bin/tree[root@centos7~]#tree.bash:tree:commandnotfound…二、直接yum或rpm安装将提示tree已经…

    2022年7月24日
    15
  • 关于COM组件

    关于COM组件COM 技术内幕 FAQ1 什么是 COM 组件 第一章 Answer COM 组件是以 WIN32 动态链接库 DLL 或可执行文件 EXE 形式发布的可执行代码组成 COM 组件是遵循 COM 规范编写的 COM 组件是一些小的二进制可执行文件 COM 组件可以给应用程序 操作系统以及其他组件提供服务自定义的 COM 组件可以在运行时刻同其他组件连接起来构成某个应

    2026年3月18日
    2
  • 1.7-工控上位机软件开发平台介绍

    1.7-工控上位机软件开发平台介绍一、前言前面几章一直没有提到上位机的另一个主要使用场合,即“工业上位机软件”。主要是因为本人没有接触过,不敢贸然发表见解类的文章。最近在机缘巧合下,对“工业上位机软件”有了一些初步的了解。在这里和大家分享一下。注意本节的内容还不够专业全面,只适合对“工控软件”进行一个初步的了解。二、工业“自动化”控制系统的组成在工业生产过程中,最重要的是安全,其次是稳定。工业生产环境中可以常见大如“吊车”般的设备、有毒气体、强碱、强酸、几千度的高温、易燃易爆气体、高压水蒸气。所以容不得半点错误,出错就意味着要死人,因

    2022年5月31日
    85
  • 深度学习 — BP算法详解(误差反向传播算法)「建议收藏」

    深度学习 — BP算法详解(误差反向传播算法)「建议收藏」本节开始深度学习的第一个算法BP算法,本打算第一个算法为单层感知器,但是感觉太简单了,不懂得找本书看看就会了,这里简要的介绍一下单层感知器:图中可以看到,单层感知器很简单,其实本质上他就是线性分类器,和机器学习中的多元线性回归的表达式差不多,因此它具有多元线性回归的优点和缺点。单层感知器只能对线性问题具有很好的解决能力,但是非线性问题就无法解决了,但是多层感知器却可以解决非线性问题,多层感…

    2022年5月3日
    98
  • iOS 自我检測

    iOS 自我检測

    2022年1月29日
    52

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号