补码
1. 十进制转二进制
1.1 正整数转二进制
除2取余,直至商为0,余数倒序排列。
1.2 负整数转二进制
先求与该负数相对应的正整数的二进制代码,然后将所有位取反,末尾加1,不够位数时,左边补1(看类型 int为4个字节时补足32位).
例:十进制 int i = -100 转二进制
100的二进制是0110 0100 取反 1001 1011 末尾加1为
1001 1100 然后左边补1(补24个1).
1.3 0的二进制
全是0
2. 二进制转十进制
1.1 如果首位是0,则表明是正整数,按普通方法来求.
1.2 如果首位是1,则表明是负整数
将所有位取反,末尾加1,所得数字就是该负数的绝对值
1.3 如果全是0,则是0.