您的当前位置:首页正文

计算机基础:17、二进制--定点数与浮点数

2024-11-24 来源:个人技术集锦

1、定点数表示方法

什么是定点数?
小数点固定在某个位置的数,称为定点数

下方两张图片展示了纯整数和纯小数的定点数表达

若不是纯小数也不是纯整数,这个时候就需要乘以一个比例因子以满足定点数保存格式,如:
10.02表示为:0.1002*10^2

2、浮点数表示方法

2.1、浮点数的表示格式

数学中的科学记数法
科学计数法要求尾数位于1到10之间,尾数大于10或者小于1都是非法的

对于任意的浮点数N,都可以使用公式N = S * r^J来表示,如下图:

2.2、浮点数的表示范围

浮点数的范围主要需要考虑阶码和尾数的值;

2.2.1、阶码的取值范围

假设阶码数值取m位,尾数数值取n位
阶码和尾数的数值取值如下图

2.2.2、尾数的取值范围

单精度浮点数(float):使用4字节、32位来表达的浮点数
双精度浮点数(double):使用8字节、64位来表达的浮点数

2.3、浮点数的规格化

浮点数对于尾数的要求:
尾数规定必须使用纯小数
尾数最高位必须是1

3、定点数与浮点数对比

  • 当定点数与浮点数位数相同时,浮点数表示的范围更大
  • 当浮点数尾数为规格化数时,浮点数的精度更高
  • 浮点数运算包含阶码和尾数,浮点数的运算更为复杂
  • 浮点数在数的表示范围、精度、溢出处理、编程等方面均优于定点数
  • 浮点数在数的运算规则、运算速度、硬件成本方面不如定点数
    定点数一般使用在成本比较低的芯片里面
显示全文