位运算的三个要点(摘取于韩顺平老师总结)!
二进制有三个重要的概念
1. 原码
用二进制来表示一个数,这个码就是原码.
原码 00000000 0000000 0000000 00000101 = 1*2的零次方+0*2的一次方+1* 2的二次方=1+0+4=5
2. 负数的反码=它的原码符号位不变,其它位取反(0->1,1->0)
反码(正数的反码和它的原码一样 , 负数反码是符号位不变其它位取反)
补码(正数的补码和它的原码一样,负数的补码是它的反码+1)
举例:
-1
-1的原码 10000000 00000000 00000000 00000001
-1的反码 11111111 11111111 11111111 11111110
-1 的补码 11111111 11111111 111111111 11111111
3. 在计算机运算的时候,都是以补码的方式来运算的
4+5=>计算机 4-5=4+(-5)
这句话意思就是,不管一个数是正数还是负数,都要被转成补码,然后进行运算.