1、第三章 微型计算机一般原理,3.1.1 冯.诺依曼结构原理:1、计算机由运算器、控制器、存储器、输入设备和输出设备五部分组成; 2、程序和数据以二进制形式不加区分地依次存放在存储器中,存放位置由地址确定; 3、控制器根据存放在存储器中的指令序列(即程序)工作,并由一个程序计数器(PC)控制指令的执行。控制器具有判断能力,能够根据计算结果选择不同的动作流程。,3.1 计算机系统组成原理,3.1 计算机系统组成原理,计算机系统的层次结构,硬件级,机器指令级,操作系统级,高级语言级,硬、软件的功能分配,功能分配与设计目标、技术条件有关。,硬件软化:软件完成较复杂功能,以降低硬件开销。 软件硬化:硬件
2、完成较复杂功能,以提高处理速度。 软件固化:运行微程序实现较复杂功能,以提高性价比。,冯.诺依曼结构的硬件系统,硬件 由电子线路、元器件和机械部分等够成的具体装置,由五个基本部件构成。,一、 运算器(ALU) 进行算术运算、逻辑运算的部件。可以进行加、减、乘、除等算术运算;还可以进行与、或、非、异或等逻辑运算。,二、 控制器(CU) 依据程序指令,产生一系列控制脉冲和信号,指挥和协调整个计算机系统一步步地自动运行完成既定功能。控制器是计算机的“神经中枢”。,运算器和控制器二者合起来称为CPU(中央处理器 Central Processing Unit) 。,计算机系统由硬件和软件两部分组成,缺
3、一不可。,CPU功能,算术逻辑运算 指令译码、执行 数据暂存 与MEM、I/O交换数据 提供整个系统所需的定时和控制 响应中断请求,运算器 (1)功能:加工信息。 (2)组成:,移位器,ALU,选择器,通用寄存器组,选择器,通用寄存器组:提供操作数,存放运算结果。,移位器,ALU,选择器,通用寄存器组,选择器,选择器:选择操作数;选择控制条件,实现各种算法。,移位器,ALU,选择器,通用寄存器组,选择器,ALU: 算数逻辑运算单元,通过加法器实现运算操作(由全加器求和、由进位链传递进位信号)。,移位器,ALU,选择器,通用寄存器组,选择器,移位器:直接或者移位送出运算结果。,微命令发生器,指令
4、信息,状态信息,时序信号,微命令序列,逻辑条件,时间条件,控制器 (1)功能:产生控制命令(微命令),控制全机操作。 (2)组成:,微命令产生方式(指令执行控制方式):,组合逻辑控制方式:,微程序控制方式:,由组合逻辑电 路产生微命令,由微指令产生微命令,三、存储器(Memory) 是用来保存和记忆原始题目、原始数据、运算的中间结果、最后结果,以及为了使机器能自动进行运算而编制的各种命令(程序)的记忆装置。,存储器通常分为: 内存储器(主存储器) 可直接与CPU交换信息 外存储器(辅助存储器) 不可直接与CPU交换信息,CPU与内存合起来称为主机,存储体,地址寄存器,译码器,读/写线路,数据寄
5、存器,控制线路,存储器 (1)功能: 存储信息。 (2)组成(主存储器):,1) 存储体: 存放信息的实体。 2)寻址系统:对地址码译码,选择存储单元。 3)读/写线路和数据寄存器:完成读/写操作,暂存读/写数据。 4)控制线路:产生读/写时序,控制读/写操作。,四、 输入设备 把外部信号转变为计算机能识别的电信号 并送给主机的设备。常用的输入设备有键盘、鼠标器、 光笔、扫描仪、触摸屏、磁盘驱动器等。,五、输出设备 把计算机的计算结果或中间结果以容易阅 读和使用的形式表示出来。常用的输出设备有屏幕、打 印机、绘图仪、磁盘驱动器等。总 线:总线是将计算机内各个部件连接在一起,用于传输同类信息的公
6、共数据通道,采用分时共用原则工作的部件。,输入设备和输出设备是计算机与外部世界联系的桥梁,统称为外部设备(I/O设备, INPUT; OUTPUT的缩写),输入/输出设备 功能:转换信息。,主机,接口,输入/出设备,输入:原始信息,代码,送入主机,输出:处理结果,人所能接受的形式,并输出,(代码),以总线为基础的系统结构总线:能为多个部件分时共享的一组信息传送线路。,总 线,总 线,功能 内总线局部总线系统总线外总线,信息 地址总线数据总线控制总线,时序 同步总线异步总线,格式 并行总线串行总线,方向 单向总线双向总线,在计算机中,基本上有两种信息在流动,一种信息为数据,即各种原始数据、中间结
7、果、程序(代码)等。这些数据由输入设备输入至运算器,再储存于存储器中;在运算处理过程中,数据从存储器读入运算器进行运算;运算的中间结果要存入存储器中,或最后由运算器经输出设备输出。,计算机在运行过程中,人向计算机发出的各种命令(即程序)也以数据的形式由存储器送入控制器,再由控制器经译码后变为各种控制信号。所以,另一种信息就是控制命令。控制运算器按规定一步步地进行各种运算和处理、控制存储器的读和写、控制输出设备输出结果等等。,一、微型计算机的工作过程,由于执行每一条指令,都包括取指、译码和执行三个基本步骤,所以,微型计算机的工作过程,也就是不断地取指令、译码和执行的过程,直到遇到停机指令时才结束
8、机器的运行。,3.2 计算机的基本工作原理,二、微处理器内部结构,数据总线,指令寄存器,操作码,地址码,-1,+1,指令译码,控制电路,堆栈指示器,地址寄存器,程序计数器,地址总线,内存储器,.,暂存 寄存器,累加器锁存器,ALU,标志寄存器,累加器A,通用寄存器组,.,微处理器的一般结构:1. 算术逻辑单元(ALU)2. 内部寄存器:累加器、通用寄存器、标志寄存器 . 程序计数器 . 指令寄存器 . 指令译码器 . 堆栈指示器 . 时序和控制电路 . 微处理器内部总线:芯片总线(局部总线)、系统总线(板总线)、外总线(通信总线),指令 计算机硬件能执行的一个基本操作命令 (让计算机完成某个操
9、作所发出的命令),指令系统 某一系列计算机(微处理器)的基本指令的集合,不同的计算机(微处理器)指令系统不同 程序 为使计算机完成某项特定任务而编写的一组有序的指令序列,三、指令及执行,指令执行过程:,内存,指令,取指周期:,执行周期:,控制信号,有关部件动作,CPU译码,CPU,程序的执行: CPU不断地,周而复始地取指令,分析指令,执行指令。,四、微型计算机系统的基本硬件组成,鼠标 MODEM,显示器,显示卡,微处理器,总线 (ISA、EISA、VESA、PCI),软盘适配器,软盘驱动器,硬盘适配器,硬盘驱动器,RAM/ROM,光盘驱动器,并行接口,串行接口,声卡,音响、话筒,打印机,主板
10、,主机箱,鼠标 MODEM,微型计算机系统的总线结构,五、系统主板,六、存储器分类,内存储器(主存) 外存储器(辅存),磁存储器光存储器,只读存储器(ROM)高速缓存(Cache)随机存取存储器(RAM),存储器,PROM EPROM E2ROM,静态RAM 动态RAM,磁带磁盘,软盘 硬盘,只读光盘(CD-ROM) 一次性写入光盘 可擦写光盘,内存储器, 功能:存放当前正在运行的程序和所需的数据 存储容量:存储器能存储的总字节数 可直接与CPU交换信息 工作方式:按地址存取 CPU的寻址能力:由地址线的多少决定 (2N) 随机存取存储器(RAM ): 存放用户程序和数据,具有易失性(断电后R
11、AM中的内容全部丢失) 高速缓冲存储器(Cache) 只读存储器(ROM):存放不变的程序和数据(如引导程序、基本输入/输出系统BIOS),具有非易失性(断电后ROM中的内容不会丢失)。,ROM又分为:掩模型ROM:生产厂家写入,无法更改。PROM(可编程只读存储器)EPROM:可擦除可编程只读存储器,紫外线照射可擦除E2ROM:电可擦除可编程只读存储器,可反复更换其中信息的ROM,所以被现在的微机主板ROMBIOS广泛使用。闪存:电可擦除RAM,现在的主流,3.3 运算器,3.3.1 加法器,运算器是根据程序的指令功能,以ALU算术逻辑运算单元为核心,在控制器的控制下完成算术四则运算、逻辑运
12、算及其他运算的部件。,3.3.2 定点加减运算,3.3.3 溢出的产生与判断,补码加,补码加,溢出只发生在两同号数相加,并且次高位向最高位(符号位)有进位的情况下。这时,和的符号位同加数与被加数的符号必然相反。,判断溢出的三种方法: 1、两同号数相加,若结果与相加数符号不同,则表示发生了溢出; 2、符号位的进位输入Cn-1与进位输出Cn不相同,则表示发生了溢出; 3、采用双符号法。进行运算时,在加数和被加数前再增加一位与原数相同的符号位,构成双符号位,“00”表示正,“11”表示负,连双符号位一起参与运算后,若运算结果的符号位不同,则一定发生了溢出。,3.4 控制器,控制器的工作就是:控制运算
13、器和系统的其他部件不断地,周而复始地取指令,分析指令,执行指令。,控制器根据程序(即人向计算机发出的各种命令,也以二进制数据的形式依次存放在存储器中),自动完成将指令代码由存储器读入控制器的指令寄存器中,再由指令寄存器经译码后变为各种时序控制信号。从而控制运算器按既定的方式一步步地进行各种运算和处理、控制存储器的读和写、控制输出设备输出结果等等。然后,控制指令计数器自动加1,给出下一条指令的存放位置,启动下一个指令周期。,这样,CPU执行指令的过程,可看成是一个串行过程,读指令代码时,其他部件在等待,执行指令时,读指令部件又在等待, CPU工作效率较低。,CPU执行指令的过程,可具体分为如下六
14、个步骤: 1.取指(fetch); 2.译码(decoding); 3.计算有效地址(EA:Effective Address); 4.取操作数; 5.执行 6.存储运算结果 概括的说,可分为“取指令”和“执行指令”两个步骤。,早期的计算机将这两步采用先后轮流动作(串行),CPU效率较低。,流水线计算机(Pipeline Computer)这类计算机的结构采用生产上的流水线概念,把每条指令分为若干个顺序的操作,每个操作分别由不同的处理部件实现。这样构成的计算机,可以同时处理若干条指令,对于每个处理部件来讲,每条指令的同类操作(如“取指令”)像流水一样被连续加工处理,这种指令重叠、处理部件连续工
15、作的计算机,称为流水线计算机。采用流水线方式可以提高计算机的处理速度和提高处理部件的使用效率。,“指令流水”是一种实现多条指令重叠执行的重要技术。1990年以后出现的处理器,无论是RISC还是CISC,无一不采用“指令流水”技术。,可见,3条指令共需8个时间单位,即可全部执行完;如果完全串行执行,则需3X618个时间单位。显然,采用“流水线”技术可以显著提高计算机的处理速度。,0 1 2 3 4 5 6 7 8,取指 译码 计算EA 取数 执行 存结果,取指 译码 计算EA 取数 执行 存结果,取指 译码 计算EA 取数 执行 存结果,第一条指令,第二条指令,第三条指令,在流水线方式下,BIU
16、与EU同时动作(并行)完成指令周期,CPU效率高。,总线接口部件,执行部件,组合逻辑控制器原理 微程序控制器原理,1CPU 的结构模型机的 CPU 结构,如图110 所示。 算术逻辑单元 ALU(Arithmetic Logic Unit)是执行算术和逻辑运算的装置,他以累加器AL(Accumulator)的内容作为一个操作数;,3.5 模型机,另一个操作数由内部数据总线供给,可以是寄存器(Register)BL 中的内容,也可以是数据寄存器 DR( Data Register )的内容(由内存读出的)等;操作的结果通常放在累加器 AL 中。,F(Flag)是标志寄存器,由一些标志位组成(它的
17、作用我们在后面分析)。要执行的指令的地址由程序计数器 PC 提供,AR(Address Register)是地址寄存器,由他把要寻址的单元地址(可以是指令,地址由PC提供;也可以是数据,地址由指令中的操作数部分给定)通过地址总线送至存储器。,从存储器中取出的指令,由数据寄存器送至指令寄存器 IR(Instruction Register),经过指令译码器 ID(Instruction Decoder)译码,通过控制电路,发出执行一条指令所需要的各种控制信息。,模型机的字长为 8 位(即一个字节 Byte)。所以累加器 AL、寄存器 BL、数据寄存器 DR 都是 8 位的,因而双向数据总线也是
18、8 位的。在我们的模型机中又假定内存(容量)为 256 个单元。为了能对这些单元进行寻址,地址线也需 8 位( 28 256 )。因此,模型机的 PC 及地址寄存器 AR 也都是 8 位的。,2存储器模型机的存储器由 256 个单元组成。为了能区别不同的单元,对这些单元分别作了编号(即赋予它们不同的地址)。编号用 2 位十六进制数表示,这就是每个存储器单元的地址,如 00、01、02、FF 等;,每个单元可存放一个 8 位二进制( 1 个字节)信息(该信息通常用 2 位十六进制数表示)。每一个存储单元的地址和这个地址中存放的内容是完全不同的两个概念,千万不能混淆。,存储器中的不同存储单元,是由
19、地址总线上送来的地址(8 位二进制数),经过存储器中的地址译码器来寻找的(每给定一个地址,就可以从 256 个单元中找到一个对应于这个地址的存储单元),然后就可以对这个单元的内容进行读或写的操作。,3执行过程如果程序已经存放在内存中,大部分 8 位机执行过程就是取出指令和执行指令这两个阶段的循环(8086 与此不同,我们将在后面介绍)。机器从停机状态进入运行状态,只要把第一条指令所在的地址赋给 PC,然后进入取指(取出指令)阶段。,在取指阶段从内存中读出的内容必须是指令,DR 把他送至 IR。然后由指令译码器将指令译码,计算机就知道这条指令要执行什么操作。取指阶段结束后就进入执行阶段,当一条指令执行以后,就进入了下一条指令的取指阶段。这样的循环一直进行到程序结束(遇到停机指令)。,如果要求机器把两个数 7 和 10 相加。 用助记符形式表示的程序为: MOV AL,7 ADD AL,10 HLT但是,模型机不认识助记符,指令必须用机器码表示,同样,数也只能用二进制(或十六进制)表示。,第一条指令:1011 0000 (MOV AL,n)0000 0111 (n7) 第二条指令:0000 0100 (ADD AL,n)0000 1010 (n10) 第三条指令:1111 0100 (HLT) 总共是 3 条指令 5 个字节。,简单程序举例,