129的二进制表示为 10000001,具体转换过程如下:
一、十进制转二进制的方法(除2取余法)
1. 将129除以2,记录余数;
2. 将商继续除以2,再记录余数;
3. 重复上述步骤,直到商为0;
4. 将所有余数倒序排列,高位补零。
具体步骤:
```
129 ÷ 2 = 64 余 1
64 ÷ 2 = 32 余 0
32 ÷ 2 = 16 余 0
16 ÷ 2 = 8 余 0
8 ÷ 2 = 4 余 0
4 ÷ 2 = 2 余 0
2 ÷ 2 = 1 余 0
1 ÷ 2 = 0 余 1
```
将余数倒序排列并补零: 10000001。
二、二进制存储形式(补码表示)
在计算机中,整数通常以补码形式存储:
正数:
原码、反码、补码相同;
负数:
补码=反码+1。
对于129(正数):
二进制表示为 00000000 00000000 00000000 10000001(32位);
由于是正数,补码与原码相同。
对于-129(负数):
先求129的反码: 11111111 11111111 11111111 01111111;
补码=反码+1: 11111111 11111111 11111111 10000000(即0xFF FF FF 80)。
三、注意事项
129超出了8位无符号整数的表示范围(0-255),需使用至少9位(如9位二进制数10000001);
在编程中,若使用`byte`类型(8位),129会溢出,实际存储为-1(补码表示)。
综上,129的二进制表示为 10000001,其补码形式为 00000000 00000000 00000000 10000001(32位),而-129的补码为 11111111 11111111 11111111 10000000。