原码、反码、补码以及位运算

一、计算机在运算时都是以补码的形式进行的。
1.非负数(即零和正数)的原码、反码、补码相同
2.负数的反码:符号位不变,原码其他位取反
3.负数的补码=反码+1
二、位运算(数字转为二进制数后,进行比较或变换的一种形式)
1.按位与'&':两位皆一,结果为一
2.按位或'|':两位存一,结果为一
3.按位异或'^':两位不同,结果为一
4.按位取反'~'(对一个数来说):0变1,1变0
5.算术右移'>>':低位溢出,符号不变,用符号位去补足缺失的高位(右移n位就相当于除以2的n次方)
6.算术左移'<<':高位溢出,符号不变,用符号位去补足缺失的低位
三、补充
1.进制转换
(1)十进制转二进制:除2取余法(倒序取余)
(2)二进制转十进制:位权法
(3)非十进制数转十进制都可以使用位权法
(4)二进制转八进制:凑三位转十进制数
(5)二进制转十六进制:凑四位转十六进制数
2.二进制减法:100-1=>012-1=011

你可能感兴趣的:(原码、反码、补码以及位运算)