购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.6 二进制数的属性

大家可能已经在程序中发现了二进制数有一些有用的属性:

●如果二进制(整数)数的第0位为1,则该数为奇数;如果第0位为0,则该数为偶数。

●如果二进制数的低 n 位都是0,则该数可以被2 n 整除。

●如果二进制数除了第 n 位为1,其他位均为0,则该数等于 2 n

●如果二进制数第0~ n 位(不包括第 n 位)均为1,其他位均为0,则该数等于2 n -1。

●将二进制数全部位左移1位的结果等于原二进制数乘以2。

●将无符号二进制数全部位右移1位的结果等于原二进制数除以2(不适用于有符号整数)。如果原二进制数是奇数,则相当于结果四舍五入。

●两个 n 位二进制数的乘积最多需要2× n 位来保存。

●两个 n 位二进制数的和或者差最多需要n+1位来保存。

●将二进制数按位取反(把所有0变成1,1变成0)的结果与对该数求负(改变符号)后减1的结果相等。

●将定位数的最大无符号二进制数加1得到的是数值0。

●将数值0减1得到的是定位数的最大无符号二进制数。

n 位数是这些位的2 n 个不同组合。

●数值2 n -1一共有 n 位,每一位都是1。

应该记住2 0 ~2 16 中所有2的幂(见表2-4),因为这些数值会反复出现在程序中。

表2-4 2的幂 +7cef6HfpWKx9ltQ6wmB9UhN/X1WUMjfAFL+Ss+r/eJPvMzm6p06BmNykKB1ZVpQ

img
点击中间区域
呼出菜单
上一章
目录
下一章
×