将十进制数693转换为二进制数的计算过程如下:
除2取余法 通过不断将693除以2,并记录余数,最终将余数倒序排列即可得到二进制表示。
具体步骤:
- 693 ÷ 2 = 346 余 1
- 346 ÷ 2 = 173 余 0
- 173 ÷ 2 = 86 余 1
- 86 ÷ 2 = 43 余 0
- 43 ÷ 2 = 21 余 1
- 21 ÷ 2 = 10 余 1
- 10 ÷ 2 = 5 余 0
- 5 ÷ 2 = 2 余 1
- 2 ÷ 2 = 1 余 0
- 1 ÷ 2 = 0 余 1
将余数倒序排列得到: 10101011
。
位运算法
通过位运算快速转换,具体步骤如下:
- `n ^ (n >> 1)`:将n与其右移一位后的数进行异或操作,得到相邻位不同的结果(如10101011)。
- `(x & (x + 1)) == 0`:检查结果是否为全1,如果是则说明相邻位不同。
最终结果同样为 10101011。
结论: 693的二进制表示为 10101011