15.7 复习题

1.将下列十进制数转化为二进制形式:

a. 3
b. 13
c. 59
d. 119

2.将下列二进制值转化为十进制、八进制和十六进制形式:

广告:个人专属 VPN,独立 IP,无限流量,多机房切换,还可以屏蔽广告和恶意软件,每月最低仅 5 美元

a. 00010101
b. 01010101
c. 01001100
d. 10011101

3.计算下列表达式;假设每个值为8位:

a. ~ 3
b. 3 & 6
c. 3 | 6
d. 1 | 6
e. 3 ^ 6
f. 7 >> 1
g. 7 << 2

4.计算下列表达式;假设每个值为8位:

a. ~0
b. !0
c. 2 & 4
d. 2 && 4
e. 2 | 4
f. 2 || 4
g. 5 << 3

5.因为ASCII码仅使用最后的7位,所以有时需要屏蔽掉其他位。相应的二进制掩码是什么? 分别以十进制、八进制和十六进制形式如何表示这个掩码?

6.在程序清单15.2中,可以做以下替换,把:

阅读 ‧ 电子书库

用:

阅读 ‧ 电子书库

替换,而程序仍将工作。这是否意味着*=2等同于<<=1? |=和+=又怎样?

7.a. Tinkerbell计算机有一个硬件字节,可以将该字节读入程序。该字节包括下列信息:

 

 

含 义
0到1 1.4MB软盘驱动器数量
2 未使用
3到4 CD-ROM驱动器数量
5 未使用
6到7 硬盘驱动器数量

Tinkerbell和IBM PC一样从右向左填充结构位字段。创建一个适于存放该信息的位字段模板。

b. Klinkerbell与Tinkerbell类似,但它从左向右填充结构。请为Klinkerbell创建相应的位字段模板。