在计算机中,浮点数是如何表示和运算的

在计算机中,浮点数是如何表示和运算的浮点数是什么浮点数是计算机中一种表示实数的数值类型 由尾数和指数组成 浮点数的表示形式有点类似于科学计数法 比如 6 19 10 3 浮点数 IEEE 754 标准是计算机中一种常用的浮点数标准 该标准定义了单精度和双精度浮点数的表

欢迎大家来到IT世界,在知识的湖畔探索吧!

浮点数是什么

浮点数是计算机中一种表示实数的数值类型,由尾数和指数组成。浮点数的表示形式有点类似于科学计数法,比如:6.19 × 10 ^ 3。浮点数 IEEE 754 标准是计算机中一种常用的浮点数标准,该标准定义了单精度和双精度浮点数的表示方法。

精度

位数

符号位(S)

指数(E)

尾数(M)

偏移值

单精度

32 位

1

8

23

127

双精度

64 位

1

11

52

1023

规格化数实际值的公式如下:

在计算机中,浮点数是如何表示和运算的



欢迎大家来到IT世界,在知识的湖畔探索吧!

除此之外,还有一种不常用的半精度,它的表示如下:

半精度(16位)

    • 符号位(S):1位
    • 指数(E):5位(偏移值 15)
    • 尾数(M):10位(隐含小数点前面的 1)

浮点数加减法运算的流程

  1. 预处理
  • 若任一操作数为0,直接返回另一个操作数。
  • 对特殊值进行处理(比如NaN、Infinity)。
  1. 对阶操作(Exponent Alignment)
  • 比较两数的指数部分的值,将较小指数的数尾数进行右移操作,直到两数指数部分相等。
  • 右移位数:在计算机中,浮点数是如何表示和运算的

可能的精度损失:右移导致低位精度丢失,可能引入舍入误差。

例:1.01×2^3 + 1.01×2^1 → 对齐后变为: 1.01 000×2^3 + 0.001 01×2^3

欢迎大家来到IT世界,在知识的湖畔探索吧!

对阶操作为什么是右移:如果大阶对小阶,则尾数的数值部分的高位需移出,而小阶对大阶移出的是尾数的数值部分的低位,这样损失的精度更小

  1. 符号判断和尾数运算

根据符号位决定尾数加减操作:

  • 同号:绝对值相加,符号维持不变。
  • 异号:绝对值相减,结果符号为绝对值大的数符号。
  1. 规格化(Normalization)
  • 左规:若结果形如 00.01xx,需左规操作。
  • 右规:若运算产生进位(如 10.xx ),需右规操作。
欢迎大家来到IT世界,在知识的湖畔探索吧!例如:结果为 10.01×2^3 → 右移后变为 1.001×2^4
  1. 舍入(Rounding)

IEEE 754标准有四种处理多余位的模式:

  • 就近舍入(默认)
  • 向零舍入
  • 正向无穷舍入
  • 负向无穷舍入
例如(单精度): 尾数 1.000000000001(24位) 就近舍入后,保留23位:1.00000000001
  1. 溢出与下溢处理
  • 上溢(Overflow):指数超过最大值 → 将其标记为 ± Infinity。
  • 下溢(Underflow):指数过小(精度不够) → 转为非规格化数或 0 。

运算示例

以下面的运算为例:(+0.5) + (-0.4375)

  1. 转为 IEEE754 浮点数格式:
欢迎大家来到IT世界,在知识的湖畔探索吧!0.5  -> 0, 0 000... -0.4375 -> 1 0 110...
  1. 对阶:
指数差1,右移后者尾数1位 → 1.110 → 0.1110
  1. 尾数运算:
欢迎大家来到IT世界,在知识的湖畔探索吧!1.000... - 0.1110... = 0.0010...
  1. 规格化:
左移2位 → 1.000... × 2 ^ -3
  1. 结果:
欢迎大家来到IT世界,在知识的湖畔探索吧!0 0 000... -> 0.0625

扩展 —— 浮点数特殊数值表示

值的类型

符号

阶码

尾数

正零

0

0

0

0

负零

1

0

0

0

正无穷

0

全1

0

负无穷

1

全0

0

-∞

无定义数(非数)

0或1

全1

≠0

NaN

规格化非零正数

0

0 ~ 2 ^ E-1

f

2^(e-偏移值)(1.f)

规格化非零负数

1

0 ~ 2 ^ E-1

f

-2^(e-偏移值)(1.f)

非规格化正数

0

0

f≠0

2^-(偏移值-1)(0.f)

非规格化负数

1

0

f≠0

-2^-(偏移值-1)(0.f)

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/131994.html

(0)
上一篇 2小时前
下一篇 1小时前

相关推荐

发表回复

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

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信