当前位置:首页 > 上门服务 >

单精度浮点数的正负(单精度浮点数中阶符如何确定)

来源:原点资讯(www.yd166.com)时间:2023-12-01 08:32:08作者:YD166手机阅读>>

单精度浮点数的正负,单精度浮点数中阶符如何确定(1)

引言

在计算机中,浮点数和定点数是常用的数值表示方法,用于处理和表示实数(包括小数)的数值。它们在计算机中具有不同的特点和应用场景。浮点数广泛应用于科学计算、金融计算等需要大范围和高精度的任务中。然而,浮点数在表示和计算过程中存在精度等问题。在接下来的介绍中,我们将探讨浮点数的内部表示、常见问题以及处理这些问题常用的解决方案。此外,本文还总结了一些通用的浮点数测试用例,希望可以帮助大家更好地理解和验证浮点数的精度特性。希望通过阅读本文,大家能对浮点数有更清晰的认识和应用。

单精度浮点数的正负,单精度浮点数中阶符如何确定(2)

浮点数的表示

浮点数在计算机内部表示中,小数点的位置是可变的,也就是说,小数点可以"浮动"在有效数字中的任意位置,因此得名。那么,在计算机表示中,它的小数点数如何“浮动”的呢,一起来看看浮点数是如何表示的。

最常用的浮点数表示方法是IEEE754,它是一种计算机浮点数算术标准,定义了浮点数的表示方法和浮点数运算规则。IEEE754标准规定了两种浮点数格式:单精度浮点数(32位)和双精度浮点数(64位),分别用于表示单精度和双精度实数。

十进制转二进制

首先,我们要知道常用的十进制,在二进制的计算机世界中是怎样的。

十进制的正数部分和小数部分转换为二进制的方法是不一样的,十进制整数转二进制使用的是除2取余数法,十进制小数转二进制用的是乘2取整法。

我们举例说明一下,以十进制数8.625为例:

◆整数部分:将整数部分8转化为二进制,可以使用除2取余数法:

8除以2,商为4,余数为0,

将商4再次除以2,商为2,余数为0

将商2再次除以2,商为1,余数为0

将商1再次除以2,商为0,余数为1。

将以上得到的余数按倒序连接起来,得到整数部分的二进制表示为:1000

◆小数部分:将小数部分0.625转化为二进制,可以使用乘2取整法:

0.625 * 2 = 1.25,整数部分为1

剩余小数部分为0.25。0.25 * 2 = 0.5,整数部分为0

剩余小数部分为0.5。0.5 * 2 = 1.0,整数部分为1

剩余小数部分为0。

将以上得到的整数部分按顺序连接起来,得到小数部分的二进制表示为:101

综上,8.625的二进制表示为:1000.101

单精度浮点数

在IEEE 754 中单精度浮点数(32位)被拆成三个部分,分别是sign、exponent 跟fraction,加起来总共是32 个bit。下面以浮点数0.15625为例,看一下单精度浮点数的表示。

首先,需要将0.15625转化为二进制表示为0.00101,其规格化(类似于十进制科学计数法)表示为1.01 x 2^(-3)。

在分别看一下单精度浮点数三个部分的内容:

sign:即符号位,最左侧的1 bit 代表正负号,正数的话sign 就为0,反之则是 1

exponent:即阶码,中间的8 bit 代表规格化后的次方数,采用的是 超127格式,也就是-3 还要加上127 = 124,转化为二进制为1111100;整数前面补零不会影响整数的值,则不足8位时在前面补零,即为01111100。

fraction:即尾数,最右侧的23 bit 放的是小数部分,以1.01 来说就是去掉1. 之后的01。小数后面补零不影响小数的值,则尾数位不足23位在后面补零, 即为01000000000000000000000。

十进制数0.15625表示成单精度浮点数就如下图所示:

单精度浮点数的正负,单精度浮点数中阶符如何确定(3)

双精度浮点数

单精度浮点数只用了32 bit 来表示,为了让误差更小,提高精准度,IEEE 754 也定义了如何用64 bit 来表示浮点数,即双精度浮点数。跟32 bit 比起来尾数 部分大了超过两倍,从23 bit 变成52 bit,对比如下图所示:

单精度浮点数的正负,单精度浮点数中阶符如何确定(4)

首页 123下一页

栏目热文

ieee754尾数用什么表示(如何用ieee754标准表示一个浮点数)

ieee754尾数用什么表示(如何用ieee754标准表示一个浮点数)

浮点数在计算中如何存储?浮点数在计算机中是如何存储的你知道吗?IEEE754是计算机浮点数格式标准,S代表符号位,0为正...

2023-12-01 09:05:29查看全文 >>

单精度浮点数报文举例(单精度浮点数的例子)

单精度浮点数报文举例(单精度浮点数的例子)

Modbus协议存在用于串口、以太网、专用网络的版本。各版本的Modbus通信协议在数据模型和功能调用上都是相同的,只有...

2023-12-01 09:10:27查看全文 >>

单精度浮点数通俗解释(单精度浮点数举例)

单精度浮点数通俗解释(单精度浮点数举例)

大家好,我是站长 polarisxu。团队一直保持着分享的习惯,而我却分享的较少。忘了当时同事分享什么主题,涉及到浮点数...

2023-12-01 08:50:23查看全文 >>

十进制与ieee754标准转换原理(将ieee754标准转换为十进制)

十进制与ieee754标准转换原理(将ieee754标准转换为十进制)

本文功能:浮点数0.1 0.2 不等于 0.3的前置知识点我们知道js存储number类型的数据采用的是IEEE 7...

2023-12-01 08:58:05查看全文 >>

将十进制转换为ieee754标准浮点数(十进制转浮点数的方法)

将十进制转换为ieee754标准浮点数(十进制转浮点数的方法)

1 什么是比特?比特(bit,binary digit的缩写)中文翻译为“二进位数字”、“二进位” 或简称为 “位”。比...

2023-12-01 08:31:35查看全文 >>

ieee单精度浮点数与定点数的区别(ieee32位浮点数计算器)

ieee单精度浮点数与定点数的区别(ieee32位浮点数计算器)

1、定点运算:“定点数”就是“点”不动的数,即“小数点”不变的数。整数的小数点表示在最后一位数字的后面,而小数的小数点标...

2023-12-01 09:11:48查看全文 >>

怪物猎人物语大空基因搭配(怪物猎人物语1.3基因搭配大全)

怪物猎人物语大空基因搭配(怪物猎人物语1.3基因搭配大全)

游信特邀作者:白夜《怪物猎人物语2:毁灭之翼》是今年继《怪物猎人:崛起》以及《生化危机8》之后的又一部卡普空游戏作品。不...

2023-12-01 09:09:09查看全文 >>

怪物猎人物语白疾风怎么打(怪物猎人物语白一角怎么配)

怪物猎人物语白疾风怎么打(怪物猎人物语白一角怎么配)

《怪物猎人物语2:毁灭之翼》中的9星羁绊任务里有一个打白疾风迅龙的,这个任务还是共斗白疾风任务的开启条件,很多玩家都不太...

2023-12-01 08:37:46查看全文 >>

怪物猎人物语如何获得赤红豪神(怪物猎人物语联动赤火豪神)

怪物猎人物语如何获得赤红豪神(怪物猎人物语联动赤火豪神)

卡普空在十二月初发布了《怪物猎人物语》安卓移植版,吸引了国内大量怪物粉的关注。卡普空推出这款RPG手游的野心很明显,在手...

2023-12-01 08:49:52查看全文 >>

qq华夏手游绿玉令牌哪里买(qq华夏手游九级宝石套)

qq华夏手游绿玉令牌哪里买(qq华夏手游九级宝石套)

在游戏中,有各种不同的称号,一般都是有属性的,所以大家都想要获得全部的称谓,这个是预约礼包中获得的,那QQ华夏手游天圣元...

2023-12-01 09:04:43查看全文 >>

文档排行