1.负数在计算机中的存储
计算机中的有符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同 。在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理
2.补码的计算
正整数的补码是其二进制表示,与原码相同
求负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1
+7 0000 0111 ==》1111 1000 ==》1111 1001
+7二进制 反码 -7二进制(补码),最高位为1
3 快速根据一个负数算出补码
例如 -7 0xff-7+1 = 0xf9