zoukankan      html  css  js  c++  java
  • 原码 反码 补码 移码的关系(精简总结)

    http://www.cnblogs.com/seer/p/3395888.html

    依然是为了避开那些繁琐复杂晦涩的概念与术语,为了确保能清晰的梳理它们之间的关系,现分为两部分说明

    1. 机器数 是 正数  符号位为0

    原码 = 反码 = 补码

    eg:机器码长度为8,求X(6)10原码 反码 补码 移码

    [X]原 = 00000000+110=00000110

    [X]补=[X]反=[X]原 =00000110

    [X]移=10000110

    (绿色为符号位)

    2.机器数 是 负数 符号位为1

    反码 = 原码(符号位除外)各位取反而得到

     补码 = 原码(除符号位外)各位取反,并在未位1而得到

    eg:机器码长度为8,求X(-6)10原码 反码 补码 移码

    [X]原 = 10000000+110=10000110

    [X]补=11111001 +1=11111010

    [X]反=11111001

    [X]移=01111010

    (绿色为符号位)

    =============================

    移码 = 补码的符号位直接取反

    =============================

    应用示例

    已知补码 求原码

    原码 = 补码取反加1 (符号位除外)

    [X]补=1101001  求[X]原。

    [X]原 = 1010110+1 =1010111

    总结:在换算过程中符号位始终保持不变(移码除外)。

  • 相关阅读:
    ArrayList和Vector的比较
    ExtJs与jQuery的比较
    列表类型的内建函数
    序列类型函数
    SQL函数
    HTTP状态码
    序列切片
    数值运算
    数值类型转换
    Python中is和==的区别
  • 原文地址:https://www.cnblogs.com/liulipeng/p/3396275.html
Copyright © 2011-2022 走看看