计算机组成原理1.2

一、计算机组成

1.五大部分:输入设备,输出设备,主存储器,运算器,控制器

2.冯诺依曼计算机:首次提出存储程序,以运算器为中心

3.现代计算机:以存储器为中心,CPU=运算器+控制器

4.运算器+控制器+存储器=主机

二、各硬件组成

1.主存储器:由存储体,MAR,MDR组成。

1.1存储体:需要了解内存,存储单元,存储字,存储字长,存储地址。

内存可以看作是一栋楼,存储单元看作是这栋楼中的各房间,存储地址是各房间的门牌号。所以内存中有很多个存储单元,每个存储单元对应一个存储地址(0,1,......,n)。

每个存储单元中保存一串二进制数字,如01010111。这串数字就是存储字。它的长度是存储字长,这里就是8位。

1.2MAR:地址寄存器,位数反映存储单元数量(一栋楼有多少房间)。

1.3MDR:数据寄存器,位数表示存储单元大小(一个存储单元中有几位数字)。

1.4工作流程:MAR看作快递单号,存储体看作货架保存着快递,MDR看作收件人。MAR把地址(快递单号)交给存储体(货架),从存储体把数据或指令取出来交给MDR。

2.运算器:由ACC,MQ,X,ALU组成。

ACC:加法寄存器,存放操作数,运算结果。

MQ:乘商寄存器。

X:通用寄存器,存放操作数。

ALU:算数逻辑单元,用来计算,不存放数据。

3.控制器:由PC,IR,CU组成。

PC:程序计数器,存放下一条指令地址。

IR:指令寄存器,存放当前指令。

CU:分析指令。

三、各硬件工作过程

1.把指令放入主存,控制器的PC指向第一条指令的地址(这里为0)。54baa45d6d2a4d5093413729c5258ac3.jpg

 2.PC把地址交给主存储器的MAR(地址寄存器),MAR把地址给存储体,存储体把指令交给MDR(详细看1.4)。

3.MDR把指令交给控制器的IR(存放当前指令),IR把指令交给CU分析,先分析出应该执行什么操作(如加法),然后分析出应该操作的数字的地址(如1+2中1的地址)。

4.控制地址交给存储器的MAR,再从存储体取数据(1)交给MDR,MDR把数据(1)交给运算器中ACC(执行加法指令)。

四、计算机系统

1.完整的计算机系统由硬件设备与软件系统构成。

2.对于一个功能,既可以由软件实现,也可以由硬件实现。所以软件的功能与硬件功能逻辑上是等价的。其中,由硬件实现效率高,但成本高。由软件实现效率低,但价格便宜。

3.计算机系统层次

3.1.层次由低到高依次是:机器语言(低级),汇编语言,高级语言(高级,如python等语言)

3.2.硬件只能识别机器语言。如果是汇编语言和高级语言都需要转换成机器语言。

3.3.汇编程序:把汇编语言转换为机器语言

3.4.解释程序:源程序(高级语言)按顺序逐条翻译为机器语言并执行(一条一条运行,需要等待下一条翻译,运行时间长)。

3.5.编译程序:源程序(高级语言)全部翻译为机器语言,再执行(翻译时间长,运行时间段)

3.6高级语言转化为机器语言流程:源程序(高级语言)——预处理器——编译器——汇编器——链接器

五、例题

1.完整的计算机系统包括

A.运算器,控制器,存储器

B.外部设备,主机

C.主机,应用程序

D.硬件设备,软件系统

答案:D

解析:D.完整的计算机系统由硬件设备与软件系统构成。A.运算器,控制器,存储器是主机。属于硬件设备的一部分B.外部设备,主机。外部设备是输入输出设备,加上主机就是硬件设备。C.主机,应用程序。少外部设备。

2.冯诺依曼计算机基本工作方式

A.控制驱动流方式

B.多指令多数据流方式

C.微程序控制方式

D.数据驱动流方式

答案:A.

解析:冯诺依曼计算机基本工作方式是存储程序,存储程序是把指令送入内存,通过分析指令控制数据,所以不直接是数据(数据驱动),排除D,选A。B,C在第五章,不过多叙述。

3.以下说法错误的是:

A.硬盘是外部设备

B.软件的功能与硬件功能逻辑上是等价的

C.硬件实现的功能比软件有更高的执行速度

D.软件功能不能由硬件取代

答案:D。

解析:A.硬盘属于外部存储器,属于外部设备。之前讲的都是内部存储器。BCD.对于一个功能,既可以由软件实现,也可以由硬件实现。所以软件的功能与硬件功能逻辑上是等价的。其中,由硬件实现效率高,但成本高。由软件实现效率低,但价格便宜。

4.MAR和MDR的位数分别为:

A.地址码长度,存储字长

B.存储字长,存储字长

C.地址码长度,地址码长度

D.存储字长,地址码长度

答案:A

解析:MAR存放存储单元个数(多少房间),所以是地址码长度。MDR存放每个存储单元中数据的位数,也就是存储字长。

5.下列说法错误的是:

A.编译程序和解释程序的作用是将高级语言转化为机器语言

B.编译程序编译时间长,运行速度快

C.解释程序方法简单,运行速度快

D.解释程序将源程序翻译为机器语言,并翻译一条后立即执行这条语句

答案:C

解析:解释程序:源程序(高级语言)按顺序逐条翻译为机器语言并执行(一条一条运行,需要等待下一条翻译,运行时间长)。编译程序:源程序(高级语言)全部翻译为机器语言,再执行(翻译时间长,运行时间段)

6.可以在计算机中直接执行的语言和用助记符编写的语言分别是

A.汇编语言,高级语言

B.汇编语言,操作系统语言

C.机器语言,汇编语言

D.机器语言,正则语言

答案:C

解析:硬件只能识别机器语言。汇编语言, 即第二代计算机语言,用一些容易理解和记忆的缩写单词来代替一些特定的指令,例如:用"ADD"代表加法操作指令。

六、自主联系

1.存放当前指令的寄存器是:

A.MAR

B.PC 

C.MDR

D.IR

2.存放下一条指令地址的寄存器是:

A.PC

B.MAR

C.MDR

D.IR

3.下列说法错误的是

A.可以直接用机器语言编写程序

B.汇编语言和机器语言都能被计算机直接执行

C.汇编语言和机器语言都与计算机系统结构相关

D.汇编语言和机器语言一一对应,功能相同

(答案和解析见评论区)

  • 14
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值