计算机组成习题答案(清华大学出版社)

计算机组成习题答案(清华大学出版社)
计算机组成习题答案(清华大学出版社)

第 1 章习题答案

5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000

请回答下列问题:

(1)对于P1,哪台机器的速度快?快多少?对于P2呢?

(2)在M1上执行P1和P2的速度分别是多少MIPS?在M2上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少?

(3)假定M1和M2的时钟频率各是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数CPI各是多少?

(4)如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1还是M2?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进大批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2?为什么?

参考答案:

(1)对于P1,M2比M1快一倍;对于P2,M1比M2快一倍。

(2)对于M1,P1的速度为:200M/10=20MIPS;P2为300k/0.003=100MIPS。

对于M2,P1的速度为:150M/5=30MIPS;P2为420k/0.006=70MIPS。

从执行速度来看,对于P2,因为100/70=1.43倍,所以M1比M2快0.43倍。

(3)在M1上执行P1时的平均时钟周期数CPI为:10×800M/(200×106)=40。

在M2上执行P1时的平均时钟周期数CPI为:5×1.2G/(150×106)=40。

(4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。故性价比R为:

R=1/(执行时间×价格)

R越大说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。

因为10×5000 > 5×8000,所以,M2的性价比高。应选择M2。

(5)P1和P2需要同等考虑,性能有多种方式:执行时间总和、算术平均、几何平均。

若用算术平均方式,则:因为(10+0.003)/2×5000 > (5+0.006)/2×8000,所以M2的性价比高,应选择M2。

若用几何平均方式,则:因为sqrt(10×0.003) ×5000 < sqrt(5×0.006) ×8000,所以M1的性价比高,应选择M1。

6.若机器M1和M2具有相同的指令集,其时钟频率分别为1GHz和1.5GHz。在指令集中有五种不同类

请回答下列问题:

(1)M1和M2的峰值MIPS各是多少?

(2)假定某程序P的指令序列中,五类指令具有完全相同的指令条数,则程序P在M1和M2上运行时,哪台机器更快?快多少?在M1和M2上执行程序P时的平均时钟周期数CPI各是多少?

参考答案:

(1)M1上可以选择一段都是A类指令组成的程序,其峰值MIPS为1000MIPS。

M2上可以选择一段A和B类指令组成的程序,其峰值MIPS为1500/2=750MIPS。

(2)5类指令具有完全相同的指令条数,所以各占20%。

在M1和M2上执行程序P时的平均时钟周期数CPI分别为:

M1:20%×(1+2+2+3+4)= 0.2×12 = 2.4

M2:20%×(2+2+4+5+6)= 0.2×19 = 3.8

假设程序P的指令条数为N,则在M1和M2上的执行时间分别为:

M1:2.4× N×1/1G = 2.4N (ns)

M2:3.8×N×1/1.5G = 2.53 N (ns)

M1执行P的速度更快,每条指令平均快0.13ns,也即M1比M2快0.13/2.53×100%≈5%。

(思考:如果说程序P在M1上执行比M2上快(3.8–2.4)/3.8×100%= 36.8%,那么,这个结论显然是错误的。请问错在什么地方?)

7.假设同一套指令集用不同的方法设计了两种机器M1和M2。机器M1的时钟周期为0.8ns,机器M2的时钟周期为1.2ns。某个程序P在机器M1上运行时的CPI为4,在M2上的CPI为2。对于程序P 来说,哪台机器的执行速度更快?快多少?

参考答案:

假设程序P的指令条数为N,则在M1和M2上的执行时间分别为:

M1:4 N×0.8 = 3.2N (ns)

M2:2 N×1.2 = 2.4 N (ns)

所以,M2执行P的速度更快,每条指令平均快0.8ns,比M1快0.8/3.2×100%=25%。

8.假设某机器M的时钟频率为4GHz,用户程序P在M上的指令条数为8×109,其CPI为1.25,则P在M上的执行时间是多少?若在机器M上从程序P开始启动到执行结束所需的时间是4秒,则P占用的CPU时间的百分比是多少?

参考答案:

程序P在M上的执行时间为:1.25×8×109×1/4G = 2.5 s,从启动P执行开始到执行结束的总时间为4秒,其中2.5秒是P在CPU上真正的执行时间,其他时间可能执行操作系统程序或其他用户程序。

程序P占用的CPU时间的百分比为:2.5/4 = 62.5%。

9.假定某编译器对某段高级语言程序编译生成两种不同的指令序列S1和S2,在时钟频率为500MHz的机器M上运行,目标指令序列中用到的指令类型有A、B、C和D四类。四类指令在M上的CPI和

请问:S1和S2各有多少条指令?CPI各为多少?所含的时钟周期数各为多少?执行时间各为多少?

参考答案:

S1有10条指令,CPI为(5×1+2×2+2×3+1×4)/10=1.9, 所含的时钟周期数为10×1.9=19,执行时间为19/500M = 38ns。

S2有8条指令,CPI为(1×1+1×2+1×3+5×4)/8 =3.25, 所含的时钟周期数为8×3.25=26,执行时间为26/500M = 52ns。

(注:从上述结果来看,对于同一个高级语言源程序,在同一台机器上所生成的目标程序不同,其执行时间可能不同,而且,并不是指令条数少的目标程序执行时间就一定少。)

10.假定机器M的时钟频率为1.2GHz,某程序P在机器M上的执行时间为12秒钟。对P优化时,将其所有的乘4指令都换成了一条左移2位的指令,得到优化后的程序P?。已知在M上乘法指令的CPI 为5,左移指令的CPI为2,P的执行时间是P?执行时间的1.2倍,则P中有多少条乘法指令被替换成了左移指令被执行?

参考答案:

显然,P?的执行时间为10秒,因此,P比P?多花了2秒钟,因此,执行时被换成左移指令的乘法指令的条数为1.2G×2/(5–2) = 800M。

第二章习题答案

3.实现下列各数的转换。

(1)(25.8125)10= (?)2= (?) 8= (?) 16

(2)(101101.011)2 = (?)10= (?) 8= (?) 16= (?) 8421

(3)(0101 1001 0110.0011)8421 = (?)10= (?) 2= (?) 16

(4)(4E.C)16= (?)10= (?) 2

参考答案:

(1) (25.8125)10= (1 1001.1101)2= (31.64) 8= (19.D) 16

(2)(101101.011)2 = (45.375)10= (55.3) 8= (2D.6) 16= (0100 0101.0011 0111 0101) 8421

(3)(0101 1001 0110.0011)8421 = (596.3)10= (1001010100.01001100110011…) 2= (254.4CCC…) 16

(4)(4E.C)16 = (78.75)10= (0100 1110.11) 2

4.假定机器数为8位(1位符号,7位数值),写出下列各二进制数的原码和补码表示。

+0.1001,–0.1001,+1.0,–1.0,+0.010100,–0.010100,+0,–0

参考答案:

原码补码

+0.1001:0.1001000 0.1001000

–0.1001: 1.1001000 1.0111000

+1.0:溢出溢出

–1.0:溢出 1.0000000

+0.010100:0.0101000 0.0101000

–0.010100: 1.0101000 1.1011000

+0:0.0000000 0.0000000

–0: 1.0000000 0.0000000

5.假定机器数为8位(1位符号,7位数值),写出下列各二进制数的补码和移码表示。

+1001,–1001,+1,–1,+10100,–10100,+0,–0

参考答案:

移码补码

+1001:10001001 00001001

–1001:01110111 11110111

+1:10000001 00000001

–1:011111111 11111111

+10100:10010100 00010100

–10100:01101100 11101100

+0:10000000 00000000

–0:10000000 00000000

6.已知[x]补,求x

(1)[x]补=1.1100111 (2)[x]补=10000000

(3)[x]补=0.1010010 (4)[x]补=11010011

参考答案:

(1)[x]补=1.1100111 x = –0.0011001B

(2)[x]补=10000000 x = –10000000B = –128

(3)[x]补=0.1010010 x = +0.101001B

(4)[x]补=11010011 x = – 101101B = – 45

7.假定一台32位字长的机器中带符号整数用补码表示,浮点数用IEEE 754标准表示,寄存器R1和R2的内容分别为R1:0000108BH,R2:8080108BH。不同指令对寄存器进行不同的操作,因而,不同指令执行时寄存器内容对应的真值不同。假定执行下列运算指令时,操作数为寄存器R1和R2的内容,则R1和R2中操作数的真值分别为多少?

(1)无符号数加法指令

(2)带符号整数乘法指令

(3)单精度浮点数减法指令

参考答案:

R1 = 0000108BH = 0000 0000 0000 0000 0001 0000 1000 1011b

R2 = 8080108BH = 1000 0000 1000 0000 0001 0000 1000 1011b

(1)对于无符号数加法指令,R1和R2中是操作数的无符号数表示,因此,其真值分别为R1:108BH, R2:8080108BH。

(2)对于带符号整数乘法指令,R1和R2中是操作数的带符号整数补码表示,由最高位可知,R1为正数,R2为负数。R1的真值为+108BH, R2的真值为–(0111 1111 0111 1111 1110 1111 0111 0100b + 1b) = –7F7FEF75H。

(3)对于单精度浮点数减法指令,R1和R2中是操作数的IEEE754单精度浮点数表示。在IEEE 754 标准中,单精度浮点数的位数为32位,其中包含1位符号位,8位阶码,23位尾数。

由R1中的内容可知,其符号位为0,表示其为正数,阶码为0000 0000,尾数部分为000 0000 0001 0000 1000 1011,故其为非规格化浮点数,指数为–126,尾数中没有隐藏的1,用十六进制表示尾数为+0.002116H,故R1表示的真值为+0.002116H× 10-126。

由R2中的内容可知,其符号位为1,表示其为负数,阶码为0000 0001,尾数部分为000 0000 0001 0000 1000 1011,故其为规格化浮点数,指数为1–127 = –126,尾数中有隐藏的1,用十六进制表示尾数为–1.002116H,故R2表示的真值为–1.002116H× 10-126

8.假定机器M的字长为32位,用补码表示带符号整数。下表第一列给出了在机器M上执行的C语言

程序中的关系表达式,请参照已有的表栏内容完成表中后三栏内容的填写。

9.以下是一个C 语言程序,用来计算一个数组a 中每个元素的和。当参数len 为0时,返回值应该是0,

但是在机器上执行时,却发生了存储器访问异常。请问这是什么原因造成的,并说明程序应该如何修改。 1 float sum_elements(float a[], unsigned len) 2 { 3 int i; 4

float result = 0; 5 6 for (i = 0; i <= len –1; i++) 7 result += a[i]; 8 return result; 9 }

参考答案:

参数len 的类型是unsigned ,所以,当len=0时,执行len-1的结果为11…1,是最大可表示的无符号数,因而,任何无符号数都比它小,使得循环体被不断执行,引起数组元素的访问越界,发生存储器访问异常。 只要将len 声明为int 型,或循环的测试条件改为i

10. 设某浮点数格式为:

其中,移码的偏置常数为16,补码采用一位符号位,基数为4。 (1) 用这种格式表示下列十进制数:+1.7,–0.12,+19,–1/8。

(2) 写出该格式浮点数的表示范围,并与12位定点补码整数表示范围比较。 参考答案:(假定采用0舍1入法进行舍入) (1) +1.7 = +1.1011001B = 0.011011B× 41, 故阶码为1 +16 = 17 = 10001B, 尾数为+0.011011的补码,

即0.011011,所以+1.7表示为0 10001 011011。 –0.12 = – 0.000111101B = – 0.011111B × 4–1, 故阶码为–1 + 16 =15 = 01111B, 尾数为– 0.011111

的补码,即1.100001, 所以–0.12表示为1 01111 100001。 +19 = +10011B = 0.010011B× 43,故阶码为3 + 16 = 19 = 10011B, 尾数为0.010011,所以+19表

示为0 10011 010011。

–1/8 = – 0.125 = – 0.001B = – 0.100000 × 4–1,阶码为–1 + 16 = 15 = 01111B,尾数为– 0.100000的补码,即1.100000,所以–1/8表示为1 01111 100000。

(2)该格式浮点数表示的范围如下。

正数最大值:0.111111B × 411111,即:0.333× 415 (≈230≈109)

正数最小值:0.000001B × 400000,即:0.001× 4–16 (≈2–34≈10–10)

负数最大值:–0.000001B × 400000,即:–0.001× 4–16

负数最小值:–1.000000B × 411111,即:–1.000× 415

因此,该格式浮点数的数量级在10–10~109之间。

12位定点补码整数的表示范围为:–211~+(211–1),即:–2048~2047

由此可见,定点数和浮点数的表示范围相差非常大。

11. 下列几种情况所能表示的数的范围是什么?

(1)16位无符号整数

(2)16位原码定点小数

(3)16位补码定点小数

(4)16位补码定点整数

(5)下述格式的浮点数(基数为2,移码的偏置常数为128)

1位8位移码7位原码

参考答案:

(1)无符号整数:0~216–1。

(2)原码定点小数:–(1–2–15)~+(1–2–15)。

(3)补码定点小数:–1~+(1–2–15)。

(4)补码定点整数:–32768~+32767。

(5)浮点数:负数:–(1–2–7)×2+127~–2–7×2–128。

正数:+2–135~(1–2–7) ×2+127。

12. 以IEEE754单精度浮点数格式表示下列十进制数。

+1.75,+19,–1/8,258

参考答案:

+1.75 = +1.11B = 1.11B × 20, 故阶码为0+127=01111111B, 数符为0,尾数为1.110…0,小数点前为隐藏位,所以+1.7表示为0 01111111 110 0000 0000 0000 0000 0000,用十六进制表示为3FE00000H。

+19 = +10011B = +1.0011B × 24,故阶码为4+127 = 10000011B, 数符为0,尾数为1.00110…0,所以+19表示为0 10000011 001 1000 0000 0000 0000 0000,用十六进制表示为41980000H。

–1/8 = – 0.125 = – 0.001B = – 1.0 × 2–3,阶码为–3+127 = 01111100B,数符为1,尾数为1.0…0,所以–1/8表示为1 01111100 000 0000 0000 0000 0000 0000,用十六进制表示为BE000000H。

258=100000010B=1.0000001B × 28, 故阶码为8+127=10000111B, 数符为0,尾数为1.0000001,所以258表示为0 10000111 000 0001 0000 0000 0000 0000,用十六进制表示为43810000H。

13.设一个变量的值为4098,要求分别用32位补码整数和IEEE 754单精度浮点格式表示该变量(结果用十六进制表示),并说明哪段二进制序列在两种表示中完全相同,为什么会相同?

参考答案:

4098 = +1 0000 0000 0010B = +1. 0000 0000 001 × 212

32位2-补码形式为:0000 0000 0000 0000 00010000 0000 0010(00001002H)

IEEE754单精度格式为:0 100010110000 0000 0010 0000 0000 000 (45801000H)

粗体部分为除隐藏位外的有效数字,因此,在两种表示中是相同的序列。

14.设一个变量的值为–2147483647,要求分别用32位补码整数和IEEE754单精度浮点格式表示该变量(结果用十六进制表示),并说明哪种表示其值完全精确,哪种表示的是近似值。

参考答案:

–2147483647 = –111 1111 1111 1111 1111 1111 1111 1111B

= –1.11 1111 1111 1111 1111 1111 1111 1111 × 230

32位2-补码形式为:1000 0000 0000 0000 0000 0000 0000 0001 (80000001H)

IEEE 754单精度格式为:1 10011101 1111 1111 1111 1111 1111 111 (CEFFFFFFH)

32位2-补码形式能表示精确的值,而浮点数表示的是近似值,低位被截断

15.下表给出了有关IEEE 754浮点格式表示中一些重要数据的取值,表中已经有最大规格化数的相应内

16.已知下列字符编码:A=100 0001,a=110 0001,0=011 0000,求E、e、f、7、G、Z、5的7位ACSII 码和第一位前加入奇校验位后的8位编码。

参考答案:

E的ASCII码为…A? + (…E?–…A?) = 100 0001 + 100 = 100 0101, 奇校验位P = 0,第一位前加入奇校验位后的8位编码是0 100 0101。

e的ASCII码为‘a’+ (…e?–…a?) = 110 0001 + 100 = 110 0101,奇校验位P = 1, 第一位前加入奇校验位后的8位编码是1 110 0101。

f的ASCII码为‘a’+ (…f?–…a?) = 110 0001 + 101 = 110 0110, 奇校验位P = 1, 第一位前加入奇校验位后的8位编码是 1 110 0110。

7的ASCII码为‘0’+ (7 - 0) = 011 0000 + 111 = 011 0111,奇校验位P = 0, 第一位前加入奇校验位后的8位编码是0 011 0111。

G的ASCII码为‘A’+ (…G?–…A?) = 100 0001 + 0110 = 100 0111, 奇校验位P = 1, 第一位前加入奇校验位后的8位编码是1 100 0111。

Z的ASCII码为‘A’+(…Z?–…A?) = 100 0001 + 11001 = 101 1010, 奇校验位P = 1, 第一位前加入奇校验位后的8位编码是1 101 1010。

5的ASCII码为‘0’+(5 – 0) = 011 0000 + 101 = 011 0101,奇校验位P = 1, 第一位前加入奇校验位后的8位编码是1 011 0101。

17.假定在一个程序中定义了变量x、y和i,其中,x和y是float型变量(用IEEE754单精度浮点数表示),i是16位short型变量(用补码表示)。程序执行到某一时刻,x= –0.125、y=7.5、i=100,它们都被写到了主存(按字节编址),其地址分别是100,108和112。请分别画出在大端机器和小端机器上变量x、y和i在内存的存放位置。

参考答案:

–0.125 = –0.001B = –1.0 ×2-3

x在机器内部的机器数为:1 01111100 00…0 (BE00 0000H)

7.5= +111.1B= +1.111×22

y在机器内部的机器数为:0 10000001 11100…0 (40F0 0000H)

100=64+32+4=1100100B

i在机器内部表示的机器数为:0000 0000 0110 0100(0064H)

大端机小端机

地址内容内容

100 BEH 00H

101 00H 00H

102 00H 00H

103 00H BEH

108 40H 00H

109 F0H 00H

110 00H F0H

111 00H 40H

112 00H 64H

113 64H 00H

18.假定某计算机的总线采用奇校验,每8位数据有一位校验位,若在32位数据线上传输的信息是8F 3C AB 96H,则对应的4个校验位应为什么?若接受方收到的数据信息和校验位分别为87 3C AB 96H和0101B,则说明发生了什么情况,并给出验证过程。

参考答案:

传输信息8F 3C AB 96H展开为1000 1111 0011 1100 1010 1011 1001 0110,每8位有一个奇校验位,因此,总线上发送方送出的4个校验位应该分别为0、1、0、1。

接受方的数据信息为87 3C AB 96H,展开后为1000 0111 0011 1100 1010 1011 1001 0110;接收到的校验位分别为0、1、0、1。在接受方进行校验判断如下:

根据接收到的数据信息计算出4个奇校验位分别为1、1、0、1,将该4位校验位分别和接收到的4位校验位进行异或,得到1、0、0、0,说明数据信息的第一个字节发生传输错误。对照传输前、后的数据信息,第一字节8FH变成了87H,说明确实发生了传输错误,验证正确。

19.写出16位数据的SEC码。假定数据为0101 0001 0100 0110,说明SEC码如何正确检测数据位5的错误。

参考答案:

对于16位数据,可以如下插入校验位:

M16M15M14M13M12P5M11M10M9M8M7M6M5P4M4M3M2P3M1P2P1

其中M i是原信息数据,P i是加入的校验位,对于各个校验位的值可以如下计算

P1 = M1⊕M2⊕M3⊕M4⊕M5⊕M7⊕M9⊕M11⊕M12⊕M14⊕M16= 1

P2 = M1⊕M3⊕M4⊕M6⊕M7⊕M10⊕M11⊕M13⊕M14= 1

P3 = M2⊕M3⊕M4⊕M8⊕M9⊕M10⊕M11⊕M15⊕M16= 0

P4 = M5⊕M6⊕M7⊕M8⊕M9⊕M10⊕M11= 0

P5 = M12⊕M13⊕M14⊕M15⊕M16= 0

所以此时P5 P4 P3 P2 P1 = 00011,第五位数据出错时,数据字变为:0101 0001 0101 0110,P5?P4?P3?P2?P1?= 01010,故障字= 00011⊕01010 = 01001,说明码字第9位出错,即M5出错。

20.假设要传送的数据信息为:100011,若约定的生成多项式为:G(x)= x3+1,则校验码为多少?假定在接收端接收到的数据信息为100010,说明如何正确检测其错误,写出检测过程。

参考答案:

原数据信息为100011,对应的报文多项式为M(x) = x5 + x + 1, 生成多项式的位数为4位,所以在原数据信息后面添加3个0,变为M?(x) = x3M(x) = x8 + x4 + x3, 用M(x)去模2除G(x),得到的余数为111,所以得到CRC码为100011 111。

检测时,用接收到的CRC码去模2除生成多项式1001,若得到的余数为0,则表明正确,否则说明传输时发生了错误。此题中接收到的CRC码为100010 111(即数据100010加检验位111),显然,用100010 111 模2除1001,得到余数为001,不为0,说明传输时发生错误。

第 3 章习题答案

2(4)高级语言中的运算和机器语言(即指令)中的运算是什么关系?假定某一个高级语言源程序P中有乘、除运算,但机器M中不提供乘、除运算指令,则程序P能否在机器M上运行?为什么?

参考答案:(略)

3.考虑以下C语言程序代码:

int func1(unsigned word)

{

return (int) (( word <<24) >> 24);

}

int func2(unsigned word)

{

return ( (int) word <<24 ) >> 24;

}

假设在一个32位机器上执行这些函数,该机器使用二进制补码表示带符号整数。无符号数采用逻辑移位,带符号整数采用算术移位。请填写下表,并说明函数func1和func2的功能。

函数func1的功能是把无符号数高24位清零(左移24位再逻辑右移24位),结果一定是正的有符号数;而函数func2的功能是把无符号数的高24位都变成和第25位一样,因为左移24位后进行算术右移,高24位补符号位(即第25位)。

4

5.以下是两段C语言代码,函数arith( )是直接用C语言写的,而optarith( )是对arith( )函数以某个确定的M和N编译生成的机器代码反编译生成的。根据optarith( ),可以推断函数arith( ) 中M和N 的值各是多少?

#define M

#define N

int arith (int x, int y)

{

int result = 0 ;

result = x*M + y/N;

return result;

}

int optarith ( int x, int y)

{

int t = x;

x << = 4;

x - = t;

if ( y < 0 ) y += 3;

y>>2;

return x+y;

参考答案:

可以看出x*M和“int t = x; x << = 4; x-=t;”三句对应,这些语句实现了x乘15的功能(左移4位相当于乘以16,然后再减1),因此,M等于15;

y/N与“if ( y < 0 ) y += 3; y>>2;”两句对应,功能主要由第二句“y右移2位”实现,它实现了y除以4的功能,因此N是4。而第一句“if ( y < 0 ) y += 3;”主要用于对y=–1时进行调整,若不调整,则–1>>2=–1而–1/4=0,两者不等;调整后–1+3=2,2>>2=0,两者相等。

思考:能否把if ( y < 0 ) y += 3; 改成if ( y < 0 ) y += 2; ?

不能!因为y = - 4时不正确。

6.设A4~A1和B4~B1分别是四位加法器的两组输入,C0为低位来的进位。当加法器分别采用串行进位和先行进位时,写出四个进位C4~C1的逻辑表达式。

参考答案:

串行进位:

C1 = X1C0+Y1C0 + X1 Y1

C2 = X2C1+Y2C1 + X2 Y2

C3 = X3C2+Y3C2 + X3 Y3

C4 = X4C3+Y4C3 + X4 Y4

并行进位:

C1 =X1Y1 + (X1+Y1)C0

C2=X2Y2+(X2+Y2)X1Y1+ (X2+Y2)(X1+Y1)C0

C3=X3Y3+(X3+Y3)X2Y2+(X3+Y3) (X2+Y2)X1Y1+(X3+Y3) (X2+Y2)(X1+Y1)C0

C4=X4Y4+(X4+Y4)X3Y3+(X4+Y4)(X3+Y3)X2Y2+(X4+Y4)(X3+Y3)(X2+Y2)X1Y1+(X4+Y4)(X3+Y3)

(X2+Y2)(X1+Y1)C0

7.用SN74181和SN74182器件设计一个16位先行进位补码加/减运算器,画出运算器的逻辑框图,并给出零标志、进位标志、溢出标志、符号标志的生成电路。

参考答案(图略):

逻辑框图参见教材中的图3.15和图3.16,将两个图结合起来即可,也即只要将图3.15中的B输入端的每一位B i取反,得到B i,和原码B i一起送到一个二路选择器,由进位C0作为选择控制信号。当C0为1时做减法,此时,选择将B i作为SN74181的B输入端;否则,当C0为1时,做加法。

零标志ZF、进位标志CF、溢出标志OF、符号标志SF的逻辑电路根据以下逻辑表达式画出即可。

ZF=F15+F14+F13+F12+F11+F10+F9+F8+F7+F6+F5+F4+F3+F2+F1+F0

CF=C16

OF= C0(A15B15F15 + A15B15F15)+ C0(A15B15F15 + A15B15F15)

SF= F15

8.用SN74181和SN74182器件设计一个32位的ALU,要求采用两级先行进位结构。

(1)写出所需的SN74181和SN74182芯片数。

(2)画出32位ALU的逻辑结构图。

参考答案(图略):

将如图3.15所示的两个16位ALU级联起来即可,级联时,低16位ALU的高位进位C16作为高16位ALU的低位进位C0,因此,只要用8片SN74181和2片SN74182。

9.已知x= 10,y= –6,采用6位机器数表示。请按如下要求计算,并把结果还原成真值。

(1)求[x+y]补,[x–y]补。

(2)用原码一位乘法计算[x×y]原。

(3)用MBA(基4布斯)乘法计算[x×y]补。

(4)用不恢复余数法计算[x/y]原的商和余数。

(5)用不恢复余数法计算[x/y]补的商和余数。

参考答案:

[10]补= 001010 [–6]补= 111010 [6]补= 000110 [10]原= 001010 [–6]原= 100110

(1)[10+(–6)]补= [10]补+[– 6]补= 001010+111010 = 000100 (+4)

[10–(–6)]补= [10]补+[– (–6)]补= 001010+000110 = 010000 (+16)

(2)先采用无符号数乘法计算001010× 000110的乘积,原码一位乘法过程(前面两个0省略)如下:

C P Y 说明

0 0000 0 1 1 0 P0=0

+ 0 0 0 0 y4= 0,+0

0 0 0 0 0 C,P 和Y同时右移一位

0 0 0 0 0 00 1 1 得P1

+ 1 0 1 0 y3=1,+X

01 0 1 0 C,P 和Y同时右移一位

0 0 1 0 1 0 00 1得P2

+ 1 0 1 0y2= 1,+X

0 1 1 1 1 0 00 0 C,P 和Y同时右移一位

0 01 1 11 0 00得P3

+ 0 0 0 0y1= 0,+0

0 0 1 1 1 C,P 和Y同时右移一位

0 0 0 1 111 0 0得P4

若两个6位数相乘的话,则还要右移两次,得000000 111100

符号位为:0⊕1 = 1,因此,[X×Y]原= 1000 0011 1100

即X × Y = –11 1100B = –60

(3)[–10]补= 110110,布斯乘法过程如下:

P Y y-1说明

0 0 0000 1 110 1 00 设y-1 =0,[P0]补=0

y0 y-1 =00,P、Y直接右移一位

0 0 0000 0 1 11 0 1 0 得[P1]补

+ 1 1 0 110y1 y0 =10,+[–X]补

1 1 0 110 P、Y同时右移一位

1 1 1 011 00 1 1 1 0 1 得[P2]补

+ 0 0 1 010y2 y1 =01,+[X]补

0 0 0 1 01 P、Y同时右移一位

0 0 0 0 1 01 0 0 1 1 1 0得[P3]补

+1101 1 0 1 0 0 1 1 1 0y3 y2 =10,+[–X]补

11 1 0 0 0P、Y同时右移一位

111 1 0 0 0 1 0 01 1 1得[P4]补

+ 0 0 0 00 00 1 0 0 1 11y4 y3 =11,+0

111 1 0 0P、Y同时右移一位

111 1 1 0 0 0 1 00 1 1得[P5]补

+ 0 0 0 00 00 0 10 0 1 1y5 y4 =11,+0

111 1 1 0P、Y同时右移一位

111 1 1 1 0 0 0 10 0 1得[P6]补

因此,[X × Y]补=1111 1100 0100,即X × Y = –11 1100B= –60

(4)因为除法计算是2n位数除n位数,所以[6]原=0110,[10]原=0000 1010,[–6]补=1010,商的符号位:0⊕1=1,运算过程(前面两个0省略)如下:

余数寄存器R余数/商寄存器Q说明

原0100。

(5)将10和–6分别表示成补码形式为:[10]补= 0 1010 , [–6]补= 1 1010,计算过程如下:先对被除数进行符号扩展,[10]补=00000 01010,[6]补= 0 0110

余数寄存器R余数/商寄存器Q说明

0 0 00 0 0 1 0 1 0 开始R0=[X]

+ 1 10 10 R1=[X]+[Y]

1 10 1 00 1 0 1 0 R1与[Y]同号,则q5 =1

1 0 1 0 01 0 101 2R1(R和Q同时左移,空出一位上商1)

+0 0 1 1 0 R2 =2R1+[–Y]

11 0 1 01 0 10 1 R2与[Y]同号,则q4= 1,

1 0 1 0 10 1 0 1 1 2R2(R和Q同时左移,空出一位上商1)

+ 0 0 1 1 0 R3 =2R2+[-Y]

1 1 0 1 10 10 1 1 R3与[Y]同号,则q3 = 1

1 0 1 1 01 0 1 1 1 2R3(R和Q同时左移,空出一位上商1)

+ 00 1 1 0 R4=2R3+[–Y]

11 1 0 010 1 1 1 R4与[Y]同号,则q 2 = 1

11 0 0 10 1 1 1 1 2R4(R和Q同时左移,空出一位上商0)

+ 00 1 1 0 R5=2R4+[-Y]

11 1 1 1 0 1 1 1 1 R5与[Y]同号,则q1= 1,

11 1 1 01 1 1 11 2R5(R和Q同时左移,空出一位上商1)

+ 00 1 1 0 R6=2R5 +[–Y]

00 1 0 0 1 1 1 1 0 R6与[Y]异号,则q0 = 0,Q左移,空出一位上商1

+ 00 0 0 0+1 商为负数,末位加1;余数不需要修正

0 0 1 0 0 1 1 1 1 1

所以,[X/Y]补=11111,余数为00100。

即:X/Y= – 0001B = – 1,余数为0100B = 4

将各数代入公式“除数×商+余数= 被除数”进行验证,得:(–6)×(–1) +4= 10。

10.若一次加法需要1ns,一次移位需要0.5ns。请分别计算用一位乘法、两位乘法、基于CRA的阵列乘法、基于CSA的阵列乘法四种方式计算两个8位无符号二进制数乘积时所需的时间。

参考答案:

一位乘法:8次右移,8次加法,共计12ns;

二位乘法:4次右移,4次加法,共计6ns;

基于CRA的阵列乘法:每一级部分积不仅依赖于上一级部分积,还依赖于上一级最终的进位,而每一级进位又是串行进行的,所以最长的路径总共经过了8+2×(8–1)=22次全加器,共计约22ns;

基于CSA的阵列乘法:本级进位和本级和同时传送到下一级,同级部分积之间不相互依赖,只进行O(N)次加法运算,因此,共计约8ns。

11.在IEEE 754浮点数运算中,当结果的尾数出现什么形式时需要进行左规,什么形式时需要进行右规?

如何进行左规,如何进行右规?

参考答案:

(1)对于结果为±1x.xx……x的情况,需要进行右规。右规时,尾数右移一位,阶码加1。右规操作可

以表示为:M b←M b ×2 -1,E b←E b+1。右规时注意以下两点:

a)尾数右移时,最高位“1”被移到小数点前一位作为隐藏位,最后一位移出时,要考虑舍入。

b)阶码加1时,直接在末位加1。

(2)对于结果为±0.00……01x……x的情况,需要进行左规。左规时,数值位逐次左移,阶码逐次减1,

直到将第一位“1”移到小数点左边。假定k为结果中“±”和左边第一个1之间连续0的个数,则左规操作可以表示为:M b←M b ×2k,E b←E b–k。左规时注意以下两点:

a) 尾数左移时数值部分最左k个0被移出,因此,相对来说,小数点右移了k位。因为进行尾数相

加时,默认小数点位置在第一个数值位(即:隐藏位)之后,所以小数点右移k位后被移到了第一位1后面,这个1就是隐藏位。

b) 执行E b←E b–k时,每次都在末位减1,一共减k次。

12.在IEEE 754浮点数运算中,如何判断浮点运算的结果是否溢出?

参考答案:

浮点运算结果是否溢出,并不以尾数溢出来判断,而主要看阶码是否溢出。尾数溢出时,可通过右规操作进行纠正。阶码上溢时,说明结果的数值太大,无法表示;阶码下溢时,说明结果数值太小,可以把结果近似为0。

在进行对阶、规格化、舍入和浮点数的乘/除运算等过程中,都需要对阶码进行加、减运算,可能会发生阶码上溢或阶码下溢,因此,必须对阶码进行溢出判断。

(有关对阶码进行溢出判断的方法可参见教材中相关章节。)

13.假设浮点数格式为:阶码是4位移码,偏置常数为8,尾数是6位补码(采用双符号位),用浮点运算规则分别计算在不采用任何附加位和采用2位附加位(保护位、舍入位)两种情况下的值。(假定对阶和右规时采用就近舍入到偶数方式)

(1)(15/16) ×27+(2/16) ×25(2)(15/16) ×27–(2/16) ×25

(3)(15/16) ×25+(2/16) ×27(4)(15/16) ×25–(2/16) ×27

参考答案(假定采用隐藏位):

X= (15/16) ×27=0.111100B ×27=(1.111000)2×26

Y1= (2/16) ×25=0.001000B×25=(1.000000)2×22

Y2= (–2/16) ×25=–0.001000B×25=(–1.000000)2×22

K= (15/16) ×25=0.111100B ×25=(1.111000)2×24

J1= (2/16) ×27=0.001000B ×27=(1.000000)2×24

J2= (–2/16) ×27=–0.001000B ×27=(–1.000000)2×24

根据题目所给的各种位数,可以得到在机器中表示为:

[X]浮= 00 1110 (1)111000 [Y1]浮= 00 1010 (1)000000 [Y2]浮= 11 1010 (1)000000

[K]浮= 00 1100 (1)111000 [J1]浮= 00 1100 (1)000000 [J2]浮= 11 1100 (1)000000

所以,E x= 1110,M x= 00 (1). 111000,E y1 = 1010,M y= 00(1).000000,E y2 = 1010,M y= 11(1).000000

E k= 1100,M K = 00 (1). 111000,E J1 = 1100,M J1 = 00(1).000000,E J2 = 1100,M J2 = 11(1).000000

尾数M中小数点前面有三位,前两位为数符,表示双符号,第三位加了括号,是隐藏位“1”。

没有附加位时的计算:

(1)X+Y1

[ΔE]补= [E x]移+ [–[E y1]移]补(mod 2n) = 1110 + 0110 = 0100

ΔE = 4,根据对阶规则可知需要对y1进行对阶,结果为:E y1 = E x= 1110,M y 1=000.000100

尾数相加:M b = M x+ M y1 = 001. 111000+ 000.000100 = 001.111100,两位符号相等,数值部分最高位为1,不需要进行规格化,所以最后结果为:E=1110,M=00(1).111100, 即(31/32) ×27

(2)X+Y2

[ΔE]补= [E x]移+ [–[E y2]移]补(mod 2n) = 1110 + 0110 = 0100;

ΔE = 4,根据对阶规则可知需要对y2进行对阶,结果为:E y2 = E x= 1110,M y2=111.111100

尾数相加:M b = M x+ M y2 = 001. 111000+ 111.111100=001.110100,两位符号相等,数值部分最高为1,不需要进行规格化,所以最后结果为:E=1110,M=00(1).110100, 即(29/32) ×27

(3)K+J1

[ΔE]补= [E K]移+ [–[E J1]移]补(mod 2n) = 1100 + 0100 = 0000;

ΔE = 0,根据对阶规则可知不需要进行对阶。

尾数相加:M b = M K+ M J1 = 001. 111000+ 001.000000= 010.111000,两位符号不等,说明尾数溢出,需要进行右规,最后结果为:E=1101,M=00(1).011100, 即(23/32) ×26

(4)K+J2

[ΔE]补= [E K]移+ [–[E J2]移]补(mod 2n) = 1100 + 0100 = 0000;

ΔE = 0,根据对阶规则可知不需要进行对阶。

尾数相加:M b = M K+ M J2 = 00 1. 111000+ 111.000000 = 000.111000,两位符号相等,数值部分最高位为0,需要进行左规,所以最后结果为:E=1011,M=00(1).110000, 即(7/8) ×24

如果有两位附加位精度上会有提高,在对阶的时候要注意小数点后就不是6位,而是8位,最后两位为保护位和舍入位。但是由于本题6位尾数已经足够,再加2位附加位,其结果是一样的。

14.采用IEEE 754单精度浮点数格式计算下列表达式的值。

(1)0.75+(–65.25)(2)0.75–(–65.25)

参考答案:

x=0.75=0.110...0B =(1.10...0)2×2-1

y=–65.25 =– 1000001.01000...0B =(–1.00000101...0) 2×26

用IEEE 754标准单精度格式表示为:

[x]浮= 0 01111110 10...0 [y]浮= 1 10000101 000001010 0

所以,E x= 01111110,M x= 0 (1). 1...0,E y = 10000101,M y= 1(1).000001010 0

尾数M x和M y中小数点前面有两位,第一位为数符,第二位加了括号,是隐藏位“1”。

以下是计算机中进行浮点数加减运算的过程(假定保留2位附加位:保护位和舍入位)

(1)0.75+ (–65.25)

①对阶:[ΔE]补= [E x]移+ [–[E y]移]补(mod 2n) = 0111 1110 + 0111 1011 = 1111 1001

ΔE = –7,根据对阶规则可知需要对x进行对阶,结果为:E x =E y= 10000101,M x =00.000000110 (000)

x的尾数M x右移7位,符号不变,数值高位补0,隐藏位右移到小数点后面,最后移出的2位保留

②尾数相加:M b = M x+ M y= 00.000000110...000+ 11.000001010 ...000 (注意小数点在隐藏位后)

根据原码加/减法运算规则,得:00.000000110...000+ 11.000001010...000 = 11.000000100 (000)

上式尾数中最左边第一位是符号位,其余都是数值部分,尾数后面两位是附加位(加粗)。

③规格化:根据所得尾数的形式,数值部分最高位为1,所以不需要进行规格化。

④舍入:把结果的尾数M b中最后两位附加位舍入掉,从本例来看,不管采用什么舍入法,结果都一样,

都是把最后两个0去掉,得:M b= 11.000000100 0

⑤溢出判断:在上述阶码计算和调整过程中,没有发生“阶码上溢”和“阶码下溢”的问题。因此,阶

码E b= 10000101。

最后结果为E b= 10000101,M b= 1(1).00000010…0,即:–64.5。

(2)0.75–(–65.25)

①对阶:[ΔE]补= [E x]移+ [–[E y]移]补(mod 2n) = 0111 1110 + 0111 1011 = 1111 1001

ΔE = -7,根据对阶规则可知需要对x进行对阶,结果为:E x =E y= 10000110,M x =00.000000110 (000)

x的尾数M x右移一位,符号不变,数值高位补0,隐藏位右移到小数点后面,最后移出的位保留

②尾数相加:M b = M x–M y= 00.000000110...000 – 11.000001010...000 (注意小数点在隐藏位后)

根据原码加/减法运算规则,得:00.000000110...000– 11.000001010...000=01.00001000 (000)

上式尾数中最左边第一位是符号位,其余都是数值部分,尾数后面两位是附加位(加粗)。

③规格化:根据所得尾数的形式,数值部分最高位为1,不需要进行规格化。

④舍入:把结果的尾数M b中最后两位附加位舍入掉,从本例来看,不管采用什么舍入法,结果都一样,

都是把最后两个0去掉,得:M b= 01.00001000 0

⑤溢出判断:在上述阶码计算和调整过程中,没有发生“阶码上溢”和“阶码下溢”的问题。因此,阶

码E b= 10000101。

最后结果为E b = 10000101,M b= 0(1).00001000…0,即:+66。

思考题:对阶时发生什么情况,就可以不再继续进行计算?

15.假定十进制数用8421 NBCD码表示,采用十进制加法运算计算下列表达式的值,并讨论在十进制BCD码加法运算中如何判断溢出。

(1)234+567 (2)548+729

参考答案:

(1)234+567

001000110100

+ 0101 01100111

0111 10011011

结果为:(801)10

(2)548+729

0000 010*********

结果为:(1277)10

在第(2)题中,如果是采用12位数表示加数548和729,则能看出最后得到的答案是1100 0111

0111,这时就是BCD码加法溢出了。所以我们在判断的时候不能仅仅看BCD码最高位是不是丢失,而要看结果的最高4位是不是大于9,如果大于9,就可以认为是溢出了。

16.假定十进制数用8421 NBCD码表示,十进制运算673–356可以采用673加上(–356)的模10补码实现。

画出实现上述操作的3位十进制数的BCD码减法运算线路,列出线路中所有的输入变量和输出变量。

参考答案:

[– (356) 10]补= 0110 0100 0100

011001110011

+ 0110 01000100

110010110111

最高位产生进位,因此,结果为正数:0011 0001 0111,故结果为:(+317)10

电路图分为两部分,一个是求出模10补码,另一个是计算以及判断输出结果的电路图(参见教材图

3.33)。

求模10补码的电路图(RTL级)如下:

计算电路图(RTL级)如下:

第 4 章习题答案

3. 已知某机主存空间大小为64KB ,按字节编址。要求: (1)若用1K×4位的SRAM 芯片构成该主存储器,需要多少个芯片? (2)主存地址共多少位?几位用于选片?几位用于片内选址? (3)画出该存储器的逻辑框图。 参考答案: (1)64KB / 1K×4位 = 64×2 = 128片。

(2)因为是按字节编址,所以主存地址共16位,6位选片,10位片内选址。

(3)显然,位方向上扩展了2倍,字方向扩展了64倍。下图中片选信号CS 为高电平有效。

A 15

A 10A 9

A 0

D 0

D 7

WE

4. 用64K×1位的DRAM 芯片构成256K×8位的存储器。要求: (1)计算所需芯片数,并画出该存储器的逻辑框图。

(2)若采用异步刷新方式,每单元刷新间隔不超过2ms ,则产生刷新信号的间隔是多少时间?若采

用集中刷新方式,则存储器刷新一遍最少用多少读写周期? 参考答案:

(1)256KB / 64K×1位 = 4×8 = 32片。存储器逻辑框图见下页(图中片选信号CS 为高电平有效)。 (2)因为每个单元的刷新间隔为2ms ,所以,采用异步刷新时,在2ms 内每行必须被刷新一次,且

仅被刷新一次。因为DRAM 芯片存储阵列为64K=256×256,所以一共有256行。因此,存储器控制器必须每隔2ms/256=7.8μs 产生一次刷新信号。采用集中刷新方式时,整个存储器刷新一遍需要256个存储(读写)周期,在这个过程中,存储器不能进行读写操作。

A 17

A 16A 15

A 0

D 0

D 7

……

5. 用8K×8位的EPROM 芯片组成32K×16位的只读存储器,试问:

(1)数据寄存器最少应有多少位?(2)地址寄存器最少应有多少位? (3)共需多少个EPROM 芯片? (4)画出该只读存储器的逻辑框图。 参考答案:

(1)数据寄存器最少有16位。

(2)地址寄存器最少有:15位(若按16位的字编址);16位(若按字节编址)。 (3)共需要 32K×16位 / 8K×8位= 4×2 = 8片。

(4)该只读存储器的逻辑框图如下(假定按字编址,图中片选信号CS 为高电平有效)。

A 14A 13A 12

A 0

D 0

D 15

WE

D 8D 7

6. 某计算机中已配有0000H ~7FFFH 的ROM 区域,现在再用8K×4位的RAM 芯片形成32K×8位的

存储区域,CPU 地址总线为A0-A15,数据总线为D0-D7,控制信号为R/W#(读/写)、MREQ#(访存)。要求说明地址译码方案,并画出ROM 芯片、RAM 芯片与CPU 之间的连接图。假定上述其他条件不变,只是CPU 地址线改为24根,地址范围000000H ~007FFFH 为ROM 区,剩下的所有地址空间都用8K×4位的RAM 芯片配置,则需要多少个这样的RAM 芯片? 参考答案:

CPU地址线共16位,故存储器地址空间为0000H~FFFFH,其中,8000H~FFFFH为RAM 区,共215=32K个单元,其空间大小为32KB,故需8K×4位的芯片数为32KB/8K×4位=4×2=8片。

因为ROM区在0000H~7FFFH,RAM区在8000H~FFFFH,所以可通过最高位地址A15来区分,当A15为0时选中ROM芯片;为1时选中RAM芯片,此时,根据A14和A13进行译码,得到4个译码信号,分别用于4组字扩展芯片的片选信号。(图略,可参照图4.15)

若CPU地址线为24位,ROM区为000000H~007FFFH,则ROM区大小为32KB,总大小为16MB=214KB=512×32KB,所以RAM区大小为511×32KB,共需使用RAM芯片数为511×32KB/8K×4位=511×4×2个芯片。

7.假定一个存储器系统支持4体交叉存取,某程序执行过程中访问地址序列为3, 9, 17, 2, 51, 37, 13, 4, 8,

41, 67, 10,则哪些地址访问会发生体冲突?

参考答案:

对于4体交叉访问的存储系统,每个存储模块的地址分布为:

Bank0: 0、4、8、12、16 … …

Bank1: 1、5、9、13、17…37…41…

Bank2: 2、6、10、14、18 … …

Bank3: 3、7、11、15、19...51 (67)

如果给定的访存地址在相邻的4次访问中出现在同一个Bank内,就会发生访存冲突。所以,17和9、37和17、13和37、8和4发生冲突。

8.现代计算机中,SRAM一般用于实现快速小容量的cache,而DRAM用于实现慢速大容量的主存。

以前超级计算机通常不提供cache,而是用SRAM来实现主存(如,Cray巨型机),请问:如果不考虑成本,你还这样设计高性能计算机吗?为什么?

参考答案:

不这样做的理由主要有以下两个方面:

①主存越大越好,主存大,缺页率降低,因而减少了访问磁盘所需的时间。显然用DRAM芯片

比用SRAM芯片构成的主存容量大的多。

②程序访问的局部性特点使得cache的命中率很高,因而,即使主存没有用快速的SRAM芯片

而是用DRAM芯片,也不会影响到访问速度。

9.分别给出具有下列要求的程序或程序段的示例:

(1)对于数据的访问,几乎没有时间局部性和空间局部性。

(2)对于数据的访问,有很好的时间局部性,但几乎没有空间局部性。

(3)对于数据的访问,有很好的空间局部性,但几乎没有时间局部性。

(4)对于数据的访问,空间局部性和时间局部性都好。

参考答案(略):

可以给出许多类似的示例。例如,对于按行优先存放在内存的多维数组,如果按列优先访问数组元素,则空间局部性就差,如果在一个循环体中某个数组元素只被访问一次,则时间局部性就差。

10.假定某机主存空间大小1GB,按字节编址。cache的数据区(即不包括标记、有效位等存储区)有64KB,

块大小为128字节,采用直接映射和全写(write-through)方式。请问:

(1)主存地址如何划分?要求说明每个字段的含义、位数和在主存地址中的位置。

(2)cache的总容量为多少位?

参考答案:

2017年大学计算机习题及答案

2017年大学计算机习题及答案 1. (多媒体)技术是处理文字、声音、图形、图像和影像等的综合性技术。 2. 执行一条指令的时间称为机器周期,机器周期分为(取指令)周期和(执行指令)周期。 3. 用于传送存储器单元地址或输入/输出接口地址信息的总线称为(地址总线)。 4. (机器)语言是计算机唯一能够识别并直接执行的语言。 5. 标准ASCⅡ字符集总共有(128)个编码。 6. 在计算机内用(2)个字节的二进制数码代表一个汉字。 7. 第一台电子计算机ENIAC诞生于(1946)年。 8. 对存储器而言有两种基本操作:(读操作)和(写操作)。 9. 用计算机高级语言编写的程序,通常称为(源程序)。 10. 计算机软件系统由(系统软件)和(应用软件)两部分组成。 11. 八进制数整数(从右数)第三位的位权是(64)。 12. 二进制数10110转换为十进制数是(22)2017年大学计算机习题及答案。 13. 一个指令规定了计算机能够执行一个基本操作,它的组成包括(操作码)和(地址码)。 14. 对于R进制数来说,其基数(能使用的数字符号个数)中最大数是(R-1)。

15. 3位二进制数可以表示(8)种状态。 16. 在计算机内部,数字和符号都用(二进制)代码表示。 17. 第三代电子计算机采用的电子器件是(中小规模集成电路)。 18. 按相应的顺序排列、使计算机能执行某种任务的指令集合是(程序)2017年大学计算机习题及答案。 19. 操作系统是一种(系统)软件,它是(用户)和(计算机)的接口。 20. 计算机内存的存取速度比外存储器(快)。 21. 计算机硬件中最核心的部件是(CPU(中央处理器))。 22. 计算机由(控制器)、(运算器)、(存储器)、(输入设备)和(输出设备)五部分组成,其中(控制器)和(运算器)组成CPU。 23. 计算机在工作时,内存储器用来存储(现行程序的指令和数据)。 24. KB、MB、GB都是存储容量的单位,1GB=(1024×1024)KB。 25. 计算机系统软件中的核心软件是(操作系统)。 26. 计算机的主要技术指标有(字长)、(主频)、(运算速度)、(存储容量)和(存储周期)。 27. 计算机工作时,有两种信息在执行指令过程中流动:(数据流)和(控制流)。

计算机组成原理第四版课后习题答案完整版

第一章 1.比较数字计算机和模拟计算机的特点 解:模拟计算机的特点:数值由连续量来表示,运算过程是连续的; 数字计算机的特点:数值由数字量(离散量)来表示,运算按位进行。 两者主要区别见P1 表1.1。 2.数字计算机如何分类?分类的依据是什么? 解:分类:数字计算机分为专用计算机和通用计算机。通用计算机又分为巨型机、大型机、 中型机、小型机、微型机和单片机六类。 分类依据:专用和通用是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。 通用机的分类依据主要是体积、简易性、功率损耗、性能指标、数据存储容量、 指令系统规模和机器价格等因素。

3.数字计算机有那些主要应用? (略) 4.冯. 诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分? 解:冯. 诺依曼型计算机的主要设计思想是:存储程序和程序控制。 存储程序:将解题的程序(指令序列)存放到存储器中; 程序控制:控制器顺序执行存储的程序,按指令功能控制全机协调地完成运算任务。 主要组成部分有:控制器、运算器、存储器、输入设备、输出设备。 5.什么是存储容量?什么是单元地址?什么是数据字?什么是指令字? 解:存储容量:指存储器可以容纳的二进制信息的数量,通常用单位KB、MB、GB来度量,存储容 量越大,表示计算机所能存储的信息量越多,反映了计算机存储空间的大小。 单元地址:单元地址简称地址,在存储器中每个存储单

元都有唯一的地址编号,称为单元地 址。 数据字:若某计算机字是运算操作的对象即代表要处理的数据,则称数据字。 指令字:若某计算机字代表一条指令或指令的一部分,则称指令字。 6.什么是指令?什么是程序? 解:指令:计算机所执行的每一个基本的操作。 程序:解算某一问题的一串指令序列称为该问题的计算程序,简称程序。 7.指令和数据均存放在内存中,计算机如何区分它们是指令还是数据? 解:一般来讲,在取指周期中从存储器读出的信息即指令信息;而在执行周期中从存储器中读出的 信息即为数据信息。 8.什么是内存?什么是外存?什么是CPU?什么是适配器?简述其功能。

计算机组成原理考试题库

计算机原理考试题库 一、选择题 1、电子计算机的算术/逻辑单元、控制单元及主存储器合称为C。 A、CPU B、ALU C、主机 D、UP 2、用以指定待执行指令所在地址的是C。 A、指令寄存器 B、数据计数器 C、程序计数器 D、累加器 3、完整的计算机系统应包括D。 A、运算器、存储器、控制器 B、外部设备和主机 C、主机和实用程序 D、配套的硬件设备和软件系统 4、计算机存储数据的基本单位为A。 A、比特Bit B、字节Byte C、字组Word D、以上都不对 5、计算机中有关ALU的描述,D是正确的。 A、只做算术运算,不做逻辑运算 B、只做加法 C、能存放运算结果 D、以上答案都不对 6、计算机系统中的存储系统是指D。 A、RAM存储器 B、ROM存储器 C、主存 D、主存和辅存 7、下列语句中是C正确的。 A、1KB=1024 1024B B、1KB=1024MB C、1MB=1024 1024B D、1MB=1024B 8、用以指定待执行指令所在地址的是C。 A、指令寄存器 B、数据计数器 C、程序计数器 D、累加器 9、计算机系统中的存储系统是指D。 A、RAM存储器 B、ROM存储器 C、主存 D、主存和辅存 10、电子计算机的算术/逻辑单元、控制单元及主存储器合称为C。 A、CPU B、ALU C、主机 D、UP 11、计算机中有关ALU的描述,D是正确的。 A、只做算术运算,不做逻辑运算 B、只做加法 C、能存放运算结果 D、以上答案都不对 12、下列D属于应用软件。 A、操作系统 B、编译程序 C、连接程序 D、文本处理 13、下列语句中是C正确的。 A、1KB=1024 1024B B、1KB=1024MB C、1MB=1024 1024B D、1MB=1024B 14、计算机系统中的存储系统是指D。 A、RAM存储器 B、ROM存储器 C、主存 D、主存和辅存 15、下列D属于应用软件。 A、操作系统 B、编译程序 C、连接程序 D、文本处理 16、存放欲执行指令的寄存器是D。 A、MAE B、PC C、MDR D、IR 17、用以指定待执行指令所在地址的是C。

计算机组成原理课后习题答案解析

作业解答 第一章作业解答 1.1 基本的软件系统包括哪些内容? 答:基本的软件系统包括系统软件与应用软件两大类。 系统软件是一组保证计算机系统高效、正确运行的基础软件,通常作为系统资源提供给用户使用。包括:操作系统、语言处理程序、数据库管理系统、分布式软件系统、网络软件系统、各种服务程序等。 1.2 计算机硬件系统由哪些基本部件组成?它们的主要功能是什么? 答:计算机的硬件系统通常由输入设备、输出设备、运算器、存储器和控制器等五大部件组成。 输入设备的主要功能是将程序和数据以机器所能识别和接受的信息形式输入到计算机内。 输出设备的主要功能是将计算机处理的结果以人们所能接受的信息形式或其它系统所要求的信息形式输出。 存储器的主要功能是存储信息,用于存放程序和数据。 运算器的主要功能是对数据进行加工处理,完成算术运算和逻辑运算。 控制器的主要功能是按事先安排好的解题步骤,控制计算机各个部件有条不紊地自动工作。 1.3 冯·诺依曼计算机的基本思想是什么?什么叫存储程序方式? 答:冯·诺依曼计算机的基本思想包含三个方面: 1) 计算机由输入设备、输出设备、运算器、存储器和控制器五大部件组成。 2) 采用二进制形式表示数据和指令。 3) 采用存储程序方式。 存储程序是指在用计算机解题之前,事先编制好程序,并连同所需的数据预先存入主存储器中。在解题

过程(运行程序)中,由控制器按照事先编好并存入存储器中的程序自动地、连续地从存储器中依次取出指令并执行,直到获得所要求的结果为止。 1.4 早期计算机组织结构有什么特点?现代计算机结构为什么以存储器为中心? 答:早期计算机组织结构的特点是:以运算器为中心的,其它部件都通过运算器完成信息的传递。 随着微电子技术的进步,人们将运算器和控制器两个主要功能部件合二为一,集成到一个芯片里构成了微处理器。同时随着半导体存储器代替磁芯存储器,存储容量成倍地扩大,加上需要计算机处理、加工的信息量与日俱增,以运算器为中心的结构已不能满足计算机发展的需求,甚至会影响计算机的性能。为了适应发展的需要,现代计算机组织结构逐步转变为以存储器为中心。 1.5 什么叫总线?总线的主要特点是什么?采用总线有哪些好处? 答:总线是一组可为多个功能部件共享的公共信息传送线路。 总线的主要特点是共享总线的各个部件可同时接收总线上的信息,但必须分时使用总线发送信息,以保证总线上信息每时每刻都是唯一的、不至于冲突。 使用总线实现部件互连的好处: ①可以减少各个部件之间的连线数量,降低成本; ②便于系统构建、扩充系统性能、便于产品更新换代。 1.6 按其任务分,总线有哪几种类型?它们的主要作用是什么? 答:按总线完成的任务,可把总线分为:CPU内部总线、部件内总线、系统总线、外总线。 1.7 计算机的主要特点是什么? 答:计算机的主要特点有:①能自动连续地工作;②运算速度快;③运算精度高;④具有很强的存储能力

大学计算机基础习题答案及解析

第1章 1.1.1 1. 单项选择题 1)A2)C3)B4)A5)C6)A 2.多项选择题 1)AB2)AB3)ABCD4)ABD5)ABCD6)ABC 3.判断题 1)F2)F 1.1.2 1. 单项选择题 1)A2)B3)A4)C5)D6)D7)A8)A9)C 2. 多项选择题 1)ABCDE2)ABC3)ABCD4)AB5)ABCD6)ABCDE 3.判断题 1)F2)T3)F4)F5)F6)T7)F 1.1.3 1. 单项选择题 1)A2)D3)A4)B5)A6)D7)C8)A9)A 10)D11)A12)D 2. 多项选择题 1)ABE2)ABCD3)ABCD4)ABC 3.判断题 1)T2)T3)F4)F5)T6)T7)T 1.1.4 1.单项选择题 1)A2)C3)D4)A5)B6)C 2. 多项选择题 1)ABCD2)ABCD3)ABE4)ABC5)ABCD 3. 判断题 1)T2)T3)T4)T5)T6)F7)F8)F 4.填空题 1)操作码地址码2)操作系统3)算术运算逻辑运算 1

4)输入设备5)控制器,运算器6)编译程序 1.1.5 1. 单项选择题 1)A2)C3)D4)A5)B6)D7)D8)A 2. 多项选择题 1)ABC2)ABD3)ABD4)ABD5)ABDE 3. 判断题 1)F2)T3)T4)T5)T6)F7)F8)T9)F 4. 填空题 1)CD-R2)RAM3)7FFF4)Personal Computer(个人计算机)5)AGP6)分辨率7)采样8)LCD 9)显示分辨率颜色质量刷新速度 1.3 一、单项选择题答案及分析: 1.A 世界上第一台真正意义的计算机ENIAC是1946年2月在美国宾夕法尼亚大学诞生的,故应选择A 2.A 显示器是输出设备,磁盘驱动器既可以看作输入设备也可以作为输出设备,而鼠标是输入设备,故应选A。 3.A 位(bit)是计算机存储数据的最小单位,简称b,也称为比特,一个二进制数就是一位 4.A 信息处理是指非数值形式的数据处理,是指以计算机技术为基础,对大量的数据进行加工处理,形成有用信息。而文字、表格、图形、声音等属于非数值形式的数据。所以数据检索应用属于信息处理的应用范围。 5.C 机器语言写出来的程序是由0和1组成的指令序列,这样计算机就能直接执行,所以机器语言是计算机系统唯一能识别的、不需要翻译直接供机器使用的程序设计语言。故选C 6.D 7.C 8.B 指令由操作码和地址码组成,操作码规定了操作类型,地址码规定了要操作的阿数据存放在什么地址中,以及操作结果存放到哪个地址中。 9.C 从ENIAC到现在计算机发生翻天覆地的变化,依据计算机采用的主要元器件的不同,将计算机的发展分为了四代,故应选C 10.B 11.B 在计算机中,采用的是二进制数,所有数据都是以二进制的形式表示和存储,故应选B 12.D

计算机组成原理练习题答案

一、选择题 1、完整的计算机系统应包括运算器、存储器、控制器。 一个完整的计算系统应该是:硬件系统和软件系统,硬件系统应该包括运算器,控制器,存储器,输入设备和输出设备,软件系统包括系统软件和应用软件.而你给的答案中B和D是可以排除的,也就是不能选,A和C两个中A的可能性最大,答案只能选A. 3、冯. 诺依曼计算机工作方式的基本特点是按地址访问并顺序执行指令。 4、移码表示法主要用于表示浮点数中的阶码。 5、动态RAM的刷新是以行为单位的。 8、在定点运算器中产生溢出的原因是运算的结果的超出了机器的表示范围。 10、在指令的地址字段中,直接指出操作数本身的寻址方式,称为立即寻址。 11、目前的计算机,从原理上讲指令和数据都以二进制形式存放。 13、计算机问世至今,新型机器不断推陈出新,不管怎样更新,依然保有“存储程序”的概念,最早提出这种概念的是冯. 诺依曼。 16、在CPU中,跟踪后继指令地址的寄存器是程序计数器。 20、系统总线中地址总线的作用是用于选择指定的存储单元或外设。 21、计算机中的主机包含运算器、控制器、存储器。 23、原码一位乘运算,乘积的符号位由两个操作数的符号进行异或运算。 24、对于真值“0”表示形式唯一的机器数是移码和补码。 25、若[X]补=0.0100110,则[X]反= 0.0100110。--x为正数 26、在CPU中,存放当前执行指令的寄存器是指令寄存器。 保存当前正在执行的指令的寄存器称为(指令寄存器)。 指示当前正在执行的指令地址的寄存器称为(程序计数器或指令计数器)。 27、下列编码中通常用作字符编码的是ASCII码。 ASCII ASCII(American Standard Code for Information Interchange,美国信息互换标准代码)是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。 28、在下列存储器中,半导体存储器可以作为主存储器。 30、在CPU中跟踪指令后继地址的寄存器是PC。 31、EPROM是指光擦除可编程的只读存储器。

《计算机组成原理》练习题

《计算机组成原理》练习题 第一章概论 一、选择题 01. 电子计算机主存内的ROM是指。 A.不能改变其内的数据 B.只能读出数据,不能写入数据 C.通常用来存储系统程序 D.以上都是 02. 有些计算机将一部分软件永恒地存于只读存储器中,称之为。 A.硬件 B.软件 C. 固件 D.辅助存储 03. 如果要处理速度、温度、电压等连续性数据可以使用。 A.数字计算机 B.模拟计算机 C.混合计算机 D.特殊用途计算机 04. 邮局把信件进行自动分拣,使用的计算机技术是。 A.机器翻译 B.自然语言理解 C.模式识别 D.过程控制 05. 冯.诺伊曼机工作方式的基本特点是。 A.多指令流单数据流 B.按地址访问并顺序执行指令 C.堆栈操作 D.存储器按内容选择地址。 06. 某寄存器中的值可能是操作数,也可能是地址,只有计算机的才能识别它。 A.译码器 B.判断程序 C.指令 D.时序信号。 07. 80年代以来,许多国家开始研究第五代计算机,这种计算机系统是。 A.超高速巨型计算机系统 B.知识信息处理系统 C.大型分布式计算机系统 D.超级微型计算机群组成的计算机网。 08. 计算机的算逻单元的控制单元合称为。 A.ALU B.UP C.CPU D.CAD 09. 磁盘驱动器读写数据的基本存取单位为。 A.比特 B.字节 C.磁道 D.扇区 二、填空题 01. 计算机硬件是指, 软件是指, 固件是指。 02. 数控机床是计算机在方面的应用。 03. 人工智能研究, 模式识别研究。

04. 计算机用来处理离散的数据,而计算机用来处理连续性的数据。 05.存储器可分为主存和,程序必须存于内,CPU才能执行其中的指令。 第二章计算机中的信息编码 一、选择题 01. 对真值0表示形式唯一的机器数是。 A.原码 B.补码和移码 C.补码 D.反码 02. 在整数定点机中,下述第说法正确。 A.原码和反码不能表示-1,补码可以表示-1。 B.三种机器数均可表示-1 C.三种机器数均可表示-1,且三种机器数的表示范围相同。 D.以上说法均不对。 03. 在小数定点机中,下述第说法正确。 A.只有补码能表示-1 B.只有原码能表示-1 C.三种机器数均不能表示-1 D.以上说法均不对 04.设X为真值,X*为其绝对值,则等式[-X*]补=[-X]补。 A.成立 B.不成立 05.设X为真值,X*为其绝对值,满足[-X*]补=[-X]补的条件是。 A.X任意 B.X为正数 C.X为负数 D.X为非负数 06.设寄存器内容为11111111,若它等于-0,则为 A.原码 B.补码 C.反码 D.移码 二、填空题 01.采用浮点表示时,若尾数为规格化形式,则浮点数的表示范围取决于的位数,精度取决于的位数,确定浮点数的正负。 02.一个浮点数,当其尾数右移时,欲使其值不变,阶码必须。尾数右移1 位,阶码。 03.一个浮点数,确定了小数点的位置,当其尾数左移时,欲使其值不变,必须使。 04.移码常用来表示浮点数的部分,移码和补码除符号位外,其他

计算机组成原理课后习题答案.

计算机组成原理课后习题答案第一章 1.模拟计算机的特点是数值由连续量来表示,运算过程也是连续的。数字计算机的主要特点是按位运算,并且不连续地跳动计算。模拟计算机用电压表示数据,采用电压组合和测量值的计算方式,盘上连线的控制方式,而数字计算机用数字0和1表示数据,采用数字计数的计算方式,程序控制的控制方式。数字计算机与模拟计算机相比,精度高,数据存储量大,逻辑判断能力强。 2.数字计算机可分为专用计算机和通用计算机,是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。 3.科学计算、自动控制、测量和测试、信息处理、教育和卫生、家用电器、人工智能。4.主要设计思想是:存储程序通用电子计算机方案,主要组成部分有:运算器、逻辑控制装置、存储器、输入和输出设备 5.存储器所有存储单元的总数称为存储器的存储容量。每个存储单元都有编号,称为单元地址。如果某字代表要处理的数据,称为数据字。如果某字为一条指令,称为指令字。6.每一个基本操作称为一条指令,而解算某一问题的一串指令序列,称为程序。 7.取指周期中从内存读出的信息流是指令流,而在执行器周期中从内存读出的信息流是指令流。 8.半导体存储器称为内存,存储容量更大的磁盘存储器和光盘存储器称为外存,内存和外存共同用来保存二进制数据。运算器和控制器合在一起称为中央处理器,简称CPU,它用来控制计算机及进行算术逻辑运算。适配器是外围设备与主机联系的桥梁,它的作用相当于一个转换器,使主机和外围设备并行协调地工作。 9.计算机的系统软件包括系统程序和应用程序。系统程序用来简化程序设计,简化使用方法,提高计算机的使用效率,发挥和扩大计算机的功能用用途;应用程序是用户利用计算机来解决某些问题而编制的程序。 10.在早期的计算机中,人们是直接用机器语言来编写程序的,这种程序称为手编程序或目的程序;后来,为了编写程序方便和提高使用效率,人们使用汇编语言来编写程序,称为汇编程序;为了进一步实现程序自动化和便于程序交流,使不熟悉具体计算机的人也能很方便地使用计算机,人们又创造了算法语言,用算法语言编写的程序称为源程序,源程序通过编译系统产生编译程序,也可通过解释系统进行解释执行;随着计算机技术的日益发展,人们又创造出操作系统;随着计算机在信息处理、情报检索及各种管理系统中应用的发展,要求大量处理某些数据,建立和检索大量的表格,于是产生了数据库管理系统。 11.从第一至五级分别为微程序设计级、一般机器级、操作系统级、汇编语言级、高级语言级。采用这种用一系列的级来组成计算机的概念和技术,对了解计算机如何组成提供了一种好的结构和体制。而且用这种分级的观点来设计计算机,对保证产生一个良好的系统结构也是很有帮助的。 12.因为任何操作可以由软件来实现,也可以由硬件来实现;任何指令的执行可以由硬件完成,也可以由软件来完成。实现这种转化的媒介是软件与硬件的逻辑等价性。13.(略)

大学计算机基础习题及答案

第一单元 1.一般认为,信息(information)就是(C) A.数据 B.人们关心的事情的消息 C.反应物质及其运动属性与特征的原始事实 D.记录下来的可鉴别符号 2.信息资源的开发与利用已经成为独立的产业,即(C) A.第二产业 B.第三产业 C.信息产业 D.房地产业 3.信息技术就是信息处理中所采取的技术与方法,也可以瞧作就是(B)的一种技术。A.信息存储功能 B.扩展人感觉与记忆功能 C.信息采集功能 D.信息传递功能 4.所谓3C技术就是指(C) A.新材料与新能量 B.电子技术、微电子技术、激光技术 C.计算机技术、通信技术、控制技术 D.信息技术在人类生产与生活中得各种具体应用 5.目前应用愈来愈广泛的优盘(U盘)属于(B)技术。 A.刻录 B.移动存储 C.网络存储 D.直接连接存储 6.信息安全的四大隐患就是:计算机犯罪、计算机病毒、(C)与计算机设备的物理性破坏。A.自然灾害 B.网络盗窃 C.误操作 D.软件盗版 7、“蠕虫”往往就是通过(C)进入其她计算机系统。 A.网关 B.系统 C.网络 D、防火墙 8、在如下四种病毒中,计算机一开始启动操作系统就可能起破坏作用的就是(D) A.良性病毒 B.文件型病毒 C.宏病毒 D.系统引导型 9、计算机要执行一条指令,CPU首先所涉及的操作应该就是(B) A.指令密码 B.取指令

D.读写磁盘 10、计算机中能直接被CPU存取的信息就是存放在(D)中。 A.软盘 B.硬盘 C.高速缓存 D.内存 11、计算机断电或者重新启动后,(A)中的信息将丢失。 A.RAM B.ROM C.优盘 D.已存放在硬盘 12、计算机系统的内部总线,主要可分为(B)、数据总线与地址总线。 A.DMA总线 B.控制总线 C.PCI总线 D.RS-232总线 13、数据通信的系统模型由(B)三部分组成。 A.数据、通讯设备与计算机 B.数据源、数据通信网与数据宿 C.发送设备、同轴电缆与接收设备 D.计算机、连接电缆与网络设备 14、下面有关数制的说法中,不正确的就是(D)。 A.二进制数制仅含数符0与1 B.十进制16等于十六进制10H C.一个数字串的某数符可能为0,但任一数位上得“权”值不可能就是0 D.常用计算机内部一切数据都就是以十进制为运算单位的 15、高级语言可分为面向过程与面向对象亮大类,(A)属于面向过程的高级语言。 A.FORTRAN B.C++ C.JA V A D.SQL 16、计算机常用的数据通信接口中,传输速率最高的就是(D)。 https://www.360docs.net/doc/6a4255787.html,B1、0 https://www.360docs.net/doc/6a4255787.html,B2、0 C.RS232 D.IEEE1394 17、二进制数10001001011B转换为十进制数就是(C)。 A.2090 B.1077 C.1099 D.2077 18、十六进制数ABCDEH转换为十进制(B)。 A.713710

计算机组成与结构习题及答案

第一章:概述 一、选择题 1.完整的计算机系统应包括__ ___。 A. 运算器、存储器、控制器 B. 外部设备和主机 C. 主机和实用程序 D. 配套的硬件设备和软件系统 2.至今为止,计算机中的所有信息仍以二进制方式表示的理由是_ __。 A. 节约元件 B. 运算速度快 C. 物理器件的性能决定 D. 信息处理方便3.从系统结构看,至今绝大多数计算机仍属于__ __型计算机。 A. 并行 B. .诺依曼 C. 智能 D. 实时处理 4.计算机外围设备是指__ ___。 A. 输入/输出设备 B. 外存储器 C. 远程通讯设备 D. 除CPU和存以外的其他设备 5.在微型机系统中,外围设备通过___ ___与主板的系统总线相连接。 A. 适配器 B. 译码器 C. 计数器 D. 寄存器 6.·诺依曼机工作的基本方式的特点是__ ____。 A. 多指令流单数据流 B. 按地址访问并顺序执行指令 C. 堆栈操作 D. 存贮器按容选择地址 7.微型计算机的发展一般是以_____技术为标志。 A. 操作系统 B. 微处理器 C. 磁盘 D. 软件 8.下列选项中,___ ___不属于硬件。 A. CPU B. ASCII C. 存 D. 电源 9.对计算机的软、硬件进行管理是__ ____的功能。 A. 操作系统 B. 数据库管理系统 C. 语言处理程序 D. 用户程序 10.下面的四个叙述中,只有一个是正确的,它是____。 A.系统软件就是买的软件,应用软件就是自己编写的软件 B.外存上的信息可以直接进入CPU被处理 C.用机器语言编写的程序可以由计算机直接执行,用高级语言编写的程序必须经过编译(解释)才能执行 D.如果说一台计算机配置了FORTRAN语言,就是说它一开机就可以用FORTRAN 语言编写和执行程序 答案:1.D 2C. 3.B. 4.D. 5.A. 6B 7.B 8. B 9. A 10. C 二、判断题 1.在微型计算机广阔的应用领域中,会计电算化应属于科学计算应用方面。 2.决定计算机计算精度的主要技术指标一般是指计算机的字长。 3.计算机“运算速度”指标的含义是指每秒钟能执行多少条操作系统的命令。 4.利用大规模集成电路技术把计算机的运算部件和控制部件做在一块集成电路芯片上,这样的一块芯片叫做单片机。 答案:1.答案:错。2.答案:对。3.答案:错。4.答案:错。

计算机组成原理练习题-答案

一、填空题 1.对存储器的要求是速度快,_容量大_____,_价位低_____。为了解决这方面的矛盾,计算机采用多级存储体系结构。 2.指令系统是表征一台计算机__性能__的重要因素,它的____格式__和___功能___不仅直接影响到机器的硬件结构而且也影响到系统软件。 3.CPU中至少有如下六类寄存器__指令____寄存器,__程序_计数器,_地址__寄存器,通用寄存器,状态条件寄存器,缓冲寄存器。 4.完成一条指令一般分为取指周期和执行周期,前者完成取指令和分析指令操作,后者完成执行指令操作。 5.常见的数据传送类指令的功能可实现寄存器和寄存器之间,或寄存器和存储器之间的数据传送。 6.微指令格式可分为垂直型和水平型两类,其中垂直型微指令用较长的微程序结构换取较短的微指令结构。 7.对于一条隐含寻址的算术运算指令,其指令字中不明确给出操作数的地址,其中一个操作数通常隐含在累加器中 8.设浮点数阶码为8位(含1位阶符),尾数为24位(含1位数符),则32位二进制补码浮点规格化数对应的十进制真值范围是:最大正数为 2^127(1-2^-23) ,最小正数为 2^-129 ,最大负数为 2^-128(-2^-1-2^-23) ,最小负数为 -2^127 。 9.某小数定点机,字长8位(含1位符号位),当机器数分别采用原码、补码和反码时,其对应的真值范围分别是 -127/128 ~+127/128 -1 ~+127/128 -127/128 ~+127/128 (均用十进制表示)。 10.在DMA方式中,CPU和DMA控制器通常采用三种方法来分时使用主存,它们是停止CPU访问主存、周期挪用和DMA和CPU交替访问主存。 11.设 n = 8 (不包括符号位),则原码一位乘需做 8 次移位和最多 8 次加法,补码Booth算法需做 8 次移位和最多 9 次加法。 12.设浮点数阶码为8位(含1位阶符),尾数为24位(含1位数符),则32位二进制补码浮点规格化数对应的十进制真值范围是:最大正数为,最小正数为,最大负数为,最小负数为。 13.一个总线传输周期包括申请分配阶段、寻址阶段、传输阶段和结束阶段四个阶段。 14.CPU采用同步控制方式时,控制器使用机器周期和节拍组成的多极时序系统。

大学计算机基础答试题及答案

大学计算机基础试题及答案 一、判断题(每题2分,共20分) 1、信息按状态划分可以划分为动态信息和静态信息。() 2、操作系统不具有通用性。() 3、在 Windows XP环境中,整个显示屏幕称为桌面。() 4、在 WindowsXP中,拖动鼠标执行复制操作时,鼠标指针的右下方带有“+”号。() 5、Word 2000 文档文件的扩展名缺省为.dot 。() 6、Excel2000 的工作表最多有255 列。() 7、演示文稿中的每一张演示的单页称为幻灯片。() 8、IP 地址可以用 8 位二进制数来表示。() 9、DHTML是一种表格的缩写。() 10、软件 Winamp是一种媒体播放软件。 () 一、单选题(每题1分,共20分) 1、计算机网络代表着第()次信息革命。 A、3 B、4 C、5 D、6 2、()奠定了现代计算机的结构理论。 A、霍金 B、爱因斯坦 C 、牛顿D、冯·诺依曼 3、微型机中必不可少的输入/ 输出设备是() A、显示器和打印机 B、键盘和鼠标器 C、键盘和显示器 D、鼠标器和打印机 4、在 Windows XP中,在“图画”程序中保存的文件,系统默认的扩展名是()。 A、.TXT B、.BMP C 、 .TIF D、.DOS 5、“回收站”是()的一块区域。 A、内存 B、软盘 C、硬盘 D、CPU 6、在资源管理器窗口中一次选中多个不连续的文件时, 可以先单击第一个文 件 , 按住 ( )键,再用鼠标选取其余的文件。

A、 Ctrl B、ALT C、Shift D、Tab 7、新建文档的快捷键是() A、Alt+N B、Ctrl+N C、Shiht+N D、 Ctrl+S 8、对于新创建的文档,执行“保存”命令时,显示()对话框。 A、另存为 B、打开 C、新建 D、页面设置 9、下列哪个选项不可以在“分栏”对话框中进行设置() A、栏数 B 、栏宽 C 、间距D、行距 10、Excel2000 的主要功能有电子表格制作功能、图表功能和()功能。 A、文字处理 B 、数据库管理 C 、数据透视图报表 D 、自动填充 11、下列操作中可以移动工作表的位置是() A、拖动工作表标签 B、单击工作表标签后,再单击目的位置 C、按 Ctrl拖动工作表标签 D、按 Shift键拖动工作表标签 12、在 Excel2000 中,单元格中()。 A、只能是数字 B、可以是数字、文字、公式等 C、只能是文字 D、以上都不是 13、PowerPoint 窗口的大纲窗格中,不可以()。 A、插入幻灯片 B 、删除幻灯片 C、移动幻灯片 D 、添加文本框 14、如要在演示文稿中添加一页幻灯片,应选择()。 A、新建文件按钮 B、复制按钮 C、新幻灯片按钮 D、打开按钮 15、计算机网络实现的资源共享包括:()、软件共享和硬件共享。 A、设备共享 B、程序共享 C、数据共享 D 、文件共享 16、IP 的中文含义是()。 A、信息协议 B 、内部协议 C 、传输控制协议 D 、网络互连协议 17、下列属于计算机局域网的是()。 A、校园网 B、国家网 C 、城市网D、因特网 18、作为网页内部跳转可用()。 A、超链接 B、书签 C、ftp软件 D、电子邮件 19、框架网页的属性包括()。

计算机组成原理练习题及参考答案

1.10111000当做无符号数的值为多少,当做整数的值为多少,当做定点小数的值为多少?(十进制数) 无符号:2^7+2^5+2^4+2^3=128+32+16+8=184 整数:10111000 定点小数:10111000 11000111(取反) 11000111(取反) + 1 + 1 11001000 11001000 -(2^3+2^6)=-72 -(1/2+1/16)=-9/16 2.已知接受到的信息为001100001111,其中有效数据位为8位,运用海明码检测,问信息传输是否有错?8位的数据值是多少? 编号 检测位 数据位 12 1100 0 M8 C1=M1⊕M2⊕M4⊕M5⊕M7=0 11 1011 0 M7 C2=M1⊕M3⊕M4⊕M6⊕M7=0 10 1010 1 M6 C4=M2⊕M3⊕M4⊕M8=0 9 1001 1 M5 C8=M5⊕M6⊕M7⊕M8=0 8 1000 0 C8 7 0111 0 M4 发:0111 6 0110 0 M3 收:0000 5 0101 0 M2 发 ⊕收=0111 4 0100 1 C4 即M4出错则数据实为00111001 3 0011 1 M1 2 0010 1 C2 1 0001 1 C1 3.已知原始报文为1111,生成多项式为G (x )=x 4+x 2 +x+1,求编码后的报文 (1):将生成多项式为G (x )=x 4+x 2 +x+1,转换成对应的二进制为10111 (2)生成多项式为5(R+1)位,将原始报文左移4(R)位为11110000 (3)进行模2除 _______00011__________ ______ 10111________________00010100_____________10111_______________010010________ 10111_____1101 11110000 10111 (4)编码CRC 码为11110011 4.采用IEEE754标准的32位短浮点数格式,即0-22位为尾数,23-30位为阶码位,第1位为数符,其中阶码偏置为127,试求出32位浮点代码CC9E23AF 的真值(结果可用任何进

大学计算机基础试题及答案(完整版)

大学计算机基础模拟题 一、单选题 1、完整的计算机系统由(C)组成。 A、运算器、控制器、存储器、输入设备和输出设备 B、主机和外部设备 C、硬件系统和软件系统 D、主机箱、显示器、键盘、鼠标、打印机 2、以下软件中,(D)不是操作系统软件。 A、Windowsxp B、unix C、linux D、microsoft office 3、用一个字节最多能编出(D)不同的码。 A. 8个 B. 16个 C. 128个 D. 256个 4、任何程序都必须加载到(C)中才能被CPU执行。 A. 磁盘 B. 硬盘 C. 内存 D. 外存 5、下列设备中,属于输出设备的是(A)。 A、显示器 B、键盘 C、鼠标 D、手字板 6、计算机信息计量单位中的K代表(B)。 A. 102 B. 210 C. 103 D. 28 7、RAM代表的是(C)。

A. 只读存储器 B. 高速缓存器 C. 随机存储器 D. 软盘存储器 8、组成计算机的CPU的两大部件是(A)。 A、运算器和控制器 B. 控制器和寄存器 C、运算器和内存 D. 控制器和内存 9、在描述信息传输中bps表示的是(D)。 A、每秒传输的字节数 B、每秒传输的指令数 C、每秒传输的字数 D、每秒传输的位数 10、微型计算机的内存容量主要指(A )的容量。 A.RAM B.ROM C.CMOS D.Cache 11、十进制数27对应的二进制数为( D )。 A.1011 B. 1100 C. 10111 D. 11011 12、Windows的目录结构采用的是(A)。 A、树形结构 B、线形结构 C、层次结构 D、网状结构 13、将回收站中的文件还原时,被还原的文件将回到(D)。 A、桌面上 B、“我的文档”中 C、内存中 D、被删除的位置

计算机组成原理习题解答全解

《计算机组成原理》习题解答 第1章 1. 解释概念或术语:实际机器、虚拟机器,机器指令、机器指令格式,主机、CPU、主存、I/O、PC、IR、ALU、CU、AC、MAR、MDR,机器字长、存储字长、指令字长、CPI、T C、主频、响应时间、吞吐量、MIPS、MFLOPS。 答:略 2. 如何理解计算机系统的层次结构?说明高级语言、汇编语言及机器语言的差别与联系。 答:⑴计算机系统是由软件和硬件结合而成的整体。为了提高计算机系统的好用性,程序设计语言的描述问题能力越来越强,各种程序设计语言大体上是一种层次结构,即高等级编程语言指令包含低等级编程语言指令的全部功能。 对于使用不同层次编程语言的程序员来说,他们所看到的同一计算机系统的属性是不同的,这些属性反映了同一计算机系统的不同层次的特征,即同一计算机系统可划分成多个层次结构,不同层次的结构反映的计算机系统的特征不同而已。 ⑵机器语言是能够被计算机硬件直接识别和执行的程序设计语言,机器语言是一种面向硬件的、数字式程序设计语言;汇编语言和高级语言均用符号表示机器语言指令,指令很容易阅读和编写、但不能被硬件直接识别和执行,它们均是一种面向软件的、符号式程序设计语言;相对于汇编语言而言,高级语言描述问题的能力更强;高级语言和汇编语言程序必须翻译成机器语言程序后,才能在计算机硬件上执行。 3. 计算机系统结构、计算机组成的定义各是什么?两者之间有何关系? 答:计算机系统结构是指机器语言程序员或编译程序编写者所看到的计算机系统的属性,包括概念性结构和功能特性两个方面。主要研究计算机系统软硬件交界面的定义及其上下的功能分配。 计算机组成是指计算机硬件设计人员所看到的计算机系统的属性。主要研究如何合理地逻辑实现硬件的功能。 计算机组成是计算机系统结构的逻辑实现。 4. 冯·诺依曼模型的存储程序原理包含哪些内容、对计算机硬件和软件有哪些要求?冯·诺依曼模型计算机的特点有哪些? 答:存储程序原理是指程序和数据预先存放在存储器中,机器工作时自动按程序的逻辑顺序从存储器中逐条取出指令并执行。 存储程序原理要求存储器是由定长单元组成的、按地址访问的、一维线性空间结构的存储部件;要求软件指令支持用地址码表示操作数在存储器中的地址,指令长度为存储单元长度的倍数,编程语言中必须有转移型指令,以实现程序存储顺序到程序逻辑顺序的转变。 冯·诺依曼模型计算机的特点可归纳为如下几点: ⑴计算机由运算器、控制器、存储器、输入设备和输出设备组成; ⑵存储器是由定长单元组成的、按地址访问的、一维线性空间结构; ⑶程序由指令组成,指令和数据以等同地位存放在存储器中; ⑷机器工作时自动按程序的逻辑顺序从存储器中逐条取出指令并执行; ⑸指令由操作码和地址码组成,操作码用于表示操作的性质,地址码用于表示操作数在

计算机组成原理试题库集及答案

计算机组成原理试题库集及答案

第一章计算机系统概论 1. 什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要? 解:P3 计算机系统:由计算机硬件系统和软件系统组成的综合体。 计算机硬件:指计算机中的电子线路和物理装置。 计算机软件:计算机运行所需的程序及相关资料。 硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要。 5. 冯?诺依曼计算机的特点是什么? 解:冯?诺依曼计算机的特点是:P8 计算机由运算器、控制器、存储器、输入设备、输出设备五大部件组成; 指令和数据以同同等地位存放于存储器内,并可以按地址访问; 指令和数据均用二进制表示; 指令由操作码、地址码两大部分组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置; 指令在存储器中顺序存放,通常自动顺序取出执行; 机器以运算器为中心(原始冯?诺依曼机)。 7. 解释下列概念: 主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。 解:P9-10 主机:是计算机硬件的主体部分,由CPU和主存储器MM合成为主机。 CPU:中央处理器,是计算机硬件的核心部件,由运算器和控制器组成;(早期的运算器和控制器不在同一芯片上,现在的CPU内除含有运算器和控制器外还集成了CACHE)。 主存:计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取;由存储体、各种逻辑部件及控制电路组成。 存储单元:可存放一个机器字并具有特定存储地址的存储单位。 存储元件:存储一位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取。 存储字:一个存储单元所存二进制代码的逻辑单位。 存储字长:一个存储单元所存二进制代码的位数。 存储容量:存储器中可存二进制代码的总量;(通常主、辅存容量分开描述)。 机器字长:指CPU一次能处理的二进制数据的位数,通常与CPU的寄存器位数有关。 指令字长:一条指令的二进制代码位数。 8. 解释下列英文缩写的中文含义:

(完整版)计算机组成原理习题答案(蒋本珊)

第一章 1.电子数字计算机和电子模拟计算机的区别在哪里? 解:电子数字计算机中处理的信息是在时间上离散的数字量,运算的过程是不连续的;电子模拟计算机中处理的信息是连续变化的物理量,运算的过程是连续的。 2.冯·诺依曼计算机的特点是什么?其中最主要的一点是什么? 解:冯·诺依曼计算机的特点如下: ①计算机(指硬件)应由运算器、存储器、控制器、输入设备和输出设备五大基本部件组成; ②计算机内部采用二进制来表示指令和数据; ③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作。 第③点是最主要的一点。 3.计算机的硬件是由哪些部件组成的?它们各有哪些功能? 解:计算机的硬件应由运算器、存储器、控制器、输入设备和输出设备五大基本部件组成。它们各自的功能是: ①输入设备:把人们编好的程序和原始数据送到计算机中去,并且将它们转换成计算机内部所能识别和接受的信息方式。 ②输出设备:将计算机的处理结果以人或其他设备所能接受的形式送出计算机。 ③存储器:用来存放程序和数据。 ④运算器:对信息进行处理和运算。

⑤控制器:按照人们预先确定的操作步骤,控制整个计算机的各部件有条不紊地自动工作。 4.什么叫总线?简述单总线结构的特点。 解:总线是一组能为多个部件服务的公共信息传送线路,它能分时地发送与接收各部件的信息。单总线结构即各大部件都连接在单一的一组总线上,这个总线被称为系统总线。CPU 与主存、CPU 与外设之间可以直接进行信息交换,主存与外设、外设与外设之间也可以直接进行信息交换,而无须经过CPU 的干预。 5.简单描述计算机的层次结构,说明各层次的主要特点。 解:现代计算机系统是一个硬件与软件组成的综合体,可以把它看成是按功能划分的多级层次结构。 第0级为硬件组成的实体。 第1级是微程序级。这级的机器语言是微指令集,程序员用微指令编写的微程序一般是直接由硬件执行的。 第2级是传统机器级。这级的机器语言是该机的指令集,程序员用机器指令编写的程序可以由微程序进行解释。 第3级是操作系统级。从操作系统的基本功能来看,一方面它要直接管理传统机器中的软硬件资源,另一方面它又是传统机器的延伸。第4级是汇编语言级。这级的机器语言是汇编语言,完成汇编语言翻译的程序叫做汇编程序。 第5级是高级语言级。这级的机器语言就是各种高级语言,通常用编译程序来完成高级语言翻译的工作。

相关文档
最新文档