IEEE 754浮点数表示

浮点数组成

单精度浮点数(32位)为例说明:

十进制浮点数组成:

十进制基数(base)为10
在这里插入图片描述

二进制浮点数组成:

二进制基数(base)为2

以IEEE 754标准表示十进制数: ( 7.625 ) 10 (7.625)_{10} (7.625)10,先将其转成二进制表示: ( 111.101 ) 2 = 1.11101 ∗ 2 2 = 2 2 ∗ ( 1 + 0.11101 ) (111.101)_{2}=1.11101*2^{2}=2^{2}*(1+0.11101) (111.101)2=1.1110122=22(1+0.11101)

将以上二进制以IEEE 754标准存入内存中如下:
在这里插入图片描述

浮点数 二进制小数转十进制小数公式: s i g n ∗ 2 E ∗ ( 1 + m a n t i s s a ) sign*2^{E}*(1+mantissa) sign2E(1+mantissa) 这里的 E E E是实际指数(下面会说明 E E E的计算)而不是存储在内存中的指数。

IEEE 754 浮点数概述

在这里插入图片描述

IEEE 754 规范化浮点数

sign规定

0为正

1为负

exponent规定

指数部分有正有负,因此IEEE 754标准中采用有偏指数(The Biased exponent)表示。这意味着存储在内存中的指数部分 e e e并不是实际的指数 E E E。存储在内存中的指数 e e e为实际指数 E E E加上偏移常数(Bias)。
对于单精度浮点数(32位)为例,实际指数 E E E和存储的指数 e e e之间的关系如下:
E = e − 127 E=e-127 E=e127
这里,127是偏移常数(Bias)。偏移常数计算采用: 2 n − 1 − 1 2^{n-1}-1 2n11,这里的 n n n为存储指数的bit位数。对于单精度浮点数,指数部分占8位(即 n = 8 n=8 n=8),因此偏移常数是 2 8 − 1 − 1 = 127 2^{8-1}-1=127 2811=127

mantissa规定

通过移位操作将小数点前的值固定为1。

mantissa为23位,但是小数点前有固定为1的一位,因此尾数部分比实际多一位,共24位(significand)

IEEE 754 非规范化浮点数

非规范化浮点数表示0和接近0的值

exponent规定

exponent部分全为0。

偏移值比规范化的偏移值小1。即: 2 n − 1 − 2 2^{n-1}-2 2n12,以单精度浮点数为例 2 8 − 1 − 2 = 126 2^{8-1}-2=126 2812=126表示0。指数位全为0,则是-126。

mantissa规定

规范化浮点数表示,mantissa部分有一个省略的前导1

非规范化浮点数表示,当指数位全为0时,mantissa部分没有被省略的前导1

特殊值

Infinity值

在这里插入图片描述
在这里插入图片描述

NaN(Not a Number)值

在这里插入图片描述
在这里插入图片描述

好用的几个工具

  1. base convert
  2. float toy

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/424750.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一,掌心里的智慧:我的 TinyML 学习之旅

从云端到掌心:TinyML 的故事 想象一下,有一天你起床,伸手去关闭窗边的小闹钟,却发现这个小家伙已经提前预判到你的醒来时间——因为它能够“听到”你昨晚的呼吸变化,分析出你什么时候会醒。这个场景可能听起来像科幻小…

网络编程基础概述

文章目录 协议网络协议栈(osi)局域网IPIP和Mac地址端口号TCP和UDP网络字节序 协议 (网络协议的)意义:为了让计算机传输之间将信息正确传输给目标机器 不同系统之间能接入网络是因为定制了一套通用的协议以便支持不同系统间的网络通信 1.网络通信的问题: 将数据可靠的从A传给B a…

什么是 SMB 服务器以及它如何工作?

在本文中,您将了解 SMB 服务器以及它们如何促进网络文件共享。 我们将介绍它们的基本功能、主要特性以及如何安全地设置它们。无论您是新手还是需要复习,本指南都将帮助您更好地了解 SMB 服务器。 什么是 SMB 服务器? SMB(服务器…

线性代数 第七讲 二次型_标准型_规范型_坐标变换_合同_正定二次型详细讲解_重难点题型总结

文章目录 1.二次型1.1 二次型、标准型、规范型、正负惯性指数、二次型的秩1.2 坐标变换1.3 合同1.4 正交变换化为标准型 2.二次型的主要定理3.正定二次型与正定矩阵4.重难点题型总结4.1 配方法将二次型化为标准型4.2 正交变换法将二次型化为标准型4.3 规范型确定取值范围问题4.…

基于HPLC的低压电力采集方案

1. 组网部署 2. 组网部件 3. 原理

【03】深度学习——神经网络原理 | 多层感知机 | 前向传播和反向传播 | 多层感知机代码实现 | 回归问题、分类问题 | 多分类问题代码实现

深度学习 1.神经网络原理1.1神经元模型1.2神经网络结构1.3隐藏层1.3.1激活函数层1.4输出层1.4.1softmax层1.5损失函数1.6反向传播2.多层感知机2.1线性网络的局限性2.2引入非线性2.3多层感知机(Multi-Layer Perceptron,MLP)2.4激活函数(Activation Function)2.4.1Sigmoid函…

SpringCloud入门(一)SpringCloud简介

一、为什么要学SpringCloud? 企业开发都使用微服务,面试必问微服务 要学会微服务开发的问题和解决方案。应对用户的增长和并发需求。 要应对用户需求变化; 单点式架构无法应对高并发; 服务之间的错综复杂调用&…

C++多态讲解

多态 多态的概念 通俗来说,就是多种形态。多态分为编译时多态(静态多态)和运行时多态(动态多态)这里重点讲运行时多态。 运行时多态 运行时多态,具体点就是去完成某个行为(函数),可以传不同的对象就会完成不同的行为,就达到多种形…

【数学建模】2024年国赛成绩公布时间预测

经过三天三夜的奋战,2024年数学建模国赛也宣告结束,相信这几天超高强度的比赛也让大家精疲力竭了,所以经过几天的调整,大家都恢复过来了吧。能够在高强度的压力下坚持这么久,大家都超级厉害的! 当然完整提交…

基于R语言的统计分析基础:使用键盘输入数据

在R语言中,键盘输入数据是一种灵活且直接的数据获取方式,适用于处理小数据集或需要即时用户交互的场景。通常用于交互式数据探索和分析、临时数据处理、交互式图形绘制、脚本自动化中的用户交互、特定应用场景下的数据录入中。 比如利用readline()函数根…

秋韵虫趣.

文章目录 虫鸣概览虫坛文化蟀种纷呈中华蟋蟀宁阳蟋蟀刻点铁蟋长颚斗蟋 油葫芦棺头蟋中华灶蟋小素蟋树皮蟋蟀 花生大蟋斑腿针蟋其他鸣虫树蟋,又名竹蛉、邯郸梨片蟋,又名金钟、天蛉、绿蛣蛉、银琵琶凯纳奥蟋,又名石蛉,鳞蟋黄蛉蟋&am…

数据湖-方案对比

数据湖架构结合了数据湖和数据仓库。虽然它不仅仅是两者之间的简单集成,但其理念是充分发挥两种架构的优势:数据仓库的可靠交易以及数据湖的可扩展性和低成本。 Lakehouse 架构支持管理各种数据类型,例如结构化、半结构化和非结构化数据&…

Git+Jenkins 基本使用(Basic Usage of Git+Jenkins)

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…

【HarmonyOS】鸿蒙头像上传-(编辑个人信息页- 头像上传)+实时数据更新

#效果图 #思路 ##步骤: ###一、利用picker api选择1张图片 实例化选择器参数(使用new PhotoSelectOptions())实例化图片选择器 (使用newPhotoViewPicker() )调用图片选择器的select方法传入选择器参数完成图片选取获得结果 利用picker api选择1张图片 async sele…

监控系列之-prometheus部署说明

一、Prometheus介绍 Prometheus是一款开源的监控系统,主要用于收集、存储和查询时间序列数据,以便于对系统进行监控和分析Prometheus的架构由四个主要组件组成: 1、Prometheus Server :Prometheus Server是Prometheus的核心组件&a…

C到C++入门基础知识

一:命名空间:namespace (一):命名空间的定义 注:命名空间只能定义在全局,不能定义在函数内部。 (1)类似于C语言的结构体,C语言的命名空间定义为&#xff1…

OpenCV和Tesseract OCR识别复杂验证码喽~~

目录 代码实现思路 流程: 主要流程: 整体代码 效果展示 原图 处理之后的图 总结 流程图 代码实现思路 使用 OpenCV 进行图像预处理,并通过 Tesseract OCR 来识别验证码中的字符。以下是其实现思路的详细讲解: 流程&…

代码随想录Day 44|leetcode题目:1143.最长公共子序列、1035.不相交的线、53. 最大子序和、392.判断子序列

提示:DDU,供自己复习使用。欢迎大家前来讨论~ 文章目录 题目题目一:1143.最长公共子序列解题思路: 题目二: 1035.不相交的线解题思路: 题目三:53. 最大子序和解题思路 题目四:392.判…

【Android 13源码分析】WindowContainer窗口层级-3-实例分析

在安卓源码的设计中,将将屏幕分为了37层,不同的窗口将在不同的层级中显示。 对这一块的概念以及相关源码做了详细分析,整理出以下几篇。 【Android 13源码分析】WindowContainer窗口层级-1-初识窗口层级树 【Android 13源码分析】WindowCon…

优化 TCP 以提高网络性能

本页面简要介绍了计算正确设置的方法,以缩短 Google Cloud 和混合场景中 TCP 连接的延迟时间。本页面还可帮助您了解如何缩短 Google Cloud 中流程之间的连接延迟时间。 现代微服务架构主张,开发者应该构建处理单一任务的小型服务。服务应根据系统的可靠…