5. 逻辑XOR运算类似于加法,除了2个操作数都为1的情况,这时XOR运算的结果为0,而
加法
418 问题与练习答案
为10。(于是XOR运算可以被看作是没有进位的加法运算。)
6. 用掩码11011111进行AND运算,可以将小写改成大写。用00100000进行OR运算,可以
将大写改成小写。
7. a. 01001101 b. 11100001 c. 11101111
8. a. 57 b. B8 c. 6F d. 6A
9. 5
10. 用二进制补码为00110110,用浮点记数法为0101110。关键点是:由于位模式表示的不
同,用于值相加的过程也就不同。
11. 一个解如下:
12A7(将地址为7的存储单元的内容加载(LOAD)寄存器2。)
2380(将值80加载(LOAD)寄存器3。)
7023(将寄存器2和寄存器3进行OR运算,并将结果存入寄存器0。)
30A7(将寄存器0的内容存入(STORE)地址为A7的存储单元。)
C000(停止。)
12. 一个解如下:
15E0(将地址为E0的内容加载(LOAD)寄存器5。)
A502(将寄存器5的内容向右循环移动(ROTATE)2位。)
260F(将值0F加载(LOAD)寄存器6。)
8056(将寄存器5和寄存器6进行AND运算,并将结果存入寄存器0。)
30E1(将寄存器0的内容存入地址为E1的存储单元。)
C000(停止。)
2.5节
1. a. 37B5
b. 100万次
c. 不能。一个典型的文本页包含不超过4000个字符。因此,每分钟打印5页文本的能力表示,
其打印速率不超过每分钟20000个字符,这是远远低于每秒钟100万个字符的速率。(关键
点是,机器传输给打印机字符的速度要远远快于打印机能够打印的速度,因此,打印机需
要一种告知机器等待的方式。)
2. 该磁盘每秒钟要转50转,这就意味着在一秒钟之内,有800个扇区要通过读/写磁头。因
为每个扇区包含1024个字节,所以通过读/写磁头的二进制位速度大约为6.5 Mbit/s。因此,
如果控制器打算与磁盘中读取到的数据同步,那么控制器与磁盘驱动器之间的通信速度至
少要这么快。
3. 用ASCII码表示的300页的小说大概有2 MB,即16 000 000位。因此,如果要以54 Mbit/s
的速度传输整部小说,大约需要0.3 s。
2.6节
1. 该管道会包含指令B1B0(正在执行)、5002甚至B0AA。如果寄存器1中的值与寄存器0
中的值相等,那么就会执行向地址B0转移的指令。那么对于流水线中指令所做的努力则白
费了。另一方面,并没有浪费时间,因为对于这些指令所做的努力并没有花费额外的时间。
问题与练习答案 419
2. 如果不采取任何预防措施,那么在该程序的前面部分有机会对存储单元F8和F9进行修改
之前,这两个单元的信息已经作为指令被读取出来了。