第2章 80x86 计算机组织

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2章80x86 计算机组织

1.教学目的:掌握INTEL80X86微处理器的结构及内存单元地址与内容的含义和关系,了解计算机接口的构成,为汇编语言编程奠定基础。

2.教学要求:

①熟练掌握INTEL80X86微处理器的结构

②掌握内存单元地址与内容的含义和关系

③了解计算机接口的构成

3.教学重点:

①微处理器的功能结构

②微存储器组织

4.掌握难点:

①微处理器的寄存器组

②存储器寻址

5.教学进程安排:P19~32

6.教学方法:

①重点讲授微处理器的功能结构和微存储器组织

②一般叙述计算机接口的构成

7.教学内容摘要:

2.1 80x86微处理器

80x86微处理器是美国Intel公司生产的微处理器系列。该公司成立于1968年,1969设计了4位的4004芯片,1973年开发了8位的8080芯片,1978推出了16位的8086芯片,由此开始了Intel公司80x86微处理器系列的历史。

2.1.1 微处理器概况

➢晶体管数:芯片中包含的晶体管数目,说明器件的集成度;

➢主频:芯片中所用的主时钟频率,反映计算机的运算速度;

➢数据总线:负责计算机中数据在各组成部分之间的传送;

➢数据总线宽度:芯片内部数据传送的宽度;

➢外部数据总线宽度:芯片内和芯片外数据交换的宽度;

➢地址总线宽度:传送地址的总线宽度,根据这一数值可以确定处理机可以访问的存储器的最大范围。

例:20位地址总线可以访问220=1048576个存储单元。

存储容量的换算:1K=210B=1024B; 1M=210K=1024K; 1G=210M=1024M;

➢高速缓存:存储速度比较快的存储器,现在有很多都做在芯片中

2.2 基于微处理器的计算机系统构成

微型计算机系统包括硬件和软件两部分。

2.2.1 硬件系统

图2.1给出了微型计算机组成框图。

图2.1 微型计算机硬件系统组成

把运算器、控制器、主存储器和输入/输出接口称为组成计算机硬件系统的五大部件。计算机硬件的五大部件是通过总线连接起来的,构成了计算机的基本硬件系统。各部分的主要功能如下:

➢ 输入设备:用于输入原始信息和处理信息的程序。如键盘、鼠标器和扫描仪等。 ➢ 输出设备:用来输出计算机的处理结果及程序清单。如显示器和打印机。

➢ 存储器:用来存放程序和数据。在控制器的控制下,可与输入设备、输出设备、运

算器、控制器交换信息,是计算机中各种信息存储和交流的中心。 ➢ 运算器:用来对信息及数据进行处理和计算。也称为算术逻辑部件ALU (Arithmetic

and Logic Unit )。

➢ 控制器:是整个计算机的指挥中心,用来指挥计算机各部件的操作,使其协调一致

地工作。

2.2.2 软件系统

计算机软件是计算机系统的重要组成部分,它可以分成系统软件和应用软件两大类。图2.2表示了计算机软件的层次。

图2.2 软件系统的层次

2.3 中央处理机

2.3.1中央处理机CPU 的组成

➢ 算术逻辑部件:进行算术和逻辑运算; ➢ 控制逻辑部件:负责对全机的控制工作;

➢ 工作寄存器:存放计算过程中所需要的或所得到的各种信息。

2.3.2 80X86寄存器组

图2.3 80X86的程序寄存器组

程序不可见的寄存器:一般应用程序不使用而由系统所用的寄存器;

程序可见的寄存器:汇编语言程序设计中用到的寄存器,分为:通用寄存器、专用寄存器、段寄存器。 1、通用寄存器

(1)数据寄存器(AX 、BX 、CX 、DX ):用来暂时存放计算过程中所用到的操作数、结果或其它信息,可以以字(16位)也可以以字节(8位)的形式访问。

AX: ① 累加器;② 乘、除等指令中用来存放操作数;③ 传递I/O 指令与外设的信息。 BX :① 通用寄存器;② 基址寄存器。

CX :①通用寄存器;② 保存计数值,如在移位指令、循环指令(loop )、串处理指令中用作隐含的计数器。

DX :①通用寄存器;②双字长运算时,和AX 组合在一起存放双字长数,DX 存放高位字;③ 在某些I/O 操作中,存放端口地址;

(2)指针(或变址)寄存器(SP 、BP 、SI 、DI ):① 运算过程中存放操作数,只能以字(16位)为单位使用;② 存储器寻址时,提供偏移地址。

SP (堆栈指针寄存器):用来指示段顶的偏移地址;

32位名称 16位名称 通用名称 累加器)

EAX EBX ECX EDX ESP EBP EDI ESI

EIP EFLAGS

注:1. 对于8086/88或80286CPU ,图

中阴影区寄存器是不存在的; 2. FS 和GS 寄存器无专用名称。

BP(基址指针寄存器):可作为堆栈区中的某一个基地址,与堆栈段寄存器SS联用来确定堆栈段中的某一存储单元的地址;

SI(源变址寄存器)和DI(目的变址寄存器):①一般与数据段寄存器DS联用,用来确定数据段中某一存储单元的地址。②具有自动增量和自动减量的功能。③在串处理指令中,SI和DI作为隐含的源变址和目的变址寄存器,SI和DS联用实现在数据段中寻址,DI 和附加段寄存器ES联用实现在附加段中寻址。

2、专用寄存器(IP、SP、FLAGS)

IP(▲指令指针寄存器):存放代码段CS中的偏移地址。在程序运行的过程中,始终指向下一条指令的首地址,与代码段CS联用来确定下一条指令的物理地址。

SP(堆栈指针寄存器):与堆栈段寄存器SS联用来确定堆栈段中栈顶的地址,即存放栈顶的偏移地址。

FLAGS(标志寄存器/程序状态寄存器PSW):存放条件码标志、控制标志、系统标志,可按位操作。

图2.4 80X86的标志寄存器

(1)条件码标志位:记录程序中运行结果的状态信息,根据有关指令的运行结果由CPU 自动设置,用作后续条件转移指令的转移控制条件。

①溢出标志(OF):在运算过程中,如操作数超出了机器能表示的范围称为溢出。此时OF置1,否则置0。

②符号标志(SF):记录运算结果的符号,负时置1,否则置0。

③零标志(ZF):运算结果为0时置1,否则置0。

④进位标志(CF):最高有效位有进位时置1,否则置0。

⑤辅助进位标志(AF):记录运算时第3位产生的进位值,有进位时置1,否则置0。

⑥奇偶标志(PF):用来为机器中传送信息时可能产生的代码出错情况提供检验条件。当结果操作数中1的个数为偶数时置1,否则置0。

⑦控制标志位(DF):在串处理指令中控制处理信息的方向。

当DF为1时,每次操作后使变址寄存器SI和DI减小,串处理从高地址向低地址方向处理。

当DF为0时,每次操作后使变址寄存器SI和DI增大,串处理从低地址向高地址方向处理。

(2)系统标志位:用于I/O、中断屏蔽、程序调试、任务切换和系统工作方式等的控制。一般应用程序不必关心这些位,只有系统程序员或需要编制低层I/O设备控制等程序时才需要。

①陷阱标志(TF):用于调试时的单步方式操作。TF为1时,每条指令执行完后产生陷阱,由系统控制计算机;TF为0时,CPU正常工作,不产生陷阱。

②中断标志(IF):当IF为1时,允许CPU响应可屏蔽中断请求,否则关闭中断。(第八章)

③I/O特权级(IOPL):在保护模式下,用于控制对I/O地址空间的访问。(第八章)

标志位的符号表示

相关文档
最新文档