admin管理员组

文章数量:1540290

2024年1月7日发(作者:)

第1章 计算机系统概论

1.简答题

(1)计算机硬件包括哪些基本功能部件?为什么要有这些部件?

答:计算机的最基本的功能部件是运算器、存储器、控制器、输入单元和输出单元。计算机的基本功能就是存储和处理外部世界的信息并在需要的时候向外界提供这些信息。为了完成这些基本功能,要求计算机能够自动地输入信息、输出信息、存储信息以及处理信息。计算机的基本部件就是根据这些要求设置的,分别用一个部件完成上述个功能,完后用一个控制器实现上述功能的自动化。

(2)简述现代计算机常用的三级存储体系。

答:CPU能按存储单元地址直接访问主存(内存);增加高速缓存(Cache)的目的是为了提高速度,解决CPU与主存之间速度不匹配的矛盾;增加辅存(外存)的目的是弥补主存容量的不足。

(3)运算器中有哪些寄存器?

答:运算器中有存放操作数和运算结果的寄存器,包括移位寄存器和若干通用寄存器。

(4)计算机软件有哪些类型?

答:计算机软件一般可分为系统软件和应用软件两类。系统软件是整个计算机系统的一部分,为用户操作计算机以及应用软件的运行提供一个方便的界面。主要的系统软件有两类,一类是操作系统软件,负责计算机系统的运行控制;另一类是对程序设计语音进行处理的软件,包括编译程序解释程序、汇编程序等。应用软件是完成用户所需功能的软件,专门为解决某文字处理软件、游戏软件等都属于应用软件。

(5)为什么说计算机的硬件和软件在功能上是等价的?

答:因为计算机系统绝大部分硬件的功能可以用软件实现,软件的功能也可以用硬件来实现。例如,浮点运算功能,早期的计算机中没有浮点运算部件,在这些计管机中实现浮点数据的运算是靠软件进行,现在计算机中都采用了硬件浮点运算部件。可见计算机功能的这两种实现在逻辑上是等效的,其区别在于速度、成本、可靠性、存储容量、变更周期等因素。

2.改错题

(1)现在的数字计算机系统的硬件都是由超大规模集成电路以及机电一体的外围设备构成的。

(2)运算器可以对数据进行算术运算和逻辑运算。

(3)存储器中存放计算机运行中的数据以及程序。

(4)在运算器中有若干个临时存放数据的部件,称为寄存器。

(5)寄存器是CPU中的一个临时存放数据的单元。

(6)数据的存储是以字节或者字为单位的。

(7)数据的最小表示单位是位。

(8)衡量存储器容量的单位是存储器能够存储的信息字节数B,或KB,MB,GB,TB等。

(9)程序在运行之前必须先装入内存。

(10)CPU、内存和输入输出接口一起构成主机。

(11)控制器和运算器起构成CPU。

(12)Visual C++是一种C语言的编译软件,C语言则是一种高级程序设计语言,不是一种软件。

(13)编译程序是将高级语言程序转换成可执行代码的程序。

(14)编译执行前,程序可以经过优化,从而有更快的执行速度。

(15)计算机中一个字的长度在各种计算机中是各不相同的,不一定是32位。

(16)在同一个系列的计算机中,各个计算机一般不是相互兼容的,而是向上兼容的,即新的或更高档的计算机兼容老的或较低档的计算机,反过来的兼容性不具备。

第2章 数据表示

1.改错题

(1)定点小数把小数点固定在最高位的后面。

(2)原码是表示有符号数的二进制编码方法,它用符号位表示数据的符号。

(3)原码在数据的二进制表示前加上一个符号位。

(4)原码表示不便于进行数据的加减法运算,补码表示便于进行数据的加减法运算。

(5)移码编码保持了数值原来的大小顺序,补码编码没有保持数值原来的大小顺序。

(6)正数的补码与原码相同,负数的补码把数据的二进制表示按位取反,最低位加1后得到。

(7)汉字输入码表示用于将汉字信息输入计算机。

(8)奇偶校验码能发现数据代码中的位错误,但不能纠正错误。

(9)海明码可以纠正数据代码中一位错误,并发现两位错误。

(10)浮点数的规格化是为了在尾数宗表示最多的有效数据位,同时使浮点数具有唯一的数据表示。

2.计算题

(1)在字长为8位的计算机中,求下列数的原码、反码及补码:+0 、-0、+18、-18、+31、-31、+127、-127。

解:[+0]原=[+0]反=[+0]补=00000000

[-0]原=10000000 [-0]反=11111111 [-0]补=00000000

[+18]原=[+18]反=[+18]补=00010010

[-18]原=10010010 [-18]反=11101101 [-18]补=11101110

[+31]原=[+31]反=[+31]补=00011111

[-31]原=10011111 [-31]反=11100000 [-31]补=11100001

[+127]原=[+127]反=[+127]补=01111111

[-127]原=11111111 [-127]反=10000000 [-127]补=10000001

[+0.5]原=01000000 [+0.5]反=010000000 [+0.5]补=010000000

(2)解:

① (5/32)10

=(0.00101)2=1.01×2-3

按IEEE754单精度格式 得:

S=0

M=01000…00

E=127+(-3)=124=(01111100)2

其机器数表示形式为:

0 01111100

十六进制形式:3E200000H

② (-4120)10=-1=-1.000000011×212

S=1

M=000000011…00

E=127+12=139=(10001011)2

其机器数表示形式为:

1 10001011

十六进制形式:C580C000H

注意:在IEEE754单精度格式中尾数默认小数点前为1,即真正的尾数为1.M。阶码为移127码,所以,阶码=127+实际指数值。

(3)解:

(41360000)16

= 0100 0001 0011 0110 0000 0000 0000 0000

指数e=E-127= 1000 0010 - 0111 1111=0000 0011=3

尾数1.M=1.011 0110 0000 0000 0000 0000=1.011011

浮点数 N=(-1)S×(1.M)×2e=(-1)0×(1. 011011)×23= (11.375)10

(4)解:

(5)解:M(x)=x3+x2=1100

M(x)·x3=x6+x5=1100000(即1100左移3位)

模2除:M(x)·x3/G(x)=1100000/1011=1110+010/1011

即R(x)=010

得到7位的CRC码为:1100010

第3章 数据运算与运算器

1.计算题

(1)

① [X]补+[Y]补=00001000+00001011=00010011

[X]补−[Y]补=00001000−00001011=11111101

② [X]补+[Y]补=00001011+00001000=00010011

[X]补−[Y]补=00001011−00001000=00000011

③ [X]补+[Y]补=11111000+00001011=00000011

[X]补−[Y]补=11111000−00001011=11101101

④ [X]补+[Y]补=11111000+11110101=11101101

[X]补−[Y]补=11111000−11110101=00000011

(2)[X]补=01010,[Y]补=00101,[−X]补=10110

0

1

2

3

4

5

操作

初始数值

加[−X]补

右移

加[X]补

右移

加[−X]补

右移

加[X]补

右移

加0

右移

U V

00000

×××××

10110

×××××

11011 0××××

00101 0××××

00010 10×××

11000 10×××

11100 010××

00110 010××

00011 0010×

00011 0010×

00001 10010

Y y-1

00101

10010

01001

10100

01010

00101

0

0

1

1

0

0

1

1

0

0

0

故[UV]补=[X]补×[Y]补=00001 10010。

(3)① 0.1101 ② 0.1101 ③ 0.1110 ④ 0.1101

(4)[X]浮=001,0.1101 [Y]浮=011,1.0110

① 对阶:[X]浮=011,0.0011

② 尾数相加:[X+Y]浮=011,1.1001

③ 规格化:[X+Y]浮=010,1.0010

④ 舍入:结果不变

⑤ 检查溢出:无溢出

(5)X=0.1011000×23

[X]浮=0011,0.1011000

Y=−0.1111011×2-2

[Y]浮=1101,1.1111011

阶码相加得1011+0101=0000

尾数相乘0.1011000*1.1111011=1.10

规格化=0000,1.10

舍入得0000,1.1010101

无溢出。

2.简答题

(1)计算机中如何利用加法器电路进行减法运算?

答:为了用加法器电路完成补码的减法运算,可以把减数变成其相反数。也就是用x+(-y)的方法实现x-y的运算。求y的相反数的方法是对y的补码进行一次求补的操作。求补的操作就是在按位求反的基础上最低位再加上1,结果得到[-y]补。完成求补操作的电路是在加法

器的输入端增加一个反相门实现按位求反,加1操作则可通过在加法器的最低进位输入端设置1来实现。

(2)在浮点数加减法运算中为什么要进行对阶操作?怎样进行对阶操作?

答:在浮点数加减法运算中,当两个操作数的阶码Ex和Ey不相等时,要通过对尾数进行移位并相应地改变Ex和Ey使之相等,移位的方法可以有移位Mx和移位My两种可能的方法使Ex等于Ey。但由于格化尾数左移时会引起最高位的丢失,造成很大误差而使结果发生错误,而尾数右移虽引起最低位有效位的丟失,但造成的误差较小。

答:对阶操作规定使阶码较小的数据的尾数进行右移,尾数右移后使阶码作相应增加,每右移一位将阶码加1,以保持其数值不变。

(3)什么是全加器?

答:全加器将两个数据位和低位的进位输入进行加法运算,输出一个加法结果位和一个向高位输出的进位信号。所以全加器共有3个输入端和2个输出端。

(4)什么是0舍1入法?它有什么特点?

答:浮点数的一种舍入方式。在移去多余的位中,如果最高位为1,则在剩下的位的最低位(它是移去位的高一位)上加1;如果在移去多余的位中的最高位为0,则剩下的位的最低位不变。这种舍入方法误差比较小,但实现起来比较复杂,因为它需要做加法运算,而在加法运算过程中又要有进位传播,所以速度比较慢。

第4章

1.改错题

(1)动态存储器的存储单元只需要一个晶体管和一个电容器构成。静态存储器的存储单元需要六个晶体管构成。

(2)静态存储器中的数据可以任意读写。

(3)静态存储器中的数据在电源关闭时就消失。

(4)动态存储器中的数据可以一直保持不变,只要保持电源供电和不断刷新。

(5)半导体RAM存储器件是挥发性的存储器,半导体ROM则是非挥发性的存储器

(6)可编程ROM不是可擦写的,用户可以一次性地写入自己的程序。

(7)可编程ROM在计算机中用于存放固定不变的程序和数据,所谓可编程是指用户可以自己将数据放入ROM芯片。

(8)EPROM是可以反复擦写的ROM,可以在紫外线的照射下擦写存储器数据。

(9)多体交叉存储器只要访问的数据没有冲突就可以提高访问速率。

(10)直接相联方式适用于容量大的Cache,全相联映像方式适用于容量小的Cache。

(11)在Cache替换策略中,近期最少使用法比先进先出法好。

(12)虚拟存储器的主要功能不是增加主存的容量,而是增加程序的地址空间,即虚拟存储容量。

(13)在虚拟存储器中,虚拟地址是程序员看到的地址,不是辅助存储器的地址。

(14)在页式虚拟存储器中,页的长度是固定的。

(15)在段式虚拟存储器中,段的大小是可变的,根据程序的需要确定。

(16)页式虚拟存储器将地址空间分为相同大小的页,它只是虚拟存储器的一种。

(17)在虚拟存储器中,程序员看到的地址是逻辑地址,物理地址是实际访问内存时使用的地址。

2.计算题

(1)① 字地址位为30位,那么存储器中有230个字。数据字有4个字节,所以在储器的容量为230*4B=4GB。

② 4096/256×32/8=64片。

③ 进行了16倍字扩展,需要log216=4条地址线作为芯片选择。

(2)① 主存的容量为16MB=224B,即主存字节地址有24位。Cache容量为256KB= 218B,故Cache字节地址为18位。直接地址映象的Cache用区号作为标志,标志字段即区号有24-18=6位。每块16B=24B,所以块内地址4位。块号有18-4=14位。

② 16MB/16B= 1M,主存中有1M=220块数据。

③ 214 =16K,Cache中可装入16K块数据。

(3)① 1MB=220字节,主存字节地址有20位。一个数据块有64(26)个字节。

32KB=215B,Cache的字节地址为15位,其中块内地址为6位。

所以块号有15-6= 9位,区号有20-15=5位。

② 66FACH= 0110 0110 1111 1010 1100B

根据上述地址段的划分,该存储单元主存地址中各段的内容为:区号= 01100;块号=110111110;块内字节地址=101100。Cache地址中的块号和块内字节地址与上述相同。

(4)① 主存字节地址有20位。Cache的字节地址为15位,块内地址为6位,组内块号为3位。组号有15-3-6 = 6位,区号有20-15=5位。

② AC66FH=1010 1100 0110 0110 1111B,根据上述地址段的划分,该存储单元主存地址中各段的内容为:区号=10101;组号=100011;块号=001;块内字节地址= 101111。

数据在Cache中的组号和块内字节地址与上述相同。因为组内是全相联的,所以2位块号不确定,取决于组内块分配的情况,

(5)① 232 = 4096MB,逻辑地址空间的范围有4GB。

② 227= 128MB,物理地址空间的容量有128MB。

③ 232/4K = 220=1M虚拟存储系统中有1M页。

(6)4B×1/50ns = 8×107 B/s

(7)主存地址中有10位区号、11位组号、1位块号,块内地址2位。地址位数共24位。

① 区号为04H,组号为000H,块号为1,块内地址为0。

② 区号为07H,组号为7FFH,块号为1,块内地址为0。

③ 区号为0FH,组号为7FFH,块号为1,块内地址为3。

④ 区号为3FFH,组号为7FFH,块号为0,块内地址为0。

第5章

1.判断题

(1)√ (2)× (3)× (4)√ (5)√ (6)×

2.简答题

(1)计算机指令中包含哪些信息?怎样表示这些信息?

答:计算机指令中包含的信息有操作的类型、操作数的存储位置、操作结果的存储位置等。指令中一般用不同的代码段表示上述不同的信息,各个代码段构成指令的格式。一般指令格式中包含操作码字段和各操作数地址码字段。指令格式中规定了指令中编码字段的个数、各个字段的位数以及各个字段的编码方式。

(2)固定长度的操作码与可变长度的操作码各有哪些特点?

答:在固定长度的操作码中,所有的指令操作码长度相同,它便于指令的译码。但指令的扩展性差,如果n位操作码的2n种操作码都定义完成,就不能再增加新的指令。可变长度的操作码便于增加新的指令,如果将常用指令用较短的操作码,不常用指令用较长的操作码,则可以缩短指令操作码的平均长度。但可变长度的操作码使得指令译码变得复杂。

(3)计算机有哪些常见指令类型?指出其中的3种,并说明其作用。

答:最常见的指令类型有数据传送指令、数据运算指令和程序流控制指令。数据传送指令使得数据在主存与CPU寄存器之间进行传输。数据运算指令对数据进行算术运算和逻辑运算。程序流控制指令提供一种决策机制 ,以改变计算机中执行的程序的流程。

(4)基址寻址方式和变址寻址方式有什么特点?

答:这两种寻址方式都是将一个寄存器中的内容加上指令中的地址码以构成访问存储器的地址。它们的优点是:第一,可以扩大寻址能力。因为同地址偏移量相比,基值寄存器的位数可以设置得更长,从而可在较大的存储空间中寻址。第二,可以方便对数组的访问,可以:实现程序的浮动。变址寻址可以使有效地址按变地寄存器的内容实现对数组元素的访问,基址方式同样可以实现地址的变换。

(5)RISC有哪些主要特征?

答:RISC的主要特征是简化的指令令系统,指令数较少,基址寻址方式少,指令格式少,指令子长度一致。

3.计算题

(1)可以有4×24= 64条。

(2)可以有64-60/16≈60。

(3)① 在直接寻址方式下,有效地址为指令地址段的值3000。

② 在立即数寻址方式下,操作数就在指令中,有效地址就是指令中操作数的地址2001。

③ 在相对寻址方式下,有效地址为PC的值加上地址段的值,指令执行之后PC的值为2002,有效地址为2002 + 3000= 5002。

④ 在寄存器R间接寻址方式下,有效地址为R1的值4000。

⑤ 在寄存器R变址寻址方式下,有效地址为从变址寄存器的值加上地址段的值,等于4000+3000= 7000。

4.设计题

(1)① 16位的指令中设置了3个地址码后还剩下16-3X4≈4位可作为操作码,这4位操作码可有16种编码,其中10个作为三地址指令的操作码后还剩下6个可在扩展后作为二地址码指令的操作码。二地址指令少了一个4位的地址码,这4位代码可作为操作码的扩展。每个剩下的操作码在扩展了4位之后可构成16个新的操作码,6个剩下的操作码总共可构成6×16=96个新的操作码,作为二地址指令的操作码。即还可以有96条一地址指令。

② 三地址指令的10个操作码为

0000

0001

0010

……

1001

二地址指令的96个操作码为1010 0000

1010 0001

1010 0010

1111 1111

(2)① 如果只增加60条二地址指令,那么二地址指令格式中还剩下96-60=36个代码。单地址指令少又比二地址指令少了一个4位的地址码,这4位代码又可作为操作码的扩展。每个剩下的操作码在扩展了4位之后可构成16个新的操作码,36个剩下的操作码总共可构成36×16=576个新的操作码,作为单地址指令的操作码。即还可以有576条单地址指令。

② 二地址指令的操作码的编码从1010 000到1101 1011,单地址指令的操作码编码为11011100 0000

11011100 0001

1101 1100 0010

……

1111 1111 1111

5.综合应用题

(1)直接寻址的二地址指令3条:

这3条指令的操作码为00、01、10;

变址寻址的一地址指令6条:

这6条指令的操作码为:11 000 ~ 11 101

寄存器寻址的二地址指令8条:

这8条指令的操作码为11 110 000 ~ 11 110 111;

直接寻址的一地址指令12条:

这12条指令的操作码为:11 111 0000 ~ 11 111 1011

零地址指令32条:

这32条指令的操作码为:11 111 1100 0000000 ~ 11 111 1100 0011111

(2)54条指令,故操作码需要6位。因为四种寻址方式,所以寻址特征位取2位,余下的8位作为形式地址D。其指令格式为

OP(6位) X(2位) D(8位)

寻址模式X定义如下:

X=00 直接寻址 有效地址E=D (256个单元)

X=01 立即寻址 D=操作数

X=10 变址寻址 有效地址E=(R)+D (64K)

X=11 相对寻址 有效地址E=(PC)+D (64K)

其中R为变址寄存器(16位)、PC为程序计数器(16位)。相对寻址和变址寻址中,D可正可负。

第6章

1.改错题

(1)累加器是一种寄存器,可用于数据累加其本身不具有加法运算的功能。

(1)单总线结构的CPU内部采用一条总线将运算器与各寄存器连接起来。专用通路结构的CPU内部不是采用一条总线将运算器与各寄存器连接起来。

(3)单总线结构的CPU将大部分部件用一条总线连接起来,总线中包含多条信号线。

(4)取指令操作是控制器的一个固定操作,不需要受到指令操作码的控制。

(5)在指令长度相同的情况下,所有取指令的操作都是相同的。

(6)在直接表示法编码的微指令中,多个微操作可以同时进行。

(7)逻辑运算不存在进位、借位,也没有溢出的情况。

(8)在采用微程序控制器的计算机中,每条指令由一段微程序来控制执行。

(9)控制器产生的所有控制信号称为控制字,加上顺序控制字段构成微指令。

(10)微程序控制器的特点是具有较强的灵活性。

2.综合应用题

(1)

① a为MDR,B为IR,c为MAR,d为PC;

② 取指令的数据通路为PC→MAR→主存→MDR→IR;

③ 存储器读的数据通路为MAR,主存M→MDR→ALU→ACC

存储器写的数据通路为MAR,ACC→MDR→主存M

④ 指令ADD Y 的数据通路为

Y→MAR→主存→MDR

ACC ALU→ACC

⑤ 指令STA Z的数据通路为Z→MAR,ACC→MDR→主存

(2)

移位器IR+1R0R1MDRALUABPCCD+1MR2R3MAR①

② 分析过程如下:

取指令地址送到IR并译码;

取操作数和目的操作数相加送到MAR,随之送到以前目的操作数在内存的地址。

将寄存器R2的内容加1

流程如下:

(PC)→MARM(MAR)→MDR→IR(PC)+1(R2)→MARM→MDR→D(C)+ (D)→MDR译码(R1)→MARM→MDR→CMDR→M(MAR)(R2)→D(D)+1→R2

(3)总的微指令条数=(4-1)*80+1=241条,每条微指令占一个控存单元,控存CM容量为2的N次幂,而241刚好小于256,所以CM的容量=256*32位=1KB

(4)水平型微指令由操作控制字段、判别测试字段和下地址字段三部分构成。因为微指令采用直接控制(编码)方式,所以其操作控制字段的位数等于微命令数,为28位。又由于后继微指令地址由下地址字段给出,故其下地址字段的位数可根据控制存储器的容量(512×40位)确定为9位(512=29)。

当微程序出现分支时,后续微指令地址的形成取决于状态条件——6个互斥的可判定外部条件,因此状态位应编码成3位。非分支时的后续微指令地址由微指令的下地址字段直接给出。微指令的格式:操作控制字段(28位)判别测试字段(3位)后继地址字段(9位)

第7章 总线

1.简答题

(1)总线有哪些物理形式?

答:根据连接线的物理特性计算机的系统总线可分为电缆式,主板式和背板式三种。电缆式总线用于连接不同的电路板,通常采用扁平电缆线,其中包括几十条信号线两端用一个接插件进行连接。主板式总线是电路板上的总线,许多计算机的主机板上的总线除了连接板上的部件之外,还采用插槽方式供电路板插人。如在广泛使用的PC机和工作站中。背板式总线则一般用在较大的计算机中,如网络服务器中,这种计算机有一个机箱。在机箱中设置一个插槽板。插槽板上全都是总线插槽以及连接插櫝的线路计算机的其他功能部件都以插板的方式插入背板。

(2)总线上有哪些信息传输方式?这些方式各有哪些特点?

答:在计算机总线中,传输信息有四种基本方式:串行传输、并行传输、复合传输和消息传输。串行传输方式是最简单的连接方式,在一条信号线上一位一位串行地对数据进行传输。并行传输对每个数据位都单独设置一条传输线,如果有不同的信息,则每种信息都用各自的信号线。复合传输方式采在同一条信号线上传输不同的信号。它可以提高总线信号线的利用率,但会影响总线的性能。消息传输方式把各种信息组合成一个有一定格式的数据包(消息)在总线进行传输。这种方式可一次发送更多的信息,进一步减少线路的数量,提高总线信号线的利用率。

(3)总线仲裁方法有哪些?

答:总线仲裁方法有集中式和分布式两种。集中式仲裁用一个裁决电路实现,裁决器可以放在总线的某个设备上,在有一个CPU的总线上一般可把裁决器放在CPU中。集中式总线仲裁的主要成决方法有链式查询方式、计数器定时查询方式和独立请求方式。分布式总线仲裁将仲裁功能分布在各个总线设备上,由各个设备协商进行仲裁,一般是固定优先级的。

(4)总线的异步通信有哪些握手方式?

答:在总线的异步传输方式下,根据握手信号的相互作用方式,可有非互锁半互锁和全互锁三种可能的方式。非互锁方式是比较简单的方式,握手信号经过固定的时间就自动撤消,这种方式有时不能保证握手信号正确到达对方。半互锁方式规定就绪信号在得到应答信号之后撤销,应答信号的长度是固定的。在全互锁方式中,双方的握手信号的建立和撒消都是相互锁定的。一方发出就绪信号后等到接收到对方的应答信号才撤销,对方的应答信号也等到就绪信号撤销后才撤销。在对方的应答信号能消后,才能发出下一个就绪信号,对方在接收到新的就绪信号后才可发出应答信号。

(5)异步串行通信方式如何传输信息?

答:异步串行通信方式一般以数据帧为单位传输信息。数据帧的格式和传输速率是事先设置好的。典型的数据帧中包括起始位、数据位、校验位、结束位和空闲位等。起始位是一个数据帧的开始。数据位以位串的形式发送。在UART中,规定数据位的低位在前高位在后,也就是先发送低位,后发送高位。校验位可以是偶校验,可以是奇校验,也可以没有校验。停止位的电平与起始位相反与空闲位相同。

(6)什么是集中式总线仲裁?有哪些仲裁方法?

答:集中式总线总裁采用一个专用的裁决部部件进行总线的裁决,主要有链式查询方式,计数器定时查询方式和独立请求方式。

(7)系统总线接口的基本功能是什么?

答:系统总线接口的基本功能是控制、数据缓存、状态设置、数据转换、整理和程序中断等。

(8)什么是同步通信方式?它适用于哪些场合?

答:总线的同步通信方式中在各设备之间采用统一的时钟进行定时。它操作简单,适用于系统中各设备操作速度固定而且致的场合。

2.计算题

(1)8*9600/(1+8+1+1.5)=6678.26 bps

(1)① 每个字为32位,总线在7个时钟周期传输了16个字节,传输率位:

R=16B/7*33MHZ=75.43*106B/S

② R=64B/19*33MHZ=111.16*106 B/S

第8章 外存及外围设备

1.改错题

(1)在同一个磁盘上,每一个磁道的容量都相等。

(2)在一个磁盘上,每一个磁道中的扇区数量一般是相等的。

(3)磁盘读写信息的最小单位是扇区。

(4)图形显示器能够显示文字。

(5)针式打印机的打印速度较慢。

(6)针式打印机可以打印图形。

(7)鼠标用于输入位移量信息。

2.计算题

(1)

① 4×2=8(个)

即磁盘内共有8个存储面

② 4970

磁盘内共有4970个柱面

③ 8×4970×127×512=2 585 354 240 B

④ 127×512×7200/60= 7 802 880 B/s

(2)存取时间=寻道时间+延迟时间+传输时间

存取一个扇区的平均延迟时间为旋转半周的时间,即为(60/7200)/2=4.17 ms

传输时间为(60/7200)/1000=0.01 ms

因此,访问一个扇区的平均存取时间为8+4.17+0.01=12.18 ms

第9章

1.改错题

(1)中断I/O方式是一种程序控制的I/O方式。

(2)程序控制的输入输出方式分为两种,一种是程序查询的方式,另一种是中断方式。

(3)中断服务程序属于操作系统模块。

(4)中断向量就是中断服务程序的入口地址的地址。

(5)中断不仅由外围设备的请求引起,还可以由CPU内部的异常情况或者自陷指令引起。

(6)多级中断是多重中断的一种实现方式。

(7)通道比DMA具有更强的独立处理数据输入输出的功能。

(8)DMA是建立在中断基础之上的机制,它不能代替中断机制。

2.简答题

(1)独立编址法和统一编址法之间有什么区别?

答:在统一编址法中将输入输出设备中的控制寄存器、数据寄存器、状态寄存器和内存单元一样看待,可用访问内存的指令来访问输入输出设备接口中的某个寄存器。统一编址法的优点是可以利用许多访存指令进行输人输出操作。它的缺点是外设占用了存储器的地址空间,减少了有效存储器空间,而且会影响存储器管理和存储空间的扩展。

独立编址法中采用专门的地址空间和控制信号进行输入输出操作,内存的地址空间和输入输出设备的地址空间分开,需要使用专门的输入输出指令。访问存储器和访问外围设备采用不同的指令,两者不会产生混淆。独立编址法需要增加指令的数量,使CPU的指令处理比较复杂。

(2)基本的输入输出接口包括哪些组成部分?在采用中断方式的输入输出接口中需增加哪些部件?

答:基本的输入输出接口包括数据缓冲寄存器、控制电路(包括地址译码器)、数据寄存器、状态寄存器、命令寄存器。

在采用中断方式的输入输出接口中,除了基本的输入输出接口部件外,还应有产生中断请求的电路。采用中断方式的接口能向CPU发出中断请求信号IR;能在收到CPU的中断许可信号IG后发出中断向量,引导CPU在响应中断请求后转入相应服务程序的地址;能够像一般接口一样接收CPU的命令、提供状态信息以及进行数据传输。

(3)什么是中断?什么是中断系统?

答:中断是一种在发生了一个需要由CPU处理的事件时调用相应的处理程序的过程,在处理程序执行完成后再返回到原来的程序继续执行。输入输出中断是由外设发出的需要处理的请求事件。中断系统是由软硬件构成的实现中断完整的机制,硬件实现中断的裁决、现场的保护等,软件实现中断服务程序。

(4)中断的过程与子程序调用有哪些区别?

答:中断的过程类似于子程序的调用,其区别主要有:

① 中断服务程序与中断时CPU正在运行的程序是相互独立的,它们之间没有确定的关系。子程序调用时转入的子程序与正在执行的程序段是同一个程序的两部分。

② 中断一般是由硬件的信号产生的,除了软件中断。子程序调用是由转移指令引起的。

③ 中断服务程序的地址是由硬件决定的。子程序调用由转移子程序的指令在地址码中

指定子程序地址。

④ 中断过程中要存储所有的状态信息,子程序调用时可以只保存PC的值。

⑤ 中断程序调用的过程包括确定中断的原因、对多个同时发生的中断进行裁决等,而在一般子程序调用中则没有这种操作。

(5)在单重中断方式下,CPU响应中断的步骤是什么?

答:在单重中断方式下,CPU响应中断的步骤是关中断、保存现场信息、判别中断条件、执行中断服务程序、恢复现场信息、开中断。

3.计算题

(1)

① CPU每秒对鼠标进行30次查询,所需的时钟周期数为

100×30=3000

CPU的时钟频率为50MHz,即每秒50×106个时钟周期,故对鼠标的查询占用CPU的时间比率为

[3000/(50×106)] ×100%=0.006%

可见,对鼠标的查询基本不影响CPU的性能。

② 对于硬盘,每32位(4B)被CPU查询一次,故每秒查询次数为

2×220B/4B=512K

则每秒查询的时钟周期数为

100×512×1024=52.4×106

故对硬盘的查询占用CPU的时间比率为

[52.4×106/(50×106)] ×100%=105%

可见,即使CPU将全部时间都用于对硬盘的查询也不能满足磁盘传输的要求,因此CPU一般不采用程序查询方式与磁盘交换信息。

(2)

① 采用程序查询方式,硬盘传输速率为1 MB/s,一个字为32bit=4B,每秒查询的次数为1MB/4B=2.5×105,每秒查询所需的总时钟周期数为2.5×105×100=2.5×107,而CPU的时钟频率为50MHz,故I/O查询所花费的时间比率为2.5x107/50M=50%

② 采用中断方式时,每传输一个字便进行一次中断处理。

每传输一个字的时间为32bit/(1MB/s)=4×10-6s

CPU的时钟周期为1s/(50MHz)=0.02s/(1M)=0.02×10-6s

则花费的时间比率为(80×0.02×10-6)/(4×10-6)=40%

③ 采用DMA方式时,输入输出不需要CPU干预,CPU所花时间仅为启动时间和后处理时间,也就是说,传输一次数据CPU所花时间为(1000+500)个时钟周期,等于30µs。

DMA的平均传送长度为4KB,即启动一次DMA传输4KB的数据,所以所花时间为4KB/(1MB/s)=4ms=4000µs。

故,CPU为传送硬盘所花费时间的比率为30µs /4000µs =0.75%。

(3)字节多路通道的传输速率应大于连接的外围设备的最大传输速率之和,即

8×150KB/s+ 80×9600/8B/s= 1200K+96000= 1293.75KB/s

本文标签: 地址指令数据方式中断