美文网首页
原码、反码、补码

原码、反码、补码

作者: SimpleSJ | 来源:发表于2018-10-25 16:38 被阅读0次

    1.原码反码补码基本概念

    • 数据在计算机内部是以补码的形式储存的
    • 数据分为有符号数和无符号数(最高位为符号位)
      • 无符号数都为正数,由十进制直接转换到二进制直接存储(其实也是该十进制的补码)即可。 有符号数用在计算机内部是以补码的形式储存的。( 正数的最高位是符号位0,负数的最高位是 符号位1。
      • 对于正数:反码==补码==原码。 对于负数:反码==除符号位以外的各位取反。补码=反 码+1)
      • 正数的首位地址为0,其源码是由十进制数转换到的二进制数字
      • 负数的首位地址为1,其源码后面的位也为10进制数转换过去的二进制数字,都是用补码方式表示 有符号数的。

    2. 1 与 -1 在内存中存储的具体细节

    • 1为正数,正数的原码、反码、补码三码合一,就是其二进制的形式
    三码合一:0000 0000 0000 0000 0000 0000 0000 0001
    
    • -1 为负数, 其补码为原码除符号位以外取反再+1
    原码:1000 0000 0000 0000 0000 0000 0000 0001
    反码:1111 1111 1111 1111 1111 1111 1111 1110
    补码:1111 1111 1111 1111 1111 1111 1111 1111
    

    3. 为什么要引入这三个概念

    符号位参与运算, 根据运算法则减去一个正数等于加上一个负数, 即: 1-1 = 1 + (-1) = 0 , 所以机器可以只有加法而没有减法, 这样计算机运算的设计就更简单了.
    总而言之就是为了方便计算机计算

    相关文章

      网友评论

          本文标题:原码、反码、补码

          本文链接:https://www.haomeiwen.com/subject/circtqtx.html