您现在的位置: 华玉生活网 >> 技术文库 >> 基础 >> 正文>> 繁体中文

浮点数常用的编码方法

浮点数常用的编码方法

  前面已经说到,在计算机内,浮点数被表示为如下格式:
  

  通常情况下,数的符号位Ms,仍然采用0表示正号、1表示负号的规则。数的尾数部分M采用定点小数形式表示,可用原码(或补码)等编码方式。讨论浮点数的编码方法的关键,是确定对阶码部分的编码方法。

  在多数通用计算机中,浮点数的阶码部分多采用整数形式的移码表示。对由1位符号位和n位数值位组成的二进制形式的阶码,其移码的定义为:

    [X] = 2n + X -2-n ≤ X < 2n              (2.15)

  将这一定义与整数补码的定义相比较,

    [X] =(2.16 )

  就可找出移码和补码之间的如下关系:
  当 0 ≤ X < 2 n 时,[X]= 2 n + X = 2 n + [X]
   -2 n≤ X < 0 时,[X]= 2n + X = (2n+1 + X) - 2n

  这表明,由[X]补 得到 [X]移 的方法是变 [X]补 的符号为其反码。例如:
   X = +1011, [X] = 01011, [X] = 11011
   X = -1011, [X] = 10101, [X] = 00101

  移码的性质:
  最高一位为符号位,但其取值与原码和补码都相反,1代表正号,0代表负号。
  移码只用于表示浮点数的阶码,故只用于整数。
  对移码一般只执行加减运算,在对两个浮点数进行乘除运算时,是尾数实现乘除运算,阶码执行加减运算。对移码执行加减运算时,需要对得到的结果加以修正,修正量为2n,即要对用移码求得的符号位取反后,得到的才是移码形式的正确结果。

  在移码表示中,0有唯一的编码,即 [+0] = [-0] = 1000…0。而且浮点数机器零的形式为000…000。当浮点数的阶码≤-2 n时,不管尾数值大小如何,都属于浮点数下溢,被认为其值是0。此时,移码表示的阶码值正好是每一位都为0的形式,这有利于简化机器中的判0线路。


  • 扩展阅读
  • 上一个文章:
  • 【返回网站首页】 【返回基础】
  • 下一个文章:
  • 【字体: 】【】【发表评论】【加入收藏】【告诉好友】【打印此文
    文章 软件 电影 商品

    相关文章

    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    | 服务声明 | 充值中心| 华安五金电器 | 收费标准| 论坛| 留言| 实用查询| 会员中心| 下载帮助| 设为首页|

    技术支持:瑞达科技 即时交谈QQ:237013889 QQ群:13810759 E-Mail:237013889@qq.com
    非盈利网站,如有侵权,请来信来电告知,第一时间处理,谢谢!
    桂ICP备17008104号 华玉生活网网站统计
    tj