8位浮点数的浮点转换

时间:2013-09-09 03:40:46

标签: floating-point 32-bit

  

考虑以下基于IEEE浮点的8位(是,8位,而不是8字节)浮点表示       格式。

     
      
  1. 格式A:
      有一个标志位   有k = 3个指数位   有n = 4个分数位。

  2.   
  3. 格式B:
      有一个标志位   有k = 4个指数位   有n = 3个分数位。

  4.         

    下面,给出了模式A的一些位模式。您的任务是找出给定数字的值       按格式A,并将它们转换为格式B中最接近的值。

    Format A                       Format B
      Bits             Value          Bits 
      1 010 1000 
      1 110 0000 
      0 101 1010 
      0 000 1001
    

这是家庭作业......我不希望为我完成作业。我只是想学习如何转换。浮点让我非常困惑。

有人可以请制作一个"格式A"并告诉我如何逐步获得价值/转换?

1 个答案:

答案 0 :(得分:4)

问题是缺少许多对定义浮点格式很重要的细节。我将尝试通过假设所有未指定的内容遵循IEEE Std 754-2008 IEEE浮点运算标准中的二进制交换格式的通用规则来回答填写缺失信息的问题的第一部分。

根据标准中的表3.3,格式A的给定参数是 k = 8且 p = 5(斜体字母是标准中的参数,不是问题)。

由此,以及标准中的公式,偏见 = emax = 2 **( k - p - 1) - 1 = 3.

取示例位0 001 0011

分数为二进制,0011/10000,十进制3/16 = 0.1875。指数位为非零,因此它是一个正常值,带有一个非存储的前导位,因此有效位数为1.1875。

指数是二进制,001-011,十进制1-3 = -2。

将signficand乘以2 **( - 2)= 1/4,得到绝对值0.296875。由于符号位为零,因此绝对值是最终值。