移码
对补码符号位取反但是,这个说法并不准确与其说是符号位取反,倒不如说是最高位加1大家都知道,移码是用在阶码上的拿 float 单精度来举例:八位的阶码,偏置常数是2^(n-1) - 1 = 127 (至于为什么是127而不是128,可参考浮点数的偏置常数)如果指数是2 —— 0000 0010(二进制)则阶码应该存127 + 2 =129 ——1000 0010(二进制)然后,按我们...
移 码 : 补 码 最 高 位 加 1 , 正 是 因 为 偏 置 常 数 的 参 与 \color{red}{移码:补码最高位加1,正是因为偏置常数的参与} 移码:补码最高位加1,正是因为偏置常数的参与
对补码符号位取反
但是,这个说法并不准确
与其说是符号位取反,倒不如说是最高位加1
大家都知道,移码是用在阶码上的
拿 float 单精度来举例:
八位的阶码,偏置常数是2^(n-1) - 1 = 127 (至于为什么是127而不是128,可参考浮点数的偏置常数的文末)
如果指数是2 —— 0000 0010(二进制)
则阶码应该存127 + 2 =129 ——1000 0010(二进制)
然后,按我们的规则
对指数2最高位加1得:
1000 0010
但 是 , 由 于 偏 置 常 数 是 127 而 不 是 128 \color{red}{但是,由于偏置常数是127而不是128} 但是,由于偏置常数是127而不是128
故我们要得到阶码的话,还应该减1即:
1000 0001 即129
Ps:127比128少了1
注 意 , 阶 码 是 非 负 数 , 不 存 在 符 号 位 一 说 \color{red}{注意,阶码是非负数,不存在符号位一说} 注意,阶码是非负数,不存在符号位一说
但 是 , 阶 码 却 可 以 表 示 小 于 0 的 指 数 , 这 就 是 设 置 移 码 , 设 置 偏 置 常 数 的 意 义 ! ! \color{red}{但是,阶码却可以表示小于0的指数,这就是设置移码,设置偏置常数的意义!!} 但是,阶码却可以表示小于0的指数,这就是设置移码,设置偏置常数的意义!!
更多推荐
所有评论(0)