第2章 8x86 计算机组织
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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.3 中央处理机
2.3.1中央处理机CPU 的组成
算术逻辑部件:进行算术和逻辑运算; 控制逻辑部件:负责对全机的控制工作;
工作寄存器:存放计算过程中所需要的或所得到的各种信息。
2.3.2 80X86寄存器组
32位名称 16位名称 通用名称 累加器)
EAX EBX ECX EDX ESP EBP EDI ESI
EIP EFLAGS
注:1. 对于8086/88或80286CPU ,图
中阴影区寄存器是不存在的; 2. FS 和GS 寄存器无专用名称。
图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(堆栈指针寄存器):用来指示段顶的偏移地址;
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。