n位二进制 整数 的原码、反码的数值范围、数值个数 作者:马育民 • 2025-03-31 10:43 • 阅读:10008 需要掌握: - [二进制转十进制、十进制转二进制,十六进制转十进制](https://www.malaoshi.top/show_1GWr74nOCSI.html "二进制转十进制、十进制转二进制,十六进制转十进制") - [原码、反码、补码](https://www.malaoshi.top/show_1IX5uuS5em5G.html "原码、反码、补码") # 先说结论 ### 原码范围 n位二进制数原码的数值范围: ``` - (2^(n-1) - 1) ~ 2^(n-1) - 1 ``` ### 反码范围 正数反码:与原码相同 负数反码:在原码的基础上,**按位取反,符号位不变** 所以范围与原码范围相同: ``` - (2^(n-1) - 1) ~ 2^(n-1) - 1 ``` ### 数值个数 ``` 2^n - 1 ``` `-` 是因为有一个是 `-0`,等于 `0`,所以不算 # 8位二进制正数的值(原码) 8位二进制正数的值(有符号位置): ``` 0000 0000 表示0 0000 0001 表示1 0000 0010 表示2 0000 0011 表示3 .... 0111 1111 表示127 ``` ### 正数最大值 127 所以正数的最大值是 `127` ### 正数个数 128个数字 ### 正数最大值公式 最大值公式:`2^(n-1) - 1` # 8位二进制负数的值(原码) ``` 1000 0000 表示 -0 没意义,而且等于0 1000 0001 表示 -1 1000 0010 表示 -2 1000 0011 表示 -3 .... 1111 1111 表示 -127 ``` ### 负数最大值 -127 所以负数最大值 `-127` ### 负数个数 127个数字(-0没意义,而且等于0) ### 负数最大值公式 负数最大值公式:`-2^(n-1) - 1` # 数值个数 `128 个正数 + 127 个负数 = 255 个数` ### 公式 ``` 2^n - 1 ``` 参考: https://blog.csdn.net/qq_51216031/article/details/136319167 原文出处:http://malaoshi.top/show_1GWrJLUYO97.html