计算机组成与嵌入式系统笔记01

            计算机组成与嵌入式系统笔记

第1章 计算机的基本结构

1.计算机组成
计算机组成与嵌入式系统笔记01_第1张图片
(1)程序是执行任务的指令序列。程序存储在存储器中。处理器从存储器中一条接一条地取出程序指令,然后完成所需要的操作。

(2)存储器的功能是存储程序和数据。它分为主存储器和辅助存储器两种。
作为主存储器的辅助手段,一个更小更快的被称为高速缓存(cache)的RAM(random-access memory)设备可用于存储目前正在执行的程序段以及所有相关的数据。
在程序开始执行的时候,高速缓存是空的。所有程序指令和任何所需的数据都存储在主存中。随着执行过程的推进,指令被读取到处理器芯片中,并且在高速缓存中存放每一条指令的副本。当指令执行需要主存中的数据时,数据被取出同时拷贝到高速缓存中。
比如执行循环语句,这些指令可以从高速缓存中获取,或者当相同的数据单元被反复访问时,这些内容也可以从高速缓存中获得。

(3)大多数计算机的操作是由处理器的算术逻辑部件(ALU)或运算器执行的。任意的算术或逻辑运算,都是通过将所需的操作数送至ALU执行运算的处理器中开始的。得到的结果数据可能存储在主存中,或者保留在处理器中以便直接使用。

当操作数被送入处理器时,它们被存储在寄存器(register)中,每个寄存器可以存储一个字的数据。寄存器的访问时间比处理器芯片上的高速缓存的访问时间更短。

(4)计算机内的所有活动都由控制器控制。

2.基本操作
Load R2,LOC
读取地址标签LOC所指向的存储单元的内容,然后将其装入处理器寄存器R2中。(R2原始值被覆盖)
Add R4,R2,R3
把寄存器R2与R3的内容相加,然后将 和 放入寄存器R4中(R4原始值被覆盖)
Store R4,LOC
把寄存器R4中的操作数复制到存储单元LOC中。(LOC的原始内容被覆盖)

比如执行如下命令所需步骤:(假设包含该指令的存储单元的地址最初是在寄存器PC中。)
L o a d   R 2 , L O C Load\ R2,LOC Load R2,LOC
● 将指令字的地址从寄存器 PC 发送到存储器中,并发出一个读控制命令。
● 等待所请求的字从存储器中取回,然后把它装入寄存器 IR 中,它在 IR 中被控制电路解释(或译码)以便确定所需执行的操作。
● 递增寄存器 PC 的内容以指向存储器中的下一条指令。
● 将地址值 LOC 从寄存器 IR 中的指令发送到存储器并发出一个读控制命令。
● 等待所请求的字从存储器中取回,然后将其装入寄存器 R2 中。

3.寄存器
指令寄存器(instruction register,IR),保存当前正在执行的指令。它的输出结果可由控制电路使用,以产生控制指令执行过程中不同处理部件的时序信号。
程序计数器(program counter,PC)时另一个专用的寄存器,它包含下一条即将被读取和执行的指令的存储器地址。在一条指令的执行过程中,PC中的内容相应地更新为下一条将被执行指令的地址。
通用寄存器(general-purpose register),也被称作处理器寄存器。功能很多,比如保存从存储器中载入的待处理的的操作数。

4.处理器-存储器接口是管理主存储器和处理器之间数据传输的电路。如果需要从存储器中
读取一个字,该接口会向存储器发送该字的地址,同时送出一个读控制信号。接口等待要取回
的字,然后将它传输到适当的处理器寄存器中。如果一个字需要被写入到存储器中,接口会向
存储器传输该字的存储地址和内容,同时送出一个写控制信号。

5.中断
设备发出一个中断(interrupt)信号,向处理器提出服务请求。处理器通过
执行中断服务程序(interrupt-service routine)来提供所请求的服务。因为这样的转变可能会改
变处理器的内部状态,所以必须在处理中断请求之前将处理器的状态保存在存储器中。通常,
要保存的信息包括 PC 中的内容、通用寄存器的内容以及一些控制信息。当中断服务程序完成
时,处理器的状态就从存储器中恢复,从而使得被中断的程序可以继续执行。

6.溢出问题
当两个加数具有相同的符号,而和的符号与加数的符号不同时就发生了溢出,如果两个数做减法,或者两个加数符号不同时,怎么判断溢出呢?
以8位有符号二进制数为例,其实计算机可以控制第9位的,计算机在处理溢出时,如果第9位和第8位数字组成是10或者01,就表示溢出了。01比较简单就是两个正数相加或者正数减去负数等等的溢出,
10也表示溢出是因为:假设我们现在面对的是9位二进制数,那么
-129~-256表示为: 1 0111 1111 ~ 1 0000 0000,第8位始终是0,即负数溢出时只能是10。
以上,计算机用(符号位+1,符号位)组成的数:01和10来判断溢出。

7.计算机体系结构研究软件和硬件功能的划分,比如:
如果这个计算机要做乘法操作,可以这样:
(1)只有加法器(硬件)时,软件借助加法器进行累加操作,实现乘法
(2)有乘法器(硬件)时,硬件自己就实现了乘法,不需要借助软件。
计算机组成是计算机体系结构的逻辑实现,它研究部件怎么组合完成硬件功能。
计算机实现是计算机体系结构的物理实现。
系列机,虽然计算机的型号不一样,但是逻辑实现是一样的。

你可能感兴趣的:(计算机组成)