V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zjsxwc
V2EX  ›  程序员

浮点数指数位的表示是什么编码?

  •  
  •   zjsxwc ·
    zjsxwc · 2020-12-30 14:54:25 +08:00 · 785 次点击
    这是一个创建于 1224 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://www.jianshu.com/p/43b1b09f27f4

    IEEE754 标准中,以 32 位浮点数的指数为例,
    -127 的 8 位编码是 0000 0000
    128 的 8 位编码是 1111 1111

    那么这种不是补码也不是原码的表示是什么编码?
    zjsxwc
        1
    zjsxwc  
    OP
       2020-12-30 15:16:56 +08:00
    解决了是 “移码编码”
    zjsxwc
        2
    zjsxwc  
    OP
       2020-12-30 15:18:49 +08:00
    移码(又叫增码或偏置码)通常用于表示浮点数的阶码,其表示形式与补码相似,只是其符号位用“1”表示正数,用“0”表示负数,数值部分与补码相同。
    zjsxwc
        3
    zjsxwc  
    OP
       2020-12-30 15:34:58 +08:00
    二楼错了,“移码”不是 IEEE754 中的指数阶码。
    浮点数的“移码编码” 等于 “移码” 减去 1 。

    比如“0”在 8 位“移码编码”中表示是 0111 1111,
    而在“移码”的表示为 1000 0000 。
    agagega
        4
    agagega  
       2020-12-30 17:11:14 +08:00 via iPhone
    是加上一个 offset
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1288 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 23:16 · PVG 07:16 · LAX 16:16 · JFK 19:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.