计算机组成原理4

计算机组成原理4
计算机组成原理4

第四章指令系统

计算机指令就是计算机硬件能够识别并直接执行的操作命令。指令系统是指一台计算机所能执行的全部的指令称为该机的指令系统。指令系统表明了计算机的硬件功能,从而决定如何使用计算机(编译软件),而CPU的基本任务是解释执行指令代码,这又决定了硬件逻辑设计,因此说指令系统是CPU硬件与软件的界面。

一、指令格式

计算机指令编码的格式称为指令格式。

指令格式指定指令中编码字段的个数、个字段的位数,以及各字段的编码方式,以便于指令进行译码。

指令由操作码(OP)和地址码(AD)两部分构成。操作码说明指令所要完成的操作,地址码说明指令操作对象(或者是操作数或者是操作数的地址)。通常,地址码很少直接给出操作数本身,多是指明操作数的来源,有的还要指明运算结果保存于何处,以及下一条指令从何处取等问题。在指令格式设计时应该考虑以下四点:

①指令长度:指令长多少位,是定长度还是变长度

②操作码:操作码结构需要多少位,位数固定还是可扩展,是一段操作码还是若干段组合

③地址结构:一条指令涉及到哪些地址,在指令中给出哪些地址,哪些地址隐含约定。

④寻址方式:如何获得操作数的地址,是直接、间接还是经过计算获得。1.指令长度

字长:计算机能直接处理的二进制数据的位数。他是计算机的一个重要指标,字长决定着计算机的运算精度。

指令的长度是由操作码的长度与地址码的长度共同作用的,地址码的长度决定了指令的直接寻址能力。指令长度应该是字节的整数倍,指令长度有定长(如模型机)和不定长(PC机)之分。指令长度与机器字长没有固定关系,一般情况指令长度大于或等于字长。指令长度越长,指令所能表示的操作信息和地址信息就越多,指令的功能就越丰富。但是同时指令越长,指令所占存储空间越多,读指令的时间就越长,CPU的译码电路就越复杂。因此早期的计算机(如NOVA系列)采用的是16位定长指令格式。目前的RISC系统也建议尽可能的采用短指令长度。但在实际应用中我们发现,一个指令系统中的指令长度是很难固定的,因此现代计算机广泛采用变长度指令长度。如Inter系列,8088采用1-6个字节变长指令格式,它的第一个字节是操作码,第二个字节是寻址方式和寄存器号,其后两个字节是位移量或是立即数,或再跟两个字节的立即数。随着Inter系列的发展,指令长度越来越长,80486指令长度达到15个字节。由于指令的长度不同就会面临指令对齐的问题,比如一台32位机,保存三条指令其长度分别是4,6,4

如此存储时,对于③指令要两次取指令,

影响CPU的速度,

改为

数据存储分为小数端存储和大数端存储两种。

小数端存储,低位在低地址,读得数据是1234H,

XXX0H 34H 如PC机。

XXX1H 12H 大数端存储,高位在低地址,读得数据是3412H

2.操作码

指令操作码的长度决定了指令系统中完成不同操作的指令条件。操作码分为定长和不定长两类。定长操作码的指令译码电路简单,所以受RISC所推崇,也被广泛应用。但是定长操作码不利于指令的升级兼容。例如,指令操作码长为6位共可有64条指令,如果第一代机有63条指令,第二代升级时只能加1条指令,那是不可接受的。而用变长就不受这个限制。

不定长操作码(扩展操作码):

例1.指令中的操作码个数不同,而又希望指令长度相同,则采用此法。某机器指令格式全长16位,操作码4位,

现在打算在原有基础上修改指令系统使其有15条3地址指令,15条2地址指令,15条1地址指令,16条0地址指令,(现在有15条3地址指令,14条2地址指令,31条1地址指令,16条0地址指令。)能否分配,如何分配?例:第一代机器60条指令(等长),第二代加32条指令(等长)如何分配?第一代:000000——111011

第二代:111100000——111111111

在实际机器中,可采取不同的具体做法。例如PDP—11,指令字长16位,高4位做基本操作码,但是取其中的四种组合0000,0111,1000,1111作为扩展操作码标志,可将操作码分别扩展成7位,8位,10位,12位,13位,16位等多种情况,其中16位指令的操作码可达几百种。一般情况下,考虑到CPU电路的复杂度,变长指令一般长度为2种,至多3种,极少象PDP—11这样。

指令长短的分配原则的一个重要条件是指令使用概率,考虑到操作码压缩的问题,建议采用哈夫曼编码。

0.40*1+0.30*2+0.15*3+0.05*5+0.04*5+0.03*5+0

.03*5=2.2 由于考虑到指令长度种类不易过多,多采用变形哈夫曼编码。

3.地址结构

⑴四地址指令

行一条指令,PC+1,所以省去了“下条指令地址项”

于PC 机来说,目的操作数在前 ADD AX ,BX ;而对于PDP-11系列机来说,他们的目的操作数在后。

⑷单地址指令①

此类单地址指令只有一个操作数,即目的操作数;如 INC ,DEC ,NOT ,NEG

此类单地址指令只有一个操作数,是源操作数;如 MUL ,DIV ;此类指令本应该是二操作数指令,但是由于某种设计原因,将其中的一个操作数隐含在操作码中(系统约定)。

如 PUSHF ,POPF

②真正的无操作数指令,如HLT,NOP(空操作)

4.寻址方式

寻址方式指的是确定本条指令的数据地址及下一条要执行的指令地址的方法,所以寻址方式包括指令的寻址方式和操作数的寻址方式。指令的寻址方式有两种:顺序寻址和转移寻址。顺序寻址采用PC+1的形式取下一条指令,除了顺序寻址都属于转移寻址方式。

操作数的寻址方式有很多种,下面将介绍常用的几种寻址方式。

注意:操作数的寻址方式与操作数有关,理论上讲,操作数的寻址方式应该在地址码部分,但是实际情况是表示操作数的寻址方式的编码有的是在地址码部分如PDP-11系列机,也有的是在指令的操作码部分中表示操作数的寻址方式,如IBM370,他的寻址方式在指令的前两位。下面将举例说明操作数的寻址方式,此处为了方便起见,假设所有操作都是字节操作,目的操作数都在寄存器中。

操作数寻址方式:

⑴立即数寻址方式:指令中的操作对象是一个操作数

load R0, #05H ;将05H送入R0( R0 =05H)

add R0, #30H ;将30H与R0的内容相加,和送入R0( R0 =35H)

⑵寄存器寻址方式:指令中的操作对象是寄存器,操作数在寄存器中

load R2, R0;将R0的内容送入R2( R2 =35H)

add R2, R0;将R0的内容与R2的内容相加,和送入R2( R2 =6AH)

⑶直接寻址方式:指令中的操作对象是操作数的地址,操作数在存储器中load R0, 05H ; R0 =12H

add R0, 30H ; R0 =78H 05H 12H

30H 66H

⑷寄存器间接寻址方式:指令中的操作对象是寄存器,寄存器的内容是操作数的地址

load R1, (R0);假设R0=78H, R1 =10H 78H 10H

add R1, (R0); R1 =20H

⑸间接寻址方式:指令中的操作对象是操作数的地址的地址

load R0, (05H); R0 =31H

add R0, (30H); R0 =79H 05H 12H

12H 31H

30H 66H

66H 48H

⑹基址寻址方式:

机器设有一个基址寄存器R b,指令中的操作对象一个地址,操作数的地址由基址寄存器的内容与指令中的位移量相加而成,设基址寄存器R b=1000H

load R0, 100H(R b); R0 =20H

add R0, -200H(R b); R0 =56H 0C00H 36H

1100H 20H

⑺变址寻址方式:

机器设有一个变址寄存器R d,指令中的操作对象一个地址,操作数的地址由变址寄存器的内容与指令中的位移量相加而成,在执行操作后,变址寄存器将自动加1或减1。设变址寄存器R d=500H,自增型寄存器。

load R0, -100H(R d); R0 =60H,R d =501H

add R0, 200H(R d); R0 =93H,R d =502H 400H 60H

700H 32H

33H

变址寻址方式利于数组操作。

⑻相对寻址方式:

指令中的操作对象一个地址,操作数的地址由指令自己的地址与指令中的位移量相加而成。设本指令的地址为A00H。

load R0, -100H(PC); R0 =20H

add R0, 200H(PC); R0 =57H 900H 20H

C00H 36H

37H

⑼页面寻址方式:

机器中的PC寄存器参与寻址,指令中的操作对象一个地址,操作数的地址由PC的高位与指令中的位移量拼接而成。设PC=1000H,取二进制高8位。

load R0, 200H,PC ; R0 =30H

100200H 30H

⑽堆栈寻址方式

堆栈是主存中一个连续的存储区域,对数据的存取按一种特定的顺序进行。堆栈只允许存储区的一端加入/移出数据。堆栈工作有两种方式:向上生成(栈底在高位地址)和向下生成(栈底在低位地址)。PC机的堆栈是向上生成的。堆栈设有堆栈寄存器SP,SP作为堆栈指针,其初值是栈底,随着堆栈的工作SP进行加减变化。

例如:PC机的堆栈

入栈:PUSH (SP)←(SP)- 2

((SP)+1,(SP))←数据

出栈:POP 数据←((SP)+1,(SP))

(SP)←(SP)+ 2

⑾块寻址方式:

块寻址方式在指令中指出数据块的首地址和数据块的长度。用于DMA工作方式。

例:已知某时刻机器中 R1=10H

⑴ load R0, R1; R0 = 10H

20H 10H ⑵ load R0, (R1); R0= 20H

⑶ load R0, 10H ; R0 = 20H

30H 20H ⑷ load R0, (10H) ; R0 = 30H

⑸ load R0, #10H ; R0 = 10H

40H 30H ⑹设此时基址寄存器R b = 10H,变址寄存器(自增) R d = 20H load R0, 10H(R b); R0 =30H R b = 10H

load R0, 10H(R d); R0 =40H R d = 21H

⑺设此指令的的地址为20H

load R0, -10H(PC); R0 =20H

二、指令类型

1.算术逻辑运算,如:add, sub, and, or, not

2.移位操作,如:shl, shr, sal, sar, rol, ror

3. 浮点数运算(要用到80387协处理器)

4.十进制运算指令,如:daa, das (BCD码调整)

5.字符串处理指令,如:cmps(串比较)

6.数据传送指令,如:mov

7.转移类指令

⑴无条件转移和条件转移

通常,计算机中有N, Z, V, C, P 五个标志位

N = 1 表示结果为负

Z = 1 表示结果为0

C = 1 表示结果有进位或是无符号数比较小于(有借位)

V = 1 表示结果溢出

P = 1 表示结果有奇数个1

C+Z = 1 表示无符号数比较小于或等于

N⊕V = 1 表示有符号数比较小于

N⊕V+Z = 1 表示有符号数比较小于或等于

以下是用一个串加电路,表示如何得到N, Z, V, C, P 五个标志位

C = C4⊕C3⊕C0

Z = S4+S3+S2+S1+S0

N = S4

V = C4⊕C3

P = S4⊕S3⊕S2⊕S1⊕S0

⑵调用指令和返回指令,如:call, ret

⑶陷阱与陷阱指令,如:int

8. 堆栈及堆栈操作指令,如:push, pop

9. 输入输出指令,如:in, out

10.特权指令

11.其它指令:向量指令,多处理机指令,控制指令

三、复杂指令系统(CISC)与精简指令系统(RISC)

1.指令系统的性质

⑴完备性

指令系统的完备性是指用汇编语言编制各种程序时,指令系统直接提供的指令足够使用,而不必用软件实现。(注:一台机器最基本也是必不可少的指令并不多,大多数指令可以用软件实现)例如,乘指令,可以用软件实现,但是指令系统中有乘法指令的系统就要比没有的更具有完备性。

⑵有效性

指令系统的有效性是指利用该指令系统所编制的程序能够高效率的运行。高效率主要表现在占存储空间小,执行速度快两个方面。

⑶规整性

指令系统的规整性包括指令系统的对称性,匀齐性和指令格式与数据格式的一致性。

指令的对称性是指在指令系统中所有的寄存器和存储单元都可以同等对待,所有的指令都可以使用各种寻址方式。他对简化汇编程序设计,提高程

序的可读性有利。

指令的匀齐性是指一种操作性质的指令可以支持各种数据类型,它可以使汇编语言程序设计与高级语言编译程序无需要考虑数据类型而选用指令,因而提高了编程效率。

指令格式与数据格式的一致性是指令长度与数据长度有一定关系,以方便存储和处理。指令长度是字节的整数倍,而数据长度一般为1、2、4、8个字节。

⑷兼容性

指令的兼容性主要要求指令应该具有向上兼容,即低档次机器可以运行的程序在高档次机器上也可以运行。

2.复杂指令系统(CISC)

基于指令系统的上述四个性质,同时由于硬件成本下降,软件成本上升,所以在指令系统中增加更多指令来提高操作系统的效率,缩短指令系统与高级语言的语义差别,以便于高级语言的编译,从而降低软件成本。其缺点是:造成硬件过于复杂。

3.精简指令系统(RISC)

指令系统庞大了,但是统计表明,机器所执行的指令80%以上是简单指令,因此提出精简指令系统以求优化的思想。优化:提高机器性能,提高CPU 速度。

一个程序的执行时间为P,高级语言编译后在机器上运行的指令数为I,执行每条指令所用的平均周期数为CPI,每个机器周期为T,则有P = I * CPI * T,为了减小I、CPI、T 应采用以下七点。

⑴选取使用频度高的简单指令,以及有用但不复杂的指令。

⑵指令长度固定,指令格式种类少,寻址方式种类少。从而缩短译码时间。

⑶只有存取数指令访问存储器,其他指令在寄存器间进行(可以采用Cache)。读写存储器的时间比较长,只有必须时才读写存储器,以提高CPU效率。

⑷CPU中通用寄存器的数量要多

⑸大部分指令在一个机器周期内完成。(采用流水线方式,注意相关与转移)

⑹以硬布线控制逻辑为主,少用或者不用微码控制。

⑺通过精简指令和优化设计编译程序,以简单有效的支持高级语言实现。

计算机组成原理_第四版课后习题答案(完整版)[]

第一章 1.比较数字计算机和模拟计算机的特点 解:模拟计算机的特点:数值由连续量来表示,运算过程是连续的;数字计算机的特点:数值由数字量(离散量)来表示,运算按位进行。两者主要区别见 P1 表 1.1 。 2.数字计算机如何分类?分类的依据是什么? 解:分类:数字计算机分为专用计算机和通用计算机。通用计算机又分为巨型机、大型机、 中型机、小型机、微型机和单片机六类。分类依据:专用和通用是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。 通用机的分类依据主要是体积、简易性、功率损耗、性能指标、数据存储容量、 指令系统规模和机器价格等因素。 3.数字计算机有那些主要应用?(略) 4.冯 . 诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分? 解:冯 . 诺依曼型计算机的主要设计思想是:存储程序和程序控制。存储程序:将解题的程序(指令序列)存放到存储器中;程序控制:控制器顺序执行存储的程序,按指令功能控制全机协调地完成运算任务。 主要组成部分有:控制器、运算器、存储器、输入设备、输出设备。 5.什么是存储容量?什么是单元地址?什么是数据字?什么是指令字? 解:存储容量:指存储器可以容纳的二进制信息的数量,通常用单位KB MB GB来度量,存储 容 量越大,表示计算机所能存储的信息量越多,反映了计算机存储空间的大小。单元地址:单元地址简称地址,在存储器中每个存储单元都有唯一的地址编号,称为单元地 址。 数据字:若某计算机字是运算操作的对象即代表要处理的数据,则称数据字。指令字:若某计算机字代表一条指令或指令的一部分,则称指令字。 6.什么是指令?什么是程序? 解:指令:计算机所执行的每一个基本的操作。程序:解算某一问题的一串指令序列称为该问题的计算程序,简称程序。 7.指令和数据均存放在内存中,计算机如何区分它们是指令还是数据? 解:一般来讲,在取指周期中从存储器读出的信息即指令信息;而在执行周期中从存储器中读出的信息即为数据信息。

计算机组成原理第四章作业答案

第四章作业答案 解释概念:主存、辅存,Cache, RAM, SRAM, DRAM, ROM, PROM ,EPROM ,EEPROM CDROM, Flash Memory. 解:1主存:主存又称为内存,直接与CPU交换信息。 2辅存:辅存可作为主存的后备存储器,不直接与CPU交换信息,容量比主存大,速度比主存慢。 3 Cache: Cache缓存是为了解决主存和CPU的速度匹配、提高访存速度的一种存储器。它设在主存和CPU之间,速度比主存快,容量比主存小,存放CPU最近期要用的信息。 4 RAM; RAM是随机存取存储器,在程序的执行过程中既可读出信息又可写入信息。 5 SRAM: 是静态RAM,属于随机存取存储器,在程序的执行过程中既可读出信息又可写入信息。靠触发器原理存储信息,只要不掉电,信息就不会丢失。 6 DRAM 是动态RAM,属于随机存取存储器,在程序的执行过程中既可读出信息又可写入信息。靠电容存储电荷原理存储信息,即使电源不掉电,由于电容要放电,信息就会丢失,故需再生。 7 ROM: 是只读存储器,在程序执行过程中只能读出信息,不能写入信息。 8 PROM: 是可一次性编程的只读存储器。 9 EPROM 是可擦洗的只读存储器,可多次编程。 10 EEPROM: 即电可改写型只读存储器,可多次编程。 11 CDROM 即只读型光盘存储器。 12 Flash Memory 即可擦写、非易失性的存储器。 存储器的层次结构主要体现在什么地方?为什么要分这些层次?计算机如何管理这些层次? 答:存储器的层次结构主要体现在Cache—主存和主存—辅存这两个存储层次上。 Cache—主存层次在存储系统中主要对CPU访存起加速作用,即从整体运行的效果分析,CPU访存速度加快,接近于Cache的速度,而寻址空间和位价却接近于主存。 主存—辅存层次在存储系统中主要起扩容作用,即从程序员的角度看,他所使用的存储器其容量和位价接近于辅存,而速度接近于主存。 综合上述两个存储层次的作用,从整个存储系统来看,就达到了速度快、容量大、位价低的优化效果。 主存与Cache之间的信息调度功能全部由硬件自动完成。而主存—辅存层次的调度目前广泛采用虚拟存储技术实现,即将主存与辅存的一部份通过软硬结合的技术组成虚拟存储器,程序员可使用这个比主存实际空间(物理地址空间)大得多的虚拟地址空间(逻辑地址空间)编程,当程序运行时,再由软、硬件自动配合完成虚拟地址空间与主存实际物理空间的转换。因此,这两个层次上的调度或转换操作对于程序员来说都是透明的。

计算机组成原理第五版 白中英(详细)第4章习题参考答案

第4章习题参考答案 1.ASCII码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理?为什么? 答:不合理。指令最好半字长或单字长,设16位比较合适。一个字符的ASCII 是7位,如果设计主存单元字长为32位,则一个单元可以放四个字符,这也是可以的,只是在存取单个字符时,要多花些时间而已,不过,一条指令至少占一个单元,但只占一个单元的12位,而另20位就浪费了,这样看来就不合理,因为通常单字长指令很多,浪费也就很大了。 2.假设某计算机指令长度为32位,具有双操作数、单操作数、无操作数三类指令形式,指令系统共有70条指令,请设计满足要求的指令格式。 答:字长32位,指令系统共有70条指令,所以其操作码至少需要7位。 双操作数指令 单操作数指令 无操作数指令 3.指令格式结构如下所示,试分析指令格式及寻址方式特点。 答:该指令格式及寻址方式特点如下: (1) 单字长二地址指令。 (2) 操作码字段OP可以指定26=64种操作。 (3) 源和目标都是通用寄存器(可分指向16个寄存器)所以是RR型指令,即两个操作数均在寄存器中。 (4) 这种指令结构常用于RR之间的数据传送及算术逻辑运算类指令。 4.指令格式结构如下所示,试分析指令格式及寻址方式特点。 15 10 9 8 7 4 3 0 答:该指令格式及寻址方式特点如下: (1)双字长二地址指令,用于访问存储器。 (2)操作码字段OP可以指定26=64种操作。 (3)RS型指令,一个操作数在通用寄存器(选择16个之一),另一个操作数 在主存中。有效地址可通过变址寻址求得,即有效地址等于变址寄存器(选择16个之一)内容加上位移量。

计算机组成原理第八章课后部分答案

计算机组成原理第八章课后部分答案

8.1CPU 有哪些功能?画出其结构框图并简要说明每个部件的作用。 解:CPU的主要功能是执行存放在主存储器中的程序即机器指令.CPU是由 控制器和运算器. ALU:实现算逻运算 寄存器:存放操作数 CU :发出各种操作命令序列的控制部件 中断系统:处理异常情况和特殊请求 8.2什么是指令周期?指令周期是否有一个固定值?为什么?解:指令周 期:指取出并执行完一条指令所需的时间。 由于计算机中各种指令执行所需的时间差异很大,因此为了提高 CPU 运行效率,即使在同步控制的机器中,不同指令的指令周期长 度都是不一致的,也就是说指令周期对于不同的指令来说不是一个 固定值。

8.3画出指令周期的流程图,分别说明图中每个子周期的作用。 解:

指令周期流程图 取指周期:取指令间址周期:取有效地址执行周期:取操作数(当指令为访存指令时)中断周期:保存程序断点 8.4设CPU内有这些部件:PC、IR、SP、AC、MAR、MDR、CU。 (1)画出完成简洁寻址的取数指令“ LDA@”X(将主存某地址单元的内容取至AC中)的数据流(从取指令开始)。 (2)画出中断周期的数据流。解:CPU中的数据通路结构方式有直接连线、单总线、双总线、三总线等形式,目前大多采用总线结构,直接连线方式仅适用于结构特别简单的机器中。 下面采用单总线形式连接各部件,框图如下:

MAR PC Bus CU IR SP AC 线 址 地 MDR 1) 图: MDR→AC 2)中断周期流程图如 下:

SP-1→SP 8.7 什么叫系统的并行性?粗粒度并行和细粒度并行有什么区别?解:并行 性:包含同时性和并发性。同时性指两个或两个以上的事件在同一时刻发生,并发性指两个或多个事件在同一时间段发生。即在同一时刻或同一时间段内完成两个或两个以上性质相同或性质不同的功能,只要在时间上存在 相互重叠,就存在并行性。 粗粒度并行是指多个处理机上分别运行多个进程,由多台处理机合作完成一个程序,一般算法实现。 细粒度并行是指在处理机的指令级和操作级的并行性。 8.8 什么是指令流水?画出指令二级流水和四级流水的示意图,它们中哪一个 更能提高处理器速度,为什么?解:指令流水:指将一条指令的执行过程分为n 个操作时间大致相等的阶段,每个阶段由一个独立的功能部件来完成,这样n 个部件可以同时执行n 条指令的不同阶段,从而大大提高 CPU的吞吐率。 指令二级流水和四级流水示意图如下: (3)CPU 在什么条件、什么时候、以什么方式来响应中断

计算机组成原理第五版 白中英(详细)第5章习题参考答案

第5章习题参考答案 1.请在括号内填入适当答案。在CPU中: (1)保存当前正在执行的指令的寄存器是(IR ); (2)保存当前正在执行的指令地址的寄存器是(AR ) (3)算术逻辑运算结果通常放在(DR )和(通用寄存器)。 2.参见图5.15的数据通路。画出存数指令“STO Rl,(R2)”的指令周期流程图,其含义是将寄存器Rl的内容传送至(R2)为地址的主存单元中。标出各微操作信号序列。 解: STO R1, (R2)的指令流程图及微操作信号序列如下:

STO R1, (R2) R/W=R DR O, G, IR i R2O, G, AR i R1O, G, DR i R/W=W 3.参见图5.15的数据通路,画出取数指令“LAD (R3),R0”的指令周期流程图,其含义是将(R3)为地址主存单元的内容取至寄存器R2中,标出各微操作控制信号序列。 解: LAD R3, (R0)的指令流程图及为操作信号序列如下:

PC O , G, AR i R/W=R DR O , G, IR i R 3O , G, AR i DR O , G, R 0i R/W=R LAD (R3), R0 4.假设主脉冲源频率为10MHz ,要求产生5个等间隔的节拍脉冲,试画出时序产生器的逻辑图。 解:

5.如果在一个CPU 周期中要产生3个节拍脉冲;T l =200ns ,T 2=400ns ,T 3=200ns ,试画出时序产生器逻辑图。 解:取节拍脉冲T l 、T 2、T 3的宽度为时钟周期或者是时钟周期的倍数即可。所以取时钟源提供的时钟周期为200ns ,即,其频率为5MHz.;由于要输出3个节拍脉冲信号,而T 3的宽度为2个时钟周期,也就是一个节拍电位的时间是4个时钟周期,所以除了C 4外,还需要3个触发器——C l 、C 2、C 3;并令 211C C T *=;321C C T *=;313C C T =,由此可画出逻辑电路图如下:

计算机组成原理-4.pdf

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

计算机组成原理第四章课后题参考答案教程文件

计算机组成原理第四章课后题参考答案

第四章课后题参考答案 3.指令格式结构如下所示,试分析指令格式及寻址方式特点。 解:指令格式及寻址方式特点如下: ① 单字长二地址指令; ② 操作码OP可指定=64条指令; ③ RR型指令,两个操作数均在寄存器中,源和目标都是通用寄存器(可分别指定16个寄存器之一);

④ 这种指令格式常用于算术逻辑类指令。 4.指令格式结构如下所示,试分析指令格式及寻址方式特点。 解:指令格式及寻址方式特点如下: ① 双字长二地址指令; ② 操作码OP可指定=64条指令; ③ RS型指令,两个操作数一个在寄存器中(16个寄存器之一),另一个在存储器中(由变址寄存器和偏移量决定),变址寄存器可有16个。

6.一种单地址指令格式如下所示,其中I为间接特征,X为寻址模式,D为形式地址。I,X,D组成该指令的操作数有效地址E。设R为变址寄存器,R1 为基值寄存器,PC为程序计数器,请在下表中第一列位置填入适当的寻址方式名称。 解:① 直接寻址 ② 相对寻址 ③ 变址寻址 ④ 基址寻址 ⑤ 间接寻址 ⑥ 基址间址寻址 12. 根据操作数所在位置,指出其寻址方式(填空): (1)操作数在寄存器中,为(A)寻址方式。 (2)操作数地址在寄存器,为(B)寻址方式。 (3)操作数在指令中,为(C)寻址方式。 (4)操作数地址(主存)在指令中,为(D)寻址方式 (5)操作数的地址,为某一寄存器内容与位移量之和可以是(E,F,G)寻址方式。 解:A:寄存器直接(或寄存器); B:寄存器间接; C:立即;

D:直接; E:相对; F:基址;G:变址 补充一下,间接寻址可以表述为: 操作数地址(主存)在内存中 或者 操作数地址的地址(主存)在指令中

计算机组成原理课后复习资料白中英主编第五版立体化教材

计算机组成原理第五版习题答案计算机组成原理第五版习题答案 第一章 (1) 第二章 (3) 第三章 (14) 第四章 (19) 第五章 (21) 第六章 (27) 第七章 (31) 第八章 (34) 第九章 (36)

1

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

67计算机组成原理4

67计算机组成原理4 一、单选题(共15题,共15分) 1. I/O编址方式通常可分统一编址和独立编址,。(1分) A.统一编址是将I/O地址看作是存储器地址的一部分,可用专门的I/O指令对设备进行访问 B.独立编址是指I/O地址和存储器地址是分开的,所以对I/O访问必须有专门的I/O指令 C.统一编址是指I/O地址和存储器地址是分开的,所以可用访存指令实现CPU对设备的访问 D.独立编址是将I/O地址看作是存储器地址的一部分,所以对I/O访问必须有专门的I/O指令 2. 64.微程序控制器中,微程序的入口地址是由形成的。(1分) A.机器指令的地址码字段 B.微指令的微地址码字段 C.机器指令的操作码字段 D.微指令的微操作码字段 3. 50.ROM与RAM的主要区别是_____。(1分) A.断电后,ROM内保存的信息会丢失,RAM则可长期保存而不会丢失 B.断电后,RAM内保存的信息会丢失,ROM则可长期保存而不会丢失 C.ROM是辅助存储器,RAM是主存储器 D.ROM是主存储器,RAM是辅助存储器 4. 中央处理器(CPU)是指。(1分) A.运算器 B.控制器 C.运算器和控制器 D.运算器和存储器 5. 57.下列说法中是正确的。(1分) A.指令周期等于机器周期 B.指令周期小于机器周期 C.指令周期大于机器周期 D.指令周期是机器周期的两倍 6. 61.设计微程序的人员是。(1分) A.硬件设计人员 B.系统软件人员 C.应用软件人员 D.用户 7. 在存储器堆栈中,保持不变的是。(1分) A.栈顶 B.栈指针 C.栈底 D.栈中的数据 8. 56.微操作信号发生器的作用是。(1分) A.从主存中取出指令 B.完成指令操作码的分析功能 C.产生控制时序 D.产生各种微操作控制信号 9. 73.在DMA传送方式中,由发出DMA请求。(1分) A.外部设备 B.DMA控制器 C.CPU D.主存 10. 68.主机与设备传送数据时,采用,主机与设备是串行工作的。(1分) A.程序查询方式 B.中断方式 C.DMA方式 D.通道方式

计算机组成原理第四章单元测试题

存储系统(一)单元测验 1、CPU可直接访问的存储器是 A、磁盘 B、主存 C、光盘 D、磁带 2、主存储器和CPU之间增加高速缓冲存储器(Cache)的目的是 A、提高存储系统访问速度 B、简化存储管理 C、扩大主存容量 D、支持虚拟存储技术 3、存储字长是指 A、存储器地址线的二进制位数 B、存放在一个存储单元中的二进制位数 C、存储单元总数 D、寄存器的数据位数 4、计算机字长32位,主存容量为128MB,按字编址,其寻址范围为 A、0 ~ 32M-1 B、0 ~ 128M-1 C、0 ~ 64M-1 D、0 ~ 16M-1 5、字位结构为256Kx4位SRAM存储芯片,其地址引脚与数据引脚之和为 A、18 B、22 C、24 D、30 6、某SRAM芯片,存储容量为64K×16位,该芯片的地址线和数据线数目分别为 A、64,16 B、16,64 C、16,16 D、64,64 7、假定用若干块4K *4位的存储芯片组成一个8K*8位的存储器,则地址0B1F所在芯片的最小地址是 A、0000H B、0600H C、0700H D、0B00H

8、计算机系统中的存贮器系统是指 A、RAM和ROM存贮器 B、Cache C、磁盘存储器 D、Cache、主存贮器和外存贮器 9、用若干片2K′4位的存储芯片组成一个8K′8位的存储器,则地址0B1FH所在的芯片在全局的最大地址是 A、0CFFH B、0BFFH C、1BFFH D、0FFFH 10、动态存储器刷新以()为单位进行 A、存储单元 B、行 C、列 D、字节 11、下列存储器类型中,速度最快的是 A、DRAM B、Flash Memory C、SRAM D、EPROM 12、某计算机字长32位,下列地址属性中属于按双字长边界对齐的是 A、存储器地址线低三位全部为0 B、存储器地址线低二位全部为0 C、存储器地址线最低为0 D、存储器地址线低三位取值随意 13、在32位的机器上存放0X12345678,假定该存储单元的最低字节地址为0X4000,则在小端存储模式下存在在0X4002单元的内容是 A、0X12 B、0X34 C、0X56 D、0X78 14、关于内存的下列说法中,错误的是 A、内存的存取速度不能低于CPU速度,否则会造成数据丢失 B、程序只有在数据和代码等被调入内存后才能运行 C、采用虚拟内存技术后程序可以在硬盘上直接运行 D、某计算机内存容量为8GB,按字节编址,那么它的地址总线为33位

计算机组成原理课后答案第四章_庞海波

第四章思考题与习题 1.解释下列概念主存、辅存、Cache、RAM、SRAM、DRAM、ROM、PROM、EPROM、EEPROM、CDROM、Flash Memory 答: 主存:与CPU 直接交换信息,用来存放数据和程序的存储器。 辅存:主存的后援存储器,不与CPU 直接交换信息。 CACHE:为了解决CPU 和主存的速度匹配,设在主存与CPU之间,起缓冲作用,用于提高访存速度的一种存储器。 RAM:随机存储器:是随机存取的,在程序执行过程中既可读出也可写入,存取时间与存储单元所在位置无关。 SRAM:静态RAM,以触发器原理存储信息。 DRAM:动态RAM,以电容充放电原理存储信息。 ROM:只读存储器,在程序执行过程中只能读出,而不能对其写入。 PROM:一次性编程的只读存储器。 EPROM:可擦除的可编程只读存储器,用紫外线照射进行擦写。 EEPROM:用电可擦除的可编程只读存储器。 CDROM:只读型光盘 Flash Memory:快擦型存储器,是性能价格比好,可靠性高的可擦写非易失型存储器 2.计算机中哪些部件可用于存储信息,请按其速度、容量和价格/位排序说明。 答: 寄存器、缓存、主存、磁盘、磁带等。 速度按顺序越来越慢,容量越来越高和价格/位越来越低 3.存储器的层次结构主要体现在什么地方为什么要分这些层次,计算机如何管理这些层次答:存储器的层次结构主要体现在Cache—主存和主存—辅存这两个存储层次上。 Cache—主存层次在存储系统中主要对CPU访存起加速作用,即从整体运行的效果分析,接近于Cache的速度,而容量和位价却接近于主存。 主存—辅存层次在存储系统中主要起扩容作用,其容量和位价接近于辅存,而速度接近于主存 4.说明存取周期和存取时间的区别。 答: 存取周期和存取时间的主要区别是:存取时间仅为完成一次存取操作的时间,而存取周期不仅包含操作时间,还包含操作后线路的恢复时间。即: 存取周期= 存取时间+ 恢复时间 5.什么是存储器的带宽若存储器的数据总线宽度为32 位,存取周期为200ns,则存储器的带宽是多少 解:存储器的带宽指单位时间内从存储器进出信息的最大数量。 存储器带宽= 1/200ns×32位= 160M位/秒= 20MB/S = 5M字/秒 6.某机字长为32 位,其存储容量是64KB,按字编址它的寻址范围是多少若主存以字节编

计算机组成原理第四版课后题答案五,六章

第五章 1.请在括号内填入适当答案。在CPU中: (1) 保存当前正在执行的指令的寄存器是(指令寄存器IR); (2) 保存当前正要执行的指令地址的寄存器是(程序计数器PC); (3) 算术逻辑运算结果通常放在(通用寄存器)和(数据缓冲寄存器DR)。 2.参见下图(课本P166图5.15)的数据通路。画出存数指令"STA R1 ,(R2)"的指令周期 流程图,其含义是将寄存器R1的内容传送至(R2)为地址的主存单元中。标出各微操作信 号序列。 解:"STA R1 ,(R2)"指令是一条存数指令,其指令周期流程图如下图所示:

3.参见课本P166图5.15的数据通路,画出取数指令"LDA(R3),RO"的指令周期流程图, 其含义是将(R3)为地址的主存单元的内容取至寄存器R0中,标出各微操作控制信号序列。 5.如果在一个CPU周期中要产生3个脉冲 T1 = 200ns ,T2 = 400ns ,T3 = 200ns,试画出 时序产生器逻辑图。 解:节拍脉冲T1 ,T2 ,T3 的宽度实际等于时钟脉冲的周期或是它的倍数,此时T1 = T3 =200ns , T2 = 400 ns ,所以主脉冲源的频率应为 f = 1 / T1 =5MHZ 。为了消除节拍脉冲上的毛刺,环 型脉冲发生器可采用移位寄存器形式。下图画出了题目要求的逻辑电路图和时序信号关系。根据关 系,节拍脉冲T1 ,T2 ,T3 的逻辑表达式如下:

T1 = C1·, T2 = , T3 = 6.假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指 令公用的。已知微指令长度为32位,请估算控制存储器容量。 解:微指令条数为:(4-1)×80+1=241条 取控存容量为:256×32位=1KB 7. 某ALU器件使用模式控制码M,S3,S2,S1,C来控制执行不同的算术运算和逻辑操作。 下表列出各条指令所要求的模式控制码,其中y为二进制变量,F为

计算机组成原理——第四章测试题

1、采用规格化的浮点数是为了(D) A、增加数据的表示范围 B、方便浮点运算 C、防止运算时数据溢出 D、增加数据的表示精度 2、以下(D)表示法主要用来表示浮点数中的阶码 A、原码 B、补码 C、反码 D、移码 3、浮点加减运算中的对阶指(A) A、将较小的一个阶码调整到与较大的一个阶码相同 B、将较大的一个阶码调整到与较小的一个阶码相同 C、将被加数的阶码调整到与加数的阶码相同 D、将加数的阶码调整到与被加数的阶码相同 4、假定采用IEEE 754单精度浮点数格式表示一个数,则该数为(B) A、(+1.125)10×210 B、(+1.125)10×211 C、(+0.125)10×211 D、(+0.125)10×210 5、如果浮点数的尾数用补码表示,则下列(D)中的尾数是规格化形式 A、1.11000 B、0.01110 C、0.01010 D、1.00010 6、float型数据通常用IEEE 754单精度浮点数格式表示,若编译器将float型变量x分配在一个32位浮点寄存器FR1中,且x = -8.25,则FR1的内容是(A) A、C104 0000H B、C242 0000H C、C184 0000H D、C1C2 0000H 7、运算器虽由许多部件组成,但核心部件是(A) A、算术逻辑运算单元ALU B、多路开关 C、数据总线 D、累加寄存器ACC 8、使用74LS181这种器件来构成一个16位的ALU,需要使用(B)片。 A、2 B、4 C、8 D、16 9、用4片74181和1片74182相配合,具有(D)传递功能 A、串行进位 B、组内并行进位,组间串行进位 C、组内串行进位,组间并行进位 D、组内、组间均为并行进位 10、和外存储器相比,内存储器的特点是(C) A、容量大、速度快、成本低 B、容量大、速度慢、成本高 C、容量小、速度快、成本高 D、容量小、速度快、成本低 11、磁盘属于(D)类型的存储器 A、随机存取存储器 B、只读存储器 C、顺序存取存储器 D、直接存取存储器 12、某计算机系统,其操作系统保存在硬盘上,其内存储器应该采用(C) A、RAM B、ROM C、RAM和ROM D、都不对 13、计算机的存储系统是指(D) A、RAM B、ROM C、主存储器 D、Cache、主存储器和外存储器 14、一般存储系统由三级组成,下列关于各级存储器的作用及速度、容量的叙述中正确的是(C) A、主存存放正在CPU中运行的程序,速度较快,容量很大 B、Cache存放当前所有频繁访问的数据,特点是速度最快、容量较小 C、外存存放需联机保存但暂时不执行的程序和数据,容量很大且速度很慢 D、外存存放需联机保存但暂时不执行的程序和数据,容量很大且速度很快 15、以下器件中存取速度最快的是(C)

白中英《计算机组成原理》(第5版)教材精讲(计算机系统概论 计算机的硬件)

1.3 计算机的硬件 一、硬件组成要素 1.举例说明 要了解数字计算机的主要组成和工作原理,可从打算盘说起。假设给一个算盘、一张带有横格的纸和一支笔,要求计算这样一个题目。为了和下面讲到的内容做比较,不妨按以下方法把使用算盘进行解题的过程步骤事先用笔详细地记录在带横格的纸上。 (1)首先,将横格纸编上序号,每一行占一个序号,如l,2,3,…,n,如表1-2所示。 (2)其次,把计算式中给定的四个数a,b,c和z分别写到横格纸的第 9,10,11,12行上,每一行只写一个数。 (3)接着详细列出给定题目的解题步骤,而解题步骤也需要记在横格纸上,每一步也只写一行。第一步写到横格纸的第l行,第二步写到第2行,……依次类推。 (4)如表1-2所示,根据表中所列的解题步骤,从第l行开始,一步一步进行计算,最后可得出所要求的结果。

表1-2 解题步骤和数据记录在横格纸上 2.冯·诺依曼体系结构 计算机组成原理讨论的基础就是冯·诺依曼的计算机,其基本设计思想就是存储程序和程序控制,具有以下特点: (1)由运算器、存储器、控制器、输入设备和输出设备五大部件组成计算机系统,并规定了这五部分的基本功能。

(2)采用存储程序的方式,程序和数据放在同一个存储器中,指令和数据一样可以送到运算器运算,即由指令组成的程序是可以修改的。 (3)数据以二进制数码表示。 (4)指令由操作码和地址码组成。 (5)指令在存储器中按顺序存放,由指令计数器PC 指明要执行的指令所在单元地址,一般按顺序递增,但可按运算结果或外界条件改变。 (6)机器以运算器为中心,I/O 设备与存储器间数据传送都通过运算器。 计算机硬件系统的基本构成如图1-9所示。 图1-9 冯·诺依曼型计算机 二、 运算器 算术运算和逻辑运算 ; 在计算机中参与运算的数是二进制的 ; 运算器的长度一般是8、16、32或64位。 运算器的结构示意图如图1-10所示。

计算机组成原理习题 第八章输入输出系统

第八章输入输出系统 一、填空题; 1.直接内存访问(DMA)方式中,DMA控制器从CPU完全接管对的控制,数据交换不经过CPU,而直接在内存和之间进行。 2.通道是一个特殊功能的,它有自己的专门负责数据输入输出的传输控制。 3.并行I/O接口和串行I/O接口是目前两个最具有权威性的标准接口技术。 4.在计算机系统中,CPU对外围设备的管理,除了程序查询方式、程序中断方式外,还有方式、方式和方式。 5.程序中断方式控制输入输出的主要特点是,可以使A 和B 并行工作。 6.DMA控制器按其A 结构,分为B 型和C 型两种。 7.通道是一个特殊功能的A ,它有自己的B 专门负责数据输入输出的传输控制,CPU只负责C 功能。 8.通道有三种类型:A 通道、B 通道、C 通道。 9. 二、选择题: 1.下面有关“中断”的叙述,______是不正确的。 A.一旦有中断请求出现,CPU立即停止当前指令的执行,转而去受理中断请求 B.CPU响应中断时暂停运行当前程序,自动转移到中断服务程序 C.中断方式一般适用于随机出现的服务 D.为了保证中断服务程序执行完毕以后,能正确返回到被中断的断点继续执行程 序,必须进行现场保存操作 2.中断向量地址是______。 A. 子程序入口地址 B. 中断服务例行程序入口地址 C. 中断服务例行程序入口地址的地址 D. 主程序返回地址 3.在数据传送过程中,数据由串行变并行或由并行变串行,其转换是通过______。 A. 移位寄存器 B. 数据寄存器 C. 锁存器 D. 指令寄存器 4.下述I/O控制方式中,主要由程序实现的是______。 A. PPU(外围处理机)方式 B. 中断方式 C. DMA方式 D. 通道方式 5.采用DMA方式传送数据时,每传送一个数据要占用______的时间。 A. 一个指令周期 B. 一个机器周期 C. 一个时钟周期 D. 一个存储周期 6.发生中断请求的条件是______。 A. 一条指令执行结束 B. 一次I/O操作开始 C. 机器内部发生故障 D. 一次DMA操作开始 7.中断向量地址是______。 A.子程序入口地址B.中断服务例行程序入口地址 C.中断服务例行程序入口地址的指示器D.中断返回地址 8.下述I/O控制方式,哪种主要由程序实现______。 A. PPU(外围处理机) B. 中断方式 C. DMA 方式 D. 通道方式 9.为了便于实现多级中断,保存现场最有效的方法是采用______。

计算机组成原理第四版课后题答案三,四章

第三章 1.有一个具有20位地址和32位字长的存储器,问: (1)该存储器能存储多少个字节的信息? (2)如果存储器由512K×8位SRAM芯片组成,需要多少芯片?(3)需要多少位地址作芯片选择? 解:(1)∵ 220= 1M,∴该存储器能存储的信息为:1M×32/8=4MB (2)(1000/512)×(32/8)= 8(片) (3)需要1位地址作为芯片选择。 2. 已知某64位机主存采用半导体存储器,其地址码为26位,若使用256K×16位的DRAM芯片组成该机所允许的最大主存空间,并选用模块板结构形式,问: (1)每个模块板为1024K×64位,共需几个模块板? (2)个模块板内共有多少DRAM芯片? (3)主存共需多少DRAM芯片? CPU如何选择各模块板? 解:(1). 共需模块板数为m: m=÷=64 (块) (2). 每个模块板内有DRAM芯片数为n: n=(/) ×(64/16)=16 (片) (3) 主存共需DRAM芯片为:16×64=1024 (片) 每个模块板有16片DRAM芯片,容量为1024K×64位,需20根地址线(A19~A0)完成模块 板内存储单元寻址。一共有64块模块板,采用6根高位地址线(A25~A20),通过 6:64译码器译码产生片选信号对各模块板进行选择。 3.用16K×8位的DRAM芯片组成64K×32位存储器,要求: (1) 画出该存储器的组成逻辑框图。 (2) 设存储器读/写周期为0.5μS, CPU在1μS内至少要访问一次。试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少? 解:(1)组成64K×32位存储器需存储芯片数为

计算机组成原理课后答案(白中英第四版)第一章

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

计算机组成原理课后习题答案第五版文件

第五章习 题答案 32 6. (80 * 3 1)* 964字节 8 取指微指令除外,每条机器指令对应三条微指令构成的微程序,因此控制存储 器中共有 80*3+1 条微指令,每条微指令占32 位,即4Byte 8.经分析,(d, i, j )和(e, f, h)为两组相斥性微命令(在全部8 条微指令中,组内任意两 个微命令没有同时出现 ),可将(d, i, j)编 码表示,使用两位二进 制表示三个相斥性微命令,编码00 表示空操作,即三个微命令都不出现 ,(e, f, h)作类似处 理,剩下的a, b, c, g 四个微命令信号可进行直接控制,其整个控制字段组 成如下: * * * * * * * * a b c g 0 1 d 10 i 10 f 11 j 11 h 13. (1) 空间 S 1 2 3 4 5 15 16 WB 1 2 3 4 5 MEM 1 2 3 4 5 EX ID IF 1 2 3 4 5 1 2 3 4 5 ? 时间T1 2 3 4 5 0 t 1 t 2 t 3 t 4 t 5 t 6 t 7 t 8 t 9 t 19 t 20 (2) 流水线的实际吞吐率为 H (k n n 1) (5 20 20 1)* 100* 10 9 8.33* 6 10 条 / 秒Ts nk 20* 5 (3)加速比 S 4.17 Tp (k n 1) 20 5 1 流水线 有k 个过 程段,k=5。 16.(1)写后读R AW (2)读后写WAR (3)写后读和写后写RAW WAW

第六章习题答案1、 8.C 9.B、A、C

10.A 11.D 12.A

计算机组成原理第4章作业参考答案

第4章部分习题参考答案 【4-4】已知X和Y,试用它们的变形补码计算出X + Y,并指出结果是否溢出 (3)X = -0.10110,Y = -0.00001 解:[X]补 = 1.01010 [Y]补 = 1.11111 1 1 . 0 1 0 1 0 + 1 1 . 1 1 1 1 1 1 1 . 0 1 0 0 1 无溢出,X+Y = -0.10111 【4-5】已知X和Y,试用它们的变形补码计算出X - Y,并指出结果是否溢出 (3)X = 0.11011,Y = -0.10011 解:[X]补 = 0.11011 [-Y]补 = 0.10011 0 0 . 1 1 0 1 1 + 0 0 . 1 0 0 1 1 0 1 . 0 1 1 1 0 结果正溢

【4-8】分别用原码乘法和补码乘法计算X * Y (1)X = 0.11011,Y = -0.11111 法一:原码一位乘算法 解:|X| = 0.11011→B |Y| = 0.11111→C 0→A A C 说明 0 0. 0 0 0 0 0 1 1 1 1 1 C5 = 1, +|X| 0 0. 0 1 1 0 1 1 1 1 1 1 部分积右移一位→ C5 = 1, +|X| 0 0. 1 0 1 0 0 0 1 1 1 1 部分积右移一位→ C5 = 1, +|X| 0 0. 1 0 1 1 1 1 0 1 1 1 部分积右移一位→ C5 = 1, +|X| 0 0. 1 1 0 0 1 0 1 0 1 1 部分积右移一位→ C5 = 1, +|X| 0 0. 1 1 0 1 0 0 0 1 0 1 部分积右移一位→ |X * Y| = 0.1101000101 Ps = Xs ⊕ Ys = 0 ⊕ 1 = 1 X*Y = -0.1101000101

相关文档
最新文档