#BW197. 进制转换和原码反码补码及位运算专题练习

进制转换和原码反码补码及位运算专题练习

一、进制的基本概念

  1. 二进制数 (10111)2(10111)_2 按位权展开,对应的十进制数是 {{ input(1) }}。

  2. 十六进制数 (3C)16(3C)_{16} 对应的十进制值是 {{ input(2) }}。


二、进制转换

  1. 十进制数 37 转换为二进制数是 {{ input(3) }}。

  2. 二进制数 (111001)2(111001)_2 转换为十进制数是 {{ input(4) }}。

  3. 二进制数 (11010110)2(11010110)_2 转换为八进制数是 {{ input(5) }},转换为十六进制数是 {{ input(6) }}。

  4. (52)8=(x)2=(y)10(52)_8 = (x)_2 = (y)_{10},则 xx(二进制,去掉前导零)为 {{ input(7) }},yy 为 {{ input(8) }}。


三、原码、反码、补码

  1. −19 在 8 位机器数下的原码是 {{ input(9) }},反码是 {{ input(10) }},补码是 {{ input(11) }}。

  2. 8 位补码 11100000 的十进制真值是 {{ input(12) }}。

  3. 在 8 位补码系统中,351935 - 19 的计算结果(十进制)是 {{ input(13) }}。

  4. 在 8 位补码系统中,以下二进制数中值最小的是 {{ input(14) }}。 A. 10000001 B. 11111110 C. 00001010 D. 01111111


四、位运算

  1. 9&59 \mathbin{\&} 5 的计算结果是 {{ input(15) }}。

  2. 10410 \mathbin{|} 4 的计算结果是 {{ input(16) }}。

  3. 已知 a=8a = 8b=12b = 12,执行 a = a ^ b; b = a ^ b; a = a ^ b; 后,a=a = {{ input(17) }}。

  4. 1 << 5 的结果是 {{ input(18) }}。

  5. C++ 中判断正整数 nn 是否为 2 的幂的条件表达式写为 {{ input(19) }}(用 && 连接)。