《计算机组成原理》笔记一

 我来答
天士凯数码17
2022-07-30 · TA获得超过2733个赞
知道小有建树答主
回答量:3605
采纳率:100%
帮助的人:193万
展开全部

[toc]

Q1:现代计算机由哪几部分组成?(顶层抽象)

A:软件 + 硬件。本课程主要讲硬件的设计逻辑。

系统复杂性管理方法

从程序员角度来分层:高级语言—>汇编语言—>操作系统—>机器语言—>微指令系统

其结构的问题:<mark style="box-sizing: border-box; background-color: rgb(255, 255, 0); color: rgb(0, 0, 0); background-position: initial initial; background-repeat: initial initial;">以运算器为核心</mark>,运算器成为性能的瓶颈;不具有层次化特征

改进:

注:主存+CPU构成主机;辅存和输入输出设备构成I/O系统

将图中每个部分进一步细化,再重新组装起来就构成了计算机组成系统。(层次化+模块化)

思考:真正的运算器、控制器、存储器结构都是什么样的?(这正是本课程要学习的)

Q:一个现实中的问题,如何用计算机来解决?

Q:是不是所有的问题都可以用计算的方法来解决?(可计算性理论/算法理论)(e.g.图灵机停机问题)

假设我们面对的是一个可计算问题,如何解决一个问题呢?

我们设定一个可计算的问题,来对计算机组成框图的各个部件进行细化。

指令和数据保存在存储器中,所以存储器是什么样的?如何访问呢?每次访问获得的数据的位数是多少呢?我们先从存储器的结构来看。

类比:

重要概念:

每个存储单元赋予一个地址号,每个存储单元中存放一个存储字;存储单元按地址寻访

解释:计算机中的主存数据寄存器(MDR),与主存地址寄存器(MAR)帮助完成CPU和主存储器之间的通信:

运算器的功能是什么,如何工作?

运算器结构:

乘法:加法+移位操作 (<u style="box-sizing: border-box;">这里有点不太清楚</u>)

除法:减法+移位操作 (<u style="box-sizing: border-box;">这里有点不太清楚</u>)

<mark style="box-sizing: border-box; background-color: rgb(255, 255, 0); color: rgb(0, 0, 0); background-position: initial initial; background-repeat: initial initial;">(回去看看《编码》、《CSAPP》第二章理解理解,再回过来看看)</mark>

运算器中各种操作都是在控制器的控制下执行的。那么控制器的功能是什么,进而其结构应该是什么样的呢?

功能:

基本结构:

完成一条指令:

结构:

这里要好好理解每一个指令步骤,理解了每一个步骤就相当于理解了这一章。

(1)主机完成一条取数指令的步骤

取数指令的功能:把存储体(主存/内存)中的数存到ACC中

完成一条指令的三个阶段:

(注:指令:操作码+地址码)

<mark style="box-sizing: border-box; background-color: rgb(255, 255, 0); color: rgb(0, 0, 0); background-position: initial initial; background-repeat: initial initial;">取数操作步骤分析</mark>(如图):

(2)主机完成一条存数操作步骤

存数指令的功能:把存放在ACC中的计算结果存到内存单元M中

<mark style="box-sizing: border-box; background-color: rgb(255, 255, 0); color: rgb(0, 0, 0); background-position: initial initial; background-repeat: initial initial;">存数操作步骤分析</mark>(如图):

存取数指令已经分析完了,那么加法、乘法、停机、打印等指令在这个模型下怎么执行?(自行思考)

一条指令的执行步骤我们已经知道了,那么一条程序(多条指令的指令集)的执行步骤就是把一条条指令按顺序执行;

这里同样只是分析了取指令的步骤,任何一条指令都可以分为三步执行:取指令—>分析指令—>执行指令。注意PC执行完一条指令之后,就可以+1了,指向下一条指令的地址。

CPU一次能处理数据的位数(如可以对两个8位二进制数进行加法,就是8位),与CPU中的寄存器(ACC,X,MQ)的位数有关。

一般来说,机器字长越长性能越好。

前两个是硬件指标;后四个是从指令执行的角度来衡量的。

存放二进制信息的总位数

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式