定点数和浮点数表示方法

文章目录

  • 数据
    • 数值数据的表示方法
      • 定点数的表示方法
      • 浮点数的表示方法
      • 例子

数据

定点数和浮点数表示方法_第1张图片


数值数据的表示方法

  • 定点格式:计算机中所有数据的小数点位置是固定不变的,数值范围有限
  • 浮点格式:小数点的位置随阶码的位置同步而浮动

定点数的表示方法

  • 数受字长限制,表示数的范围有限

  • 多用定点纯数表示整数,也称整数运算

      假定用 n+1(0-n) 来表示一个定点数x,看图
    

定点数和浮点数表示方法_第2张图片
x为纯小数

就约定了小数点位于Xn和Xnn-1之间,即符号位和量值之间,当除符号位之外,所有位数为0,最小值为0,当除符号位之外,所有位上的数位1,最大值为1−2 n ^n n

范围: 0 ≤ |x| ≤ 1−2 n ^n n

x为纯整数

就约定了小数点位于X0的右边

范围: 0 ≤ |x| ≤ 2 n ^n n - 1


浮点数的表示方法

  • 任何一个十进制数可以写成 N = 10 E ^E E,同样二进制数的 N = 2 E ^E E .M

定点数和浮点数表示方法_第3张图片

定点数和浮点数表示方法_第4张图片

  • IEEE754 规定了32位和 64位浮点数的标准格式
    定点数和浮点数表示方法_第5张图片
    定点数和浮点数表示方法_第6张图片

  • 单精度浮点数的指数是用8位二进制表示的,8位二进制表示范围0~255,用移码表示,偏移127,0和255有特殊用处,故有效范围是(1~254),所以实际范围就是-126~+127,同理可以知道双精度浮点数的指数范围-1022~+1023

    32位: E = e + 127
    64位: E = e + 1023

  • IEEE745 真值表达式

    32位规格化:
    x = (-1) s ^s s x (1.M) x 2 E-127
    e = E - 127

    64位规格化:
    x = (-1) s ^s s x (1.M) x 2 E-1023
    e = E - 1023


例子

十进制(7.25)数转IEEE745标准浮点数32位的二进制存储格式

  • 将十进制的整数和小数部分分别转为二进制
    定点数和浮点数表示方法_第7张图片

  • 用科学记数法表示二进制数

    000000111.0100… = 1.110100 x 2 2 ^2 2
    E = e + 127 = 2 + 127 = 129
    S = 0 (S代表浮点数符号位)
    M = 01 (M代表尾数)

    0000 0011 1010 0000 0000 0000 0000 0000 (浮点数32位存储格式)
    03A00000 (16进制表示法,1111=15,所以每隔4位用16进制表示)
    定点数和浮点数表示方法_第8张图片

      	欢迎指正。。。。
    

你可能感兴趣的:(计算机组成原理)