zoukankan      html  css  js  c++  java
  • 原码补码反码

    例:
    7的 原码 0000 0111
    反码 0000 0111
    补码 0000 0111
    -7 原码 1000 0111
    反码 1111 1000 第一位1 是符号位表示为负 不变 其他位取反
    补码 1111 1001 在反码基础上最后一位加一
    补码负数 就是在内存中的存储形式
    这时在内存中,把7和-7相加 0000 0111+ 1111 1001= 0000 0000 就是0

    正数的反码,补码和原码都是相同的
    负数的补码这样求更快:从最低位开始至找到的第一个1均不变,符号位不变,这之间的各位“求反”

    计算机的带符号数用补码表示的优点:

    • 负数的补码与对应正数的补码之间的转换可以用同一种方法,求补运算完成,可以简化硬件
    •  可将减法变为加法,这样减法就可以用加法器进行计算了。
    •  两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃
     
  • 相关阅读:
    一周随笔--15.10.06
    KVC/KVO总结
    一周随笔--15.9.28
    一周随笔--15.9.21
    CocoaPods使用中的invalid byte sequence in US-ASCII错误
    自定义TabBar
    FMDB配合sqlite使用
    常用第三方库
    LLDB编译器命令
    coreData
  • 原文地址:https://www.cnblogs.com/Deanboy/p/7567372.html
Copyright © 2011-2022 走看看