计算机组成原理第一章思考题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机组成原理第⼀章思考题
1、什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个重要?
计算机系统:由“硬件”和“软件”两⼤部分组成。
(原书就只写了这个,完全没再解释,总觉得应该会有更详细全⾯的概念,可惜百度了很久也没找到满意的)
计算机硬件:即计算机的实体部分,它由看得见摸得着的各种电⼦元件、各类光、电、机设备的实物组成,如主机、外设等等。
计算机软件:由⼈们事先编制成具有各类特殊功能的信息组成。
通常可以分为两⼤类:系统软件和应⽤软件。
系统软件⼜称为系统程序,主要⽤来管理整个计算机系统,监视服务,使系统资源得到合理调度,确保⾼效运⾏。
应⽤软件⼜称应⽤程序,他是⽤户根据任务需要所编制的各种程序。
很显然缺⼀不可。
2、如何理解计算机系统的层次结构?
3、说明⾼级语⾔、汇编语⾔和机器语⾔的差别及其联系。
机器语⾔:⽤户必须⽤⼆进制代码0/1编写程序。
难度很⼤,但可以直接在机器上执⾏。
汇编语⾔:符号式的程序设计语⾔。
⽤符号ADD、SUB、MUL、DIV等分别表⽰加减乘除等操作,并⽤符号表⽰指令或数据所在存储空间的地址,使程序员摆脱了⼆进制代码程序。
但是必须先将汇编语⾔程序翻译成机器语⾔程序后,才能被机器接受和运⾏。
这个翻译过程是由机器系统软件中的汇编程序来完成的。
由于汇编语⾔摆脱不了实际机器的指令系统,因此,汇编语⾔没有通⽤性,每台机器必须有⼀种与之相对应的汇编语⾔。
⾼级语⾔:这类⾼级语⾔对问题的描述⼗分接近⼈们的习惯,并且还具有较强的通⽤性。
程序员完全可以不必了解实际机器M1的机型、内部的具体组成及⾃⾝的指令系统,只要掌握这类⾼级语⾔本⾝所赋予的语法和语义,便可直接⽤这种语⾔编程,很⽅便。
当然在进⼊M1机器运⾏前,必须先将⾼级语⾔翻译成汇编语⾔(或其他中间语⾔程序),然后再将其翻译成机器语⾔程序。
通常,我们把⾼级语⾔程序翻译成机器语⾔程序的软件叫做翻译程序。
翻译程序有两种:⼀种叫编译程序,另⼀种叫解释程序。
编译程序将⽤户编写的⾼级语⾔程序(即源程序)的全部语句⼀次全部翻译成机器语⾔程序,⽽后再执⾏机器语⾔程序。
因此,只要源程序不变,就⽆需再次进⾏翻译。
4、如何理解计算机组成和计算机体系结构?
计算机体系结构是指那些能被程序员所见到的计算机系统的属性,即概念性的结构与功能特性,通常是指⽤机器语⾔编程的程序员(也包括汇编语⾔)所看到的传统机器的属性,包括指令集、数据类型、存储器寻址技术、I/O机理等等,⼤多属于抽象的属性。
计算机组成是指如何实现计算机体系结构所体现的属性,它包含了许多对程序员来说是透明的(即程序员不知道的)硬件细节。
例如,指令系统体现了机器的属性,这是属于计算机结构的问题。
但指令的实现,即如何取指令、分析指令、取操作数、如何运算、如何送结果等等,这些都属于计算机组成问题。
例如,⼀台机器是否具备乘法指令的功能,这是⼀个结构的问题,可是,实现乘法指令采⽤什么⽅式的问题,这是⼀个组成问题。
实现乘法指令可以采⽤⼀个专门的乘法电路,也可以采⽤连续相加的加法电路来实现,这两者的区别就是计算机组成的区别。
5、冯诺依曼计算机的特点是什么?
计算机由运算器、存储器、控制器和输⼊设备、输出设备五⼤部分组成。
指令和数据以同等地位存放于存储器内并可按地址寻访
指令和数据均⽤⼆进制码表⽰
指令由操作码和地址码组成,操作码⽤来表⽰操作的性质,地址码⽤来表⽰操作数所在存储器当中的位置
指令在存储器内顺序存放。
通常,指令是顺序执⾏的,在特定条件下,可根据运算结果或根据设定的条件改变执⾏顺序。
机器以运算器为中⼼,输⼊输出设备与存储器的数据传送通过运算器。
6、画出计算机硬件组成框架图,说明各部件的作⽤及计算机硬件的主要技术指标。
图中各部件的功能是:
运算器⽤来完成算术运算和逻辑运算,并将运算的中间结果暂存在运算器内;
存储器⽤来存放数据和程序;
控制器⽤来控制、指挥程序和数据的输⼊、执⾏以及处理运算结果;
输⼊设备⽤来将⼈们熟悉的信息形式转换为机器能识别的信息形式,常见的有键盘、⿏标等。
输出设备可将机器运算结果转换为⼈们熟悉的信息形式,如打印机输出、显⽰器输出等。
计算机的五⼤部件(⼜称五⼤⼦系统)在控制器的统⼀指挥下,以存储器为中⼼,⼤⼤调和了运算器与输⼊输出相差很多的速度。
由于运算器和控制器在逻辑关系和电路结构上联系⼗分紧密,尤其在⼤规模集成电路制作⼯艺出现后,这两⼤部件往往制作在同⼀芯⽚上,因此,通常将它们合起来统称为中央处理器,简称CPU。
这样,现代计算机可认为由三⼤部分组成:CPU、I/O设备、及主存储器
M.M。
CUP和M.M合起来⼜可成为主机,I/O设备可叫做外部设备。
衡量⼀台计算机的性能是由多项技术指标综合确定的
机器字长:机器字长是指CPU⼀次能处理数据的位数,通常与CPU的寄存器位数有关。
字节越长,数的范围也越⼤,精度也越⾼。
机器的字长也会影响机器的运算速度。
机器字长对硬件造价也有较⼤的影响。
它将直接影响加法器(或ALU)、数据总线以及存储字长的位数。
存储容量:存储器的容量应该包括主存容量和辅存容量。
即:存储容量 = 存储单元个数*存储字长
运算速度:计算机的运算速度跟很多因素有关,如机器的主频、执⾏什么操作、主存本⾝的速度(主存速度快、取指、取数就快)等等都有关。
现在机器的运算速度,普遍采⽤单位时间内执⾏指令的平均条数来衡量,并⽤MIPS作为计量单位,即每秒执⾏百万条指令。
7、解释以下概念:
主机:主机是指计算机除去输⼊输出设备以外的主要机体部分。
也是⽤于放置主板及其他主要部件的控制箱体(容器Mainframe)。
通常包括 CPU、内存、主板、光驱、电源、以及其他输⼊输出控制器和接⼝。
CPU:运算器和控制器往往制作在同⼀芯⽚上,合起来统称为中央处理器,简称CPU。
中央处理器(CPU,central processing unit)作为计算机系统的运算和控制核⼼,是信息处理、程序运⾏的最终执⾏单元。
主存:是存储器⼦系统中的⼀类,⽤来存放程序和数据,它可以直接与CPU交换信息,包括存储体、各种逻辑部件及控制电路等。
另⼀类叫辅助存储器,简称副存,⼜叫外存。
存储单元、存储元件、存储基元、存储元、存储字长:存储体由许多存储单元组成,每个存储单元⼜包含若⼲个存储元件(存储元),每个存储元件能寄存⼀位⼆进制代码“0”或“1”。
所以⼀个存储单元可存储⼀串⼆进制代码,这串⼆进制代码为⼀个存储字,这串⼆进制代码的个数叫做存储字长。
存储容量:存储器的容量应该包括主存容量和辅存容量。
即:存储容量 = 存储单元个数*存储字长
机器字长:是指CPU⼀次能处理数据的位数,通常与CPU的寄存器位数有关
指令字长:指令的字节长度
8、解释英⽂代号:CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、IO、MIPS、CPI、FLOPS
CPU:运算器和控制器往往制作在同⼀芯⽚上,合起来统称为中央处理器,简称CPU。
PC:指令计数器(Program Counter,PC),⽤来存放当前欲执⾏指令的地址,它与MAR之间有⼀条直接通路,且具有⾃动加1的功能,即可⾃动形成下⼀条指令的地址。
IR:指令寄存器,是中央处理器控制部件中的寄存器。
IR的内容来⾃主存的MDR。
IR中的操作码(OP(IR))送⾄CU(记作
OP(IR)→CU。
(IR,Instruction Register)
CU:控制单元,⽤来解释存储器中的指令,并发出各种操作命令来执⾏指令。
(Control Unit)
ALU:算术逻辑单元(简称算逻部件),⽤来完成算术逻辑运算。
ACC:累加器,是⼀个具有特殊⽤途的⼆进制8位寄存器,专门⽤来存放操作数或运算结果。
MQ:乘商寄存器,主要负责数据的乘法与除法运算并可保存运算结果,是运算器的基本组成部分。
(Multiple—Quotient Register)
X:操作寄存器。
MAR:存储器地址寄存器,⽤来存放预访问的存储单元的地址。
(Memory Address Register)
MDR:是存储器数据寄存器,⽤来存放从存储体某单元取出的代码或者准备往某存储单元存⼊的代码,其位数与存储字长相等。
(Memory Data Register)
I/O:I/O⼦系统包括各种外部设备及相应的接⼝。
MIPS:计量单位,每秒执⾏百万条指令。
如某机每秒能执⾏200万条指令,则记作2MIPS。
CPI:计量单位,执⾏⼀条指令所需要的时钟周期数(主频的倒数)。
FLOPS:计量单位,每秒浮点运算次数来衡量运算速度。
9、计算机如何区分存储器中的指令和数据:
⽅式⼀:通过不同时间段来区分指令和数据,即在取指令阶段(或取值微指令)取出的为指令,在执⾏指令阶段(或相应微程序)取出的即为数据。
⽅式⼆:通过地址来源区分,由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。