




已阅读5页,还剩229页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微型计算机应用基础,第一章计算机基础知识 第一节微型计算机概述 第二节微型计算机系统组成 第三节计算机中数据表示,第一节微型计算机概述 1946年2月,在美国宾夕法尼亚大学研制成了世界上第一台数字式电子计算机ENIAC。 1944年夏,著名的数学家冯诺依曼(Von Neumann)偶然获知ENIAC的研制。 1949年,这一新思想首先由英国剑桥大学的威尔克斯(MVWilkes)等在EDSAC(Electronic Delay Storage Automatic Calculator)机上实现。,这四个发展阶段以硬件为主要标志,但也包括了软件技术的发展。 第一代是电子管数字计算机。 第二代是晶体管计算机。 第三代是中小规模集成电路计算机。 第四代是大规模、超大规模集成电路计算机。,一、微型计算机的发展 所谓“微型计算机”是指这样的计算机:以大规模、超大规模集成电路为主要部件,以微处理器(包含运算器和控制器)为核心所构造出来的计算机系统。 微型计算机又称个人计算机(Personal Computer,PC),简称微机,1971年Intel公司的工程师马西安霍夫(MEHoff)成功地在一个芯片上实现了中央处理器(Central Processing Unit,CPU)的功能,制成了世界上第一片微处理器芯片Intel 4004,该芯片字长4位,集成了约2300个晶体管,每秒可进行6万次运算。,第一代微型计算机的发展年代为1971年至1972年,主要产品是4位和低档8位微机。 第二代微型计算机的发展年代为1973年至1977年,主要产品为中、高档8位微机。 第三代微型计算机的发展年代为1978年至1984年,各公司相继推出一批16位的微处理器芯片。 第四代微型计算机的发展年代为1985年至1999年,1985年Intel公司推出32位微处理器芯片80386,其集成度达到275万晶体管/片,每秒可完成500万条指令(MIPS)。 第五代微型计算机的发展年代为2000年至今,新一代字长64位的微处理芯片已经诞生,这就是2000年8月,Intel展示的Itanium(安腾)CPU。,计算机从体系结构的变革到器件与技术的革命都将要产生一次量的乃至质的飞跃,未来可能出现的新型计算机主要有以下几种类型。 (1)纳米计算机。 (2)量子计算机。 (3)光子计算机。 (4)生物计算机。,二、微型计算机的应用 微型计算机具有体积小、价格低、工作可靠、使用方便、通用性强等特点,应用方向主要有: 1 用于数值计算、数据处理及信息管理方向 这一应用方向包括了工程计算、图形图像处理、计算机辅助设计(CAD)、计算机辅助教育(CAI)、文字图表处理、数据库管理及家庭娱乐等。 2用于过程控制及智能化仪器仪表方向 应用于这一方向的主要是一些专用微机,如工业PC机、STD总线工控机、PC/104总线工控机以及由8位或16位微处理器芯片或单片微控制芯片构成的各种目标系统。,第二节微型计算机系统组成 微型计算机系统由硬件系统和软件系统两大部分组成。 硬件(Hardware)系统是指构成计算机系统的各种物理设备的总称,是计算机系统的物质基础;软件(Software)系统是运行、管理和维护计算机的各类程序和文档的总称。一、微型计算机的硬件系统 微型计算机硬件系统由微处理器、存储器、各种输入/输出(I/O)接口电路以及系统总线组成。,1微处理器子系统 微型计算机上的中央处理器(Central Processing Unit, CPU)称为微处理器(Micro Processing Unit,MPU),MPU是整个微机的核心部件,它是采用大规模集成电路技术做成的芯片,芯片内集成了控制器、运算器和若干高速存储单元(即寄存器组)。 计算机是一个自动的数据处理机,依靠机内存储的程序和数据来自动运行,存储器(Memory)就是存放程序和数据的部件。,3I/O设备和I/O接口 I/O设备是指微机上配备的输入/输出设备,也称外部设备或外围设备(简称外设),其功能是为微机提供具体的输入/输出手段。 微机上配置的标准输入设备和标准输出设备是指键盘和显示器,二者又合称为控制台,此外,系统还可选择鼠标器、打印机、绘图仪、扫描仪等I/O设备。作为外部存储器驱动装置的磁盘驱动器,既可看做是一个输出设备,又可看做是一个输入设备。,4系统总线 总线(BUS),是指计算机系统中能够为多个部件共享的一组公共信息传输线路。 (1)传送地址信息的总线称“地址总线”(Address Bus, AB)。CPU在AB总线上输出将要访问的内存单元或I/O端口的地址。 (2)传送数据信息的总线称“数据总线”(Data Bus, DB)。 (3)传送控制信息的总线称“控制总线”(Control Bus, CB)。控制信号线用于协调系统中各部件的操作。,二、微型计算机的软件系统 操作系统的基本功能是负责管理、调度整个系统的软、硬件资源,包括:CPU、存储器、I/O设备等硬件资源以及文件、目录、进程、任务等软件资源。 应用软件是指利用计算机的软/硬件资源为某一专门的应用领域开发的软件。从大的方面来讲,可以是面向数据库管理、面向计算机辅助设计、面向文字处理的软件或软件包;从小的方面来说,可以是为某个单位、某项工作的具体需要而开发的软件。,第三节计算机中数据表示 计算机最基本的功能是对数据进行计算和加工处理,这些数据包括数值、字符、图形、图像和声音等。 在使用上,计算机中的数据可以分为两类。 数用来直接表征量的多少。它们有大小之分,并能进行加减等运算。 码指代码或编码(Code),在计算机中用来代表某个事物或描述某种信息。,一、计算机中的数 在日常记数中,人们使用最多的是十进制数。而在计算机中使用的是二进制数,为了书写和表示方便,还引入了与二进制数有密切关系的十六进制数和八进制数。 (一)进位计数制中的几个基本概念 1进位计数制 常用的进位计数制有十进制、二进制、十六进制和八进制。十进制中有十个数码符号,即“0”“9”,执行逢10进1的运算规则。,2基数 某种进位计数制中允许选用的基本数码的个数就是该数制的基数(Base),如二进制的基数为2,八进制的基数为8,十进制的基数为10,N进制的基数为N。 3权 也称位权、权重,表示进位计数制中各个数位上的单位值。权一般以基数幂的形式来表示。,(二)不同数制间的转换 1十进制到N进制的转换 将十进制数转换为N进制数时,可将此数分成整数与小数两部分分别转换,然后再拼接起来即可。 整数部分:采用除以N(基数)取余法,即将十进制数不断除以N取余数,直到商为0;余数从右到左排列,首次取得的余数排在最右边。 小数部分:采用乘以N(基数)取整法,即将十进制小数不断地乘以N取整数,直到小数部分为0或达到所要求的精度为止(小数部分可能永远不会得到0),所得的整数从小数点自左往右排列,首次取得的整数排在最左边。,2N进制到十进制的转换 把任意N进制数写成按权展开式后,各位数码乘以各自的权值累加,就可得到该N进制数对应的十进制数。 3二进制与十六进制间的转换 二者间有一个简单的对应关系,以小数点为中心,两侧每4位二进制数对应1位十六进制数,首尾不足4位时用“0”补足;反向操作时亦然。 4二进制与八进制间的转换 二者间也有一个简单的对应关系,以小数点为中心,两侧每3位二进制数对应1位八进制数,首尾不足3位时用“0”补足;反向操作亦然。,(三)定点数 真值指符合人们使用习惯的数的原始表示形式。 机器数指数据在机器中的实际表示形式。 定点数指小数点的默认位置已被固定的数。 定点整数又可以分为两类: 无符号的定点整数(简称“无符号数”)机器数只表达0和正数,机器数的每一位都用来表示数值,都是权重。 有符号的定点整数(简称 “有符号数”)机器数表达0、正数和负数,一般选最高有效位作为“符号位”来表示数的正负:为0表示正数,为1表示负数。 (四)浮点数 浮点数中小数点的位置是浮动的。在计算机中,浮点数由阶符、阶码、数符、尾数四部分组成。,二、计算机中的码 (一)BCD码 BCD码又称二-十进制编码(Binary Coded Decimal Number),意思是用4位二进制数的编码形式来表示十进制的10个数码09,其码长为4位。 (二)ASCII码 ASCII编码的全名为“美国标准信息交换码”(American Standard Code for Information Interchange)。它最初是美国国家标准,供不同计算机在相互通信时用做共同遵守的西文字符编码标准,后被ISO及CCITT等国际组织采用。 (三)汉字国标码 国标码规定,每个字符的编码占用2个字节,每个字节的最高位为“0”。这样的编码空间为2727=128128=16 384,即可以表示16 384个不同的字符。国标码中仅含有7000多个不同字符,所以足够用了。,第二章微处理器 第一节微处理器的原理与组成 第二节8086/8088微处理器 第三节8086/8088的存储器与I/O组织 第四节80x86系列微处理器 第五节Pentium级微处理器简介,第一节微处理器的原理与组成 微处理器是一种采用大规模集成电路技术,将具有运算器和控制器功能的电路及相关电路集成在一片芯片上的大规模或超大规模集成电路。 一、微处理器的组成 一般而言,微处理器芯片上集成有控制器、运算器、寄存器以及连接它们的内部总线等部件。运算器具有算术运算和逻辑运算功能,是对数据进行加工处理的部件,又称为算术逻辑单元。,二、微处理器的工作原理 微处理器的工作过程是执行程序的过程,而执行程序就是顺序执行一条条指令。 微处理器在执行指令时的步骤如下: (1)取指令。 (2)指令译码。 (3)取操作数。 (4)执行运算。 (5)回送结果。,三、微处理器的性能指标 CPU的性能指标主要有以下几点: 1主频 主频,即CPU的时钟频率,或称工作频率。 2外频 外频即CPU的外部时钟频率,主板及CPU标准外频主要有66 MHz、100 MHz、133 MHz几种。 3倍频 倍频是指CPU外频与主频相差的倍数。 4接口 接口指CPU和主板连接的接口。接口主要有两类:一类是卡式接口,称为Slot;另一类是主流的针脚式接口,称为Socket。,5缓存 缓存是指可以进行高速数据交换的存储器,它先于内存与CPU交换数据,因此速度极快,又被称为高速缓存。 (1)内部缓存 (L1 Cache)。 也就是我们常说的一级高速缓存,在CPU中内置高速缓存的目的是提高CPU的运行效率。 6多媒体指令集 为了提高计算机在多媒体、3D图形方面的应用能力,许多处理器指令集应运而生,其中最著名的三种便是Intel的MMX、SSE/SSE2和AMD的3D NOW!指令集。,7制作工艺 制作工艺越精细意味着单位体积内集成的电子元件越多。 8电压(Vcore) CPU的工作电压与制作工艺及集成的晶体管数相关。正常工作电压越低,功耗越低,发热就越少。 9封装形式 CPU的封装方式取决于CPU安装形式和器件集成设计,从大的分类 来看通常采用Socket插座进行安装的CPU使用PGA(栅格阵列)方式封装。 10整数和浮点运算能力 整数处理能力是CPU运算速度最重要的体现,浮点运算能力是关系到CPU的多媒体、3D图形处理的一个重要指标,第二节8086/8088微处理器 一、8086/8088 CPU主要特性 16位数据总线(8088外部数据总线为8位)。 20位地址总线,其中低16位与数据总线复用,可直接寻址1 MB存储器空间。 16位端口地址线可寻址216个I/O端口。 7种基本寻址方式。 99条基本指令,具有对字节、字和字串进行操作的能力。 可处理内部软件和外部硬件中断,中断源多达256个。 支持单处理器、多处理器系统工作。,二、8086/8088 CPU功能结构 功能结构,就是从程序员和使用者的角度看到的结构,当然,这种结构与CPU内部的物理结构和实际布局是有区别的。 (一)执行部件EU 执行部件主要由运算器ALU、通用寄存器、状态标志寄存器和执行部件控制电路组成,其功能主要是负责指令的执行。 1运算器ALU(Arithmetic Logic Unit) 运算器也称为算术逻辑运算单元,负责CPU进行的各种运算,如算术运算、逻辑运算和数据传送等操作。,2通用寄存器 通用寄存器共有8个,即AX、BX、CX、DX、SP、BP、DI和SI,各16位。 3 16位标志寄存器FLAGS用来存放CPU运算的状态特征和控制标志。 4运算暂存器 协助ALU完成运算,暂存参加运算的数据。 5执行部件控制电路(指令译码器) 它是控制、定时与状态逻辑电路,接收从BIU指令队列中取来的指令,经过指令译码形成各种定时控制信号,对EU的各个部件实现特定的操作。,(二)总线接口部件BIU 总线接口部件如图21中虚线右侧部分所示,由段寄存器、指令指针寄存器、地址加法器、指令队列和总线控制电路组成,其功能是负责完成CPU与存储器或I/O设备之间的数据传送。 (1)指令队列出现空字节(8088 CPU 1个空字节,8086 CPU 2个空字节)时,从内存取出后续指令。 (2)EU需要从内存或外设端口读取操作数时,根据EU给出的地址从内存或外设端口读取数据供EU使用。 (3)EU的运算结果、数据或控制命令等由BIU送往指定的内存单元或外设端口。,1段寄存器 4个16位段寄存器为代码段寄存器CS(Code Segment)、数据段寄存器DS(Data Segment)、堆栈段寄存器SS(Stack Segment)和附加数据段寄存器ES(Extra Segment),用于存放相应段的段地址。 2指令指针IP 16位寄存器,存放代码段中指令的偏移地址,与CS连用。 3地址加法器 20位,段地址左移4位与偏移地址相加,生成20位物理地址。,4指令缓冲队列与流水线技术 (1)当8086指令队列有两个空字节单元或8088有一个空字节单元时,总线接口部件自动取指令。 (2)程序执行过程中需要访问存储器或I/O设备时,则由执行部件EU向总线接口部件BIU发请求信号。 (3)在执行转移、调用/返回指令时,队列中的指令自动消除,总线接口部件按转移地址或调用/返回地址重新取指令,并送入指令队列。,5总线控制电路 (1)取指操作。当指令队列有空缺或程序转移需要形成新的指令队列时,BIU通过总线进行取指。 (2)取指以外的其他总线访问。包括读写存储器操作数、输入输出、响应中断时向CPU传送中断向量等,这些操作应指令或外设的要求,由BIU负责进行。 (3)总线空闲。当指令队列已满、CPU又在进行内部操作时,总线呈空闲状态。 (4)总线请求设备占用总线。总线请求设备(如DMA控制器、协处理器等)经过申请获得总线的使用权后,即可访问总线上的资源(存储器或I/O设备)。,三、8086/8088寄存器结构 (一)通用寄存器 通用寄存器包括四个数据寄存器、两个地址指针寄存器和两个变址寄存器。 1数据寄存器AX、BX、CX、DX 数据寄存器一般用于存放参与运算的操作数或运算结果。每个数据寄存器都是16位的,但又可将高、低8位分别作为两个独立的8位寄存器来用。,上述4个寄存器一般用来存放数据,但它们各自都有自己的特定用途。 (1)AX(Accumulator)称为累加器。用该寄存器存放运算结果可使指令简化,提高指令的执行速度。 (2)BX(Base)称为基址寄存器。 (3)CX(Counter)称为计数器。在设计循环程序时使用该寄存器存放循环次数,可使程序指令简化,有利于提高程序的运行速度。 (4)DX(Data)称为数据寄存器。,2地址指针寄存器SP、BP SP(Stack Pointer)称为堆栈指针寄存器。在使用堆栈操作指令(PUSH或POP)对堆栈进行操作时,每执行一次进栈或出栈操作,系统会自动将SP的内容减2或加2,以使其始终指向栈顶。 BP(Base Pointer)称为基址寄存器。作为通用寄存器,它可以用来存放数据,但通常是存放操作数在堆栈段内的偏移地址。 3变址寄存器SI、DI SI(Source Index)称为源变址寄存器,DI(Destination Index)称为目的变址寄存器。这两个寄存器通常用在字符串操作时存放操作数的偏移地址,其中SI存放源串在数据段内的偏移地址,DI存放目的串在附加数据段内的偏移地址。,(二)段寄存器 8086/8088的四个段寄存器分别为: (1)CS(Code Segment)代码段寄存器。用来存储程序当前使用的代码段的段地址。 (2)DS(Data Segment)数据段寄存器。用来存放程序当前使用的数据段的段地址。 (3)SS(Stack Segment)堆栈段寄存器。用来存放程序当前所使用的堆栈段的段地址。 (4)ES(Extra Segment)附加数据段寄存器。用来存放程序当前使用的附加数据段的段地址。,(三)控制寄存器 IP(Instruction Pointer)称为指令指针寄存器,用来存放下一条要读取的指令在代码段内的偏移地址。 1状态标志位 状态标志位OF、 SF、 ZF、 AF、 PF和CF用来反映算术和逻辑运算结果的一些特征, 如结果是否为“0”,是否有进位、借位、溢出等。许多指令的执行都可以改变这些状态标志位,但不同指令对状态标志位的影响是不同的。 (1)CF(Carry Flag)进位标志。当进行加减运算时,若最高位发生进位或借位则CF为1,否则为0。,(2)PF(Parity Flag)奇偶标志位。当指令执行结果的低8位中含有偶数个1时,PF为1,否则为0。 (3)AF(Auxiliary Flag)辅助进位标志位。 (4)ZF(Zero Flag)零标志位。若当前的运算结果为0,则ZF为1,否则为0。 (5)SF(Sign Flag)符号标志位。当运算结果的最高位为1时,SF=1,否则为0。 (6)OF(Overflow Flag)溢出标志位。,2控制标志位 控制标志位有3个,用来控制CPU的操作,由程序设置或清除。它们是: TF(Trap Flag)跟踪(陷阱)标志位。它是为测试程序的方便而设置的。 IF(Interrupt Flag)中断允许标志位。它是用来控制可屏蔽中断的控制标志位。 DF(Direction Flag)方向标志位。若用STD将DF置1,串操作按地址递减方式进行。,四、8086/8088 CPU引脚信号与总线周期 (一)总线周期 计算机的操作是在系统时钟CLK控制下严格定时的,每一个时钟周期称为一个“T状态”,T状态是总线操作的最小时间单位。CPU从存储器或I/O端口进行一次读/写操作所需的时间称为“总线周期”。 (二)8086/8088 CPU引脚及其功能 8086/8088芯片有40条引脚,双列直插式封装。包括20根地址线,16根(8086)或8根(8088)数据线以及控制线、状态线、电源线和地线等,若每个引脚只传送一种信息,那么芯片的引脚将会太多,不利于芯片的封装。,(1)基本工作状态引脚 电源线VCC(第40引脚):输入,接入10%单一+5 V电源。 地线GND(引脚1和20):输入,两条地线均应接地。 (2)地址/数据(状态)引脚 地址/数据分时复用引脚AD15AD0(Address Data):引脚39及引脚216,传送地址时单向输出,传送数据时双向输入或输出。 (3)控制引脚 NMI(Non-Maskable Interrupt):引脚17,非屏蔽中断请求信号,输入,上升沿触发。,(4)RESET:引脚21,复位信号,输入,高电平有效。复位信号使处理器马上结束现行操作,对处理器内部寄存器进行初始化。 (5) READY:引脚22,数据“准备好”信号线,输入。它实际上是所寻址的存储器或I/O端口发来的数据准备就绪信号,高电平有效。(6) TEST:引脚23,等待测试信号,输入,低电平有效。当CPU执行WAIT指令时,每隔5个时钟周期对该引脚进行一次测试。(7) RD(Read):引脚32,读控制信号,输出,从T2开始低电平有效,启动一次主存/外设读操作。 (8) BHE/S7(Bus High Enable / Status):引脚34,高8位数据总线允许/状态复用引脚,BHE输出。,五、8086微处理器工作方式 (一)最小工作模式 当MN/MX 引脚接高电平时,8086/8088 CPU工作在最小模式。也就是说,在构成微型计算机系统时控制信号均由8086产生,外部只提供时钟信号。 (1)INTA(Interrupt Acknowledge):引脚24,中断响应信号,输出。 (2)ALE(Address Latch Enable):引脚25,地址锁存允许信号,输出。 (3)DEN(Data Enable):引脚26,数据允许信号,输出。它从T2开始低电平有效,用来控制总线收发器8286/8287传送数据。,(4)DT/R(Data Transmit/Receive):引脚27,数据发送/接收信号,输出,用来控制数据的传送方向。 (5)M/IO(Memory/Input and Output):引脚28,存储器/IO端口控制信号,输出,用来区分CPU是进行主存储器访问还是I/O端口访问。 (6)WR(Write):引脚29,写命令,输出,从T2开始低电平有效。 (7)HOLD(Hold request):引脚31,总线保持请求信号,输入。(8)HLDA(Hold Acknowledge):引脚30,总线保持响应信号,输出。,(二)最大工作模式 (1)QS1、QS0(Instruction Queue Status):引脚24、25,指令队列状态信号,输出。 (2)S2、S1、S0(Bus Cycle Status):引脚26、27、28,总线周期状态信号,输出。 (3)LOCK(Lock):引脚29,总线封锁信号,输出,低电平有效。 (4)RQ/GT1、RQ/GT0(Request/Grant):引脚30、31,总线请求允许 (输入)/总线请求允许(输出)双向信号线。,六、8086的典型时序 (一)存储器读周期 一个基本的存储器读周期由四个T状态组成。 T1状态输出20位存储器地址A19A0;M/IO输出高电平,表示存储器操作;ALE输出正脉冲,表示复用总线输出地址。 T2状态控制信号RD变为有效,允许将被地址信息选中的存储单元或I/O端口中的数据读出;DEN变为低电平,以选通8286,允许数据传送。 T3状态被选中的存储单元或I/O端口把数据送到数据总线,以备CPU来读取。 T4状态前沿读取数据,完成数据传送。,(二)存储器写周期 T1状态输出20位存储器地址A19A0;ALE输出正脉冲,表示复用总线输出地址;M/IO输出高电平,表示存储器操作。 T2状态当16位地址线A15A0已由ALE锁存后,CPU就把要写入存储器的16位数据放在AD15AD0上。同时WR信号有效,进行写入。 DT/R在整个写周期输出高电平,它和DEN的低电平相配合,选通双向数据总线驱动器(8286)的发送通道,数据得以发送到数据线上。 T3和Tw状态检测数据传送是否能够完成。 T4状态CPU在T4状态的前沿完成对指定的存储单元或外设端口的数据写入,数据和控制信号被撤除。,第三节8086/8088的存储器与I/O组织 一、计算机中信息的单位 计算机中的信息单位有以下几种类型: (1) 二进制位Bit:存储一位二进制数0或1。 (2) 字节Byte:8个二进制位,D7D0。 (3) 字Word:16位,2个字节,D15D0。 (4) 双字DWord:32位,4个字节,D31D0。 根据机器字长的不同,还可以有四字、十字等形式。,二、存储器地址空间 8086/8088微处理器有20 条地址总线,可直接对2201 M个存储单元进行访问。 每个存储单元都有一个20位的地址,称为物理地址。这1 M个存储单元对应的地址为00000HFFFFFH。 每个存储单元存放一个字节型数据。一个存储单元中存放的信息称为该存储单元的内容。存储器内两个连续的字节,定义为一个字。 一个字中的每个字节都有一个字节地址,每一个字的低字节(低 8 位)存放在低地址中,高字节(高 8 位)存放在高地址中,并以低地址来表示它所占据的地址空间。,三、逻辑段和段寄存器 CPU内部可以提供地址的寄存器BX、IP、SP、BP、SI和DI及算术逻辑运算单元ALU都是16位,只能直接寻址64 KB的存储空间。 8086 CPU巧妙地采用了地址分段方法,把1 MB的存储器空间划分成若干个段,每段最大空间容量是 64 KB的存储单元,称为逻辑段。 各逻辑段的起始地址必须是能被16整除的地址,即段的起始地址的低4位二进制码必须是0。一个段的起始地址的高16位被称为该段的段基地址(段地址)。,(1)代码段(Code Segment)。该逻辑段用来存放程序和常数。(2)数据段(Data Segment)。该逻辑段用于数据的保存。 (3)附加段(Extra Segment)。该逻辑段同样用于数据的保存。用户在访问该段内的数据时,其偏移地址同样可以通过多种寻址方式来形成,但在偏移地址前一般要加上段的说明(即段超越前缀ES,EA)。 (4)堆栈段(Stack Segment)。堆栈(Stack)是主存中一个特殊的区域。,四、物理地址或逻辑地址 段地址(Segment Address):一个16位的无符号数,它描述了要寻址的逻辑段在内存中的起始位置。 偏移地址(Offset Address):一个16位的无符号数,它描述了要寻址的内存单元距本段段首的偏移量。 CPU在对存储单元进行访问时,必须在20位的地址总线上提供一个20位的地址信息,以便选中所要访问的存储单元。 把CPU对存储器进行访问时实际寻址所使用的20位地址称为物理地址。 从逻辑地址到物理地址的转换由BIU中20位的地址加法器自动完成,物理地址(PA)段地址10 H偏移地址(EA),五、堆栈与堆栈操作 堆栈是计算机的一种数据结构,处于存储器中一个特定区域。 1开辟堆栈的目的 (1)保护断点和现场。 (2)存放指令操作数(变量)。 2堆栈操作 对堆栈段的数据操作采用的是“先进后出”或“后进先出”存取操作方式。 堆栈操作的特点: (1) 双字节操作,每次进、出栈的数据均为两个字节。 (2)堆栈只有一个出口,即当前栈顶,用堆栈指针寄存器SP指定,且只有两种操作即进栈和出栈。 (3)堆栈向低地址方向生长。即数据进栈时,栈指针SP向低地址方向移动(SP减2)。,六、8086/8088 的I/O组织 8086/8088系统和外部设备之间是通过I/O接口电路来联系的。每个I/O接口都有一个或几个端口,在微机系统中每个端口分配一个地址号,称为端口地址。一个端口通常为I/O接口电路内部的一个寄存器或一组寄存器。 8086/8088 CPU用地址总线的低16位作为对8位I/O端口的寻址线,因此,8086/8088系统可访问的8位I/O端口有65536(64 K)个。两个编号相邻的8位端口可以组成一个16位的端口。,第四节80x86系列微处理器 一、80286微处理器 80286具有以下特点: (1)24根地址线,最多可寻址16 MB的实际存储空间和64 KB的I/O地址空间。 (2)数据线和地址线完全分离。采用总线周期的流水作业,总线周期基本上由TS(Send Status)和TC(Perform Command)两个时钟周期组成,明显提高了数据访问的速度。 (3)具有“实地址方式”(Real Address Mode)和“保护虚地址方式”(Protected Virtual Address Mode)两种工作方式,简称为“实方式”和“保护方式”。,(4) 在保护方式下,80286的存储管理仍然分段进行,每个逻辑段的最大长度为64 KB,增加虚拟存储管理功能。 (5)在保护方式下,由硬件提供的保护机制,一般不会增加指令的执行时间,这些保护包括对逻辑段的操作属性(可执行、可读、只读、可写)和长度界限(164 KB)进行检查,禁止错误的段操作。 (6)提供任务间的保护。80286为每个任务提供多达05 GB的全局存储空间,防止错误的应用任务对其他任务进行不正常的干预。,(一)80286微处理器组成 80286处理器内部是由四个独立的部件组成,分别为执行部件(EU)、总线接口部件(BIU)、指令部件(IU)和地址部件(AU)。 总线接口部件(BIU)由地址锁存器、地址驱动器、协处理器扩展接口、总线控制器、数据收发器、预取指器和6字节预取指令队列组成。 地址部件(AU)由地址偏移量加法器、段界限检查器、段基址寄存器、段容量寄存器、物理地址加法器等组成。,(二) 寄存器的构成 1通用寄存器 通用寄存器与8086相同,有AX、BX、CX、DX、BP、SP、SI和DI八个16位寄存器。 2控制和状态寄存器 (1)指令寄存器IP 指令寄存器用来指出下一条要执行指令的偏移地址。该寄存器在总线接口部件(BIU)中,并由总线部件对其进行自动修改。 (2)状态标志寄存器 PSW (3)机器状态字寄存器MSW,机器状态寄存器用来表示当前处理器所处的状态。MSW寄存器是一个80286中新设计的16位机器状态字寄存器,仅用了其中的4位。 这4位的含义及作用如下: 保护方式允许PE:用于向虚地址保护方式转换。 监控协处理器MP: 用于协处理器80287NPX的接口, 该位表示系统有80287。 模拟协处理器EM: EM为1, 表示可用软件模拟80287指令仿真一个协处理器;EM为0,表示将允许协处理器操作码在80287上执行。 任务转换TS:当80286完成任务转换时,即80286从执行某一个任务转换到执行另一个任务,TS被自动置“1”;当80286复位时,TS被清“0”。,3段寄存器 16位的寄存器,实际上每个段寄存器都是由一个16位的段选择器和一个48位的段高速缓冲寄存器组成。只有16位的段选择器可直接进行访问,而高速缓冲寄存器不能被程序直接访问。 4描述符表寄存器和任务寄存器 80286中的描述符表寄存器分为GDTR(全局描述符表寄存器)、LDTR(局部描述符表寄存器)和IDTR(中断描述符表寄存器),分别用来在虚地址保护方式下管理相应描述符表。 TR(任务寄存器)用来对TSS(任务状态段)进行寻址。任务状态段用来存放任务环境。,二、80386微处理器 (一) 80386微处理器结构 80386由中央处理器(CPU)、存储器管理部件(MMU)和总线接口部件(BIU)三大模块组成。 CPU包括指令预取、指令译码、指令执行部件,MMU包括分段部件和分页部件,加上BIU部件,这样80386共有六个功能部件。六个功能部件可并行工作,构成六级流水线结构。 存储器管理部件中的分段部件可通过附加寻址部件对逻辑地址空间进行管理,实现任务之间的隔离、指令和数据区的再定位。,(二)80386的寄存器结构 1通用寄存器 80386中有八个32位的通用寄存器。这些通用寄存器是8086、80286的16位通用寄存器的扩展,所以命名为EAX、EBX、ECX、EDX、ESI、EDI、EBP、ESP。 2指令指针和标志寄存器 80386的地址线是32位,指令指针是32位寄存器,是IP的扩展,称为EIP。EIP中存放的总是下一条要取出指令的偏移量。,3段寄存器和段描述符寄存器 80386中用六个16位的段寄存器存放段选择器值,指示可寻址的存储空间。在保护方式下,分段大小在1 B4 GB之间变化。在实地址方式下,最大分段固定为64 KB。 4系统地址寄存器 系统地址寄存器GDTR中存放GDT(全局描述符表),IDTR中存放IDT(中断表述符表)。其中放置32位线性基地址和16位界限值。 5控制寄存器 80386中有三个32位控制寄存器CR0、CR2和CR3(如图231 所示),用以放置机器的总体状态,对系统的全部任务都产生影响。 CR0为机器控制寄存器。其中D0D4和D31作控制和状态用。,(三) 80386的存储器组织结构 80386存储器的存储单元有三种,即字节(8位)、字(16位)、双字(32位),且支持两个更大的存储器单元:页面和段。 1地址空间 80386有逻辑地址、线性地址和物理地址三种地址空间。逻辑地址(即虚拟地址)由一个选择器和一个偏置值组成。 2段寄存器的用法 在80386中,段是可变大小的线性地址块,主要有两种类型:代码段和数据段。段可以小到1 B,大到4 GB(232 B)。 3I/O空间 从一般的意义上说,80386也支持存储器对应的I/O方式,但80386主要使用专用的端口寻址方式,外部设备放在I/O空间。,三、80486微处理器 (一)80486的结构框图 (二)80486的寄存器结构 1通用寄存器 八个32位通用寄存器可存放数据或地址,支持数据操作数1位、8 位、16位或32位以及132位的位字段。 2指令指针 指令指针是32位的寄存器,称为EIP。 3标志寄存器 标志寄存器EFLAGS。,(三)80486的存储器组织结构 486存储器分为8位长(字节)、16位长(字)和32位长(双字)。 1地址空间 486微处理器有三个地址空间:逻辑地址、线性地址和物理地址。 2段寄存器的使用 为了提供一个紧凑的指令编码和提高处理器的性能,指令不需要显示指明哪一个段寄存器被使用,缺省段寄存器是按照表29 段寄存器选择规则自动选择的。 3I/O空间 486微处理器也有两个独立的物理地址空间:存储器空间和I/O空间。虽然486微处理器也支持存储器映射的外部设备, 但通常都把外部设备放在I/O空间。,第五节Pentium级微处理器简介 Pentium微处理器可谓Intel80x86系列的第五代产品,除了基本CPU电路外,芯片中集成有16 KB的高速缓冲存储器和浮点运算器,晶体管数目高达310万个。 一、Pentium的主要性能 Pentium与Intel 486相比有以下重大改进: 超标量体系结构。 动态转移预测。 流水线浮点部件。 增加一个8 KB片内超高速缓冲存储器。 较强的错误检测和报告功能。 增加了测试挂钩(边界扫描、探针方式)。,二、Pentium级微处理器内部结构与工作方式 分页部件:存储器管理的重要组成部件,与存储器管理部件配合,通过地址映象实现存储器的分页管理。 片内Cache:设置在芯片内部,分成8 KB数据Cache和8 KB程序代码Cache。由于二者分离,可有效防止取指令与访问数据时的冲突。 控制部件:包括预取指令缓冲器(队列)、指令译码器、控制ROM以及控制逻辑电路。主要控制预取指令代码、译码和执行。 执行部件:包括整数寄存器、ALU流水线、地址通路流水线和二进制移位器。主要是在控制部件的控制下,执行指令序列。,1双重流水线 在执行部件中设置有两条地址通路流水线,即U流水线和V流水线。每个流水过程分成5个步骤,即预取指令、指令译码、地址变换、执行和写回。 2工作方式 Pentium微处理器除了传统的实地址方式、保护方式和模拟8086方式之外,增加了一种“系统管理方式(SMM)”,具体是由写入硬件ROM中的程序来进行。,第三章指令系统 第一节概述 第二节寻址方式 第三节8086/8088 指令系统,第一节概述 指令系统体现了计算机的基本功能。指令对于程序而言,如同人说话与写作时的文字与必须遵循的语法,因此,在指令学习过程中,要特别重视指令的功能及指令的格式。 一、指令 所谓指令,是指计算机进行某一工作的命令。指令通常以二进制编码的形式存放在存储器中,用二进制编码形式表示的指令称为机器指令,可由CPU直接识别。 二、汇编语言基本概念 计算机的所有工作就是执行程序,而程序是求解某一问题或进行某项工作的若干条指令的有序集合。用机器指令设计的程序称为机器语言程序,用汇编语言指令编写的程序称为汇编语言程序。,三、操作数 操作数是指令的操作对象。 1数据操作数 (1)立即数操作数:指令中直接给出数据本身。 (2)寄存器操作数:即操作的对象是寄存器中的内容。 (3)存储器操作数:也称内存操作数,操作的对象是内存中的数。 (4)I/O操作数:指令中要操作的数据来自或送到I/O端口。 2地址操作数 这类操作数出现在程序跳转或程序调用指令中,是与程序转移地址有关的操作数。 对于数据操作数,有的指令有两个操作数:一个称为源操作数,在操作过程中其值不改变;另一个称为目的操作数,操作后一般被操作结果代替。有的指令只有一个操作数,或没有(或隐含)操作数。,第二节寻址方式 指令中关于如何求出操作数有效地址的方法称为寻址方式(Addressing Mode)。 一、立即寻址 (Immediate Addressing) 立即寻址方式即指令中直接给出操作数本身。采用该寻址方式的操作数直接包含在指令中,紧跟在操作码之后,作为指令的一部分存放在代码段区域,这种操作数称为立即数。 注意: (1)立即寻址通常用于二地址指令中,且立即数只能是源操作数,不能是目的操作数。 (2)数据传送,应理解为复制传送,源操作数不会因为传送而失去数据。,二、寄存器寻址 (Register Addressing) 特点: (1)由于操作数在CPU内部的寄存器中,指令执行时,操作在CPU内部进行,不需要访问存储器来取得操作数,因而执行速度快。 (2)寄存器寻址方式既可用于源操作数也可用于目标操作数,还可以两者都用寄存器寻址方式。 注意: (1)当指令中的源和目标操作数均在寄存器时,必须采用同样长度的寄存器。 (2)两个操作数不能同时在段寄存器,目标操作数不能在代码段寄存器。,三、直接寻址(Direct Addressing) 直接寻址指令在指令的操作码后直接给出操作数的16位偏移地址,即有效地址(EA),它与操作码一起放在内存的代码段,也是低8位在前,高8位在后。 以下指令中源或目标操作数采用了直接寻址方式。 (1) MOV AX, 2000H;AX(DS:2000H) (2) MOV 1200H, BL;(DS:1200H)BL (3) MOV ES:0100H,AL;(ES:0100H)AL,四、寄存器间接寻址 寄存器间接寻址是把内存操作数的有效地址EA存储于指定的寄存器中,指令中给出存放地址的寄存器名。寄存器必须是16位的,主要有BX、BP、SI和DI。 五、寄存器相对寻址 在寄存器相对寻址中,指令中的操作数是一个基址寄存器和一个偏移量,基地址与偏移量相加,作为操作数地址的偏移地址EA。,六、基址变址寻址 采用基址变址寻址是指,指令操作数给出的是一个基址寄存器(BX或BP)和一个变址寄存器(SI和DI),两寄存器中的数据相加,作为操作数的偏移地址EA。其中BX默认DS段,BP默认SS段,允许使用段跨越。 七、相对基址加变址寻址 指令操作数给出的是一个基址寄存器、变址寄存器和一个偏移量,两寄存器中的数据及偏移量相加,作为操作数的偏移地址EA。基址寄存器主要有BX、BP,变址寄存器主要有SI和DI。BX默认DS,BP默认SS。,第三节8086/8088 指令系统 一、数据传送指令 数据传送指令用来在寄存器与存储单元、寄存器与寄存器、累加器与I/O端口之间传送数据、地址等信息,也可以将立即数传送到寄存器或存储单元中。 (一)通用数据传送指令 通用数据传送指令有以下4种: 1数据传送指令MOV (MOVement) 2堆栈操作指令PUSH/POP 堆栈是按照“先进后出、后进先出”原则组织的一段内存数据区域。8086/8088规定堆栈的栈底固定不变,这块存储区只有一个出入口,称之为栈顶。,(二) 地址传送指令 1有效地址传送指令LEA(Load Effective Address) 功能:将一个近地址指针写入到指定的寄存器。指令中的目的操作数必须是一个16位通用寄存器,源操作数必须是一个存储器操作数,指令的执行结果是把源操作数的有效地址传送到目标寄存器。 2目标地址传送指令LDS/LES(Load pointer into DS/ES) 功能:两条指令的功能类似,都是将源操作数偏移地址决定的双字单元中的第一个字传送到指令指定的16位通用寄存器,第二个字传送给段寄存器DS或ES。,(三) 标志字传送指令LAHF、SAHF、PUSHF、POPF 1取标志指令LAHF(Load AH from Flags) 指令格式:LAHF 功能:将标志寄存器FLAGS中的低8位送至AH中,即将5个状态标志位SF、ZF、AF、PF以及CF分别传送到累加器AH的对应位。 2置标志指令SAHF(Store AH into Flags) 指令格式:SAHF 功能:与LAHF相反,将AH寄存器中内容传送到标志寄存器的低8位,执行该指令后状态标志寄存器的低8位由装入的数值来确定。,3标志压入堆栈指令PUSHF(PUSH Flags onto stack) 指令格式及操作:PUSHF; SPSP-2,(SP)(FLAGS) PUSHF指令先将SP减2,然后将标志寄存器FLAGS的内容(16位)压入堆栈。 4标志弹出堆栈指令POPF(POP Flags off stack) 指令格式及操作:POPF;(FLAGS)(SP),SPSP+2 功能:将堆栈内容弹出到标志寄存器,然后SP加2。POPF指令对状态标志位有影响。,(四)输入/输出指令IN/OUT 1输入指令 IN 格式:IN AL,PORT;AL(PORT) IN AX,PORT;AX(PORT+1,PORT) IN AL,DX;AL(DX) IN AX,DX;AX(DX+1,DX) 2输出指令 OUT 格式:OUT PORT,AL;PORT AL OUT PORT,AX;PORT+1,PORT AX OUT DX,AL;(DX) AL OUT DX,AX;(DX+1,DX) AX 指令中端口PORT与DX的含义与IN指令中的相同。IN和OUT指令都不影响状态标志位。,二、算术运算类指令 (一) 加法指令 1加法指令 ADD 格式:ADD dest,src 功能:dest(dest)+(src) 说明: (1)dest可以是寄存器或存储器,src可以是立即数、寄存器或存储器。 (2)目的操作数不能使用立即数,两存储器单元之间不允许直接进行加法运算。 (3) ADD指令不区分两个加数是无符号数还是带符号数,运算结果的二进制形式相同,影响状态标志位。,2带进位加法指令 ADC 格式:ADC dest,src 功能:dest(dest)+(src)+CF 说明:进位位CF的值加到两数和的最低位,其他与ADD指令相同。 3加1指令 INC 格式:INC dest 功能:dest(dest)+1,将目的操作数加1,并将结果送回目的操作数。 说明:操作数可以是除立即数之外的其他寻址方式,可以进行字节运算,也可以进行字运算,且不区
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 演出经纪人之《演出经纪实务》能力测试B卷含答案详解【预热题】
- 2025年教师招聘之《幼儿教师招聘》检测卷包附参考答案详解(能力提升)
- 2025年教师招聘之《幼儿教师招聘》通关练习题和答案附参考答案详解【培优】
- 花烟草养护知识培训内容课件
- 教师招聘之《小学教师招聘》题库检测模拟题(必刷)附答案详解
- 2025年教师招聘之《小学教师招聘》通关试卷提供答案解析审定版附答案详解
- 教师招聘之《小学教师招聘》能力测试备考题含完整答案详解(网校专用)
- 教师招聘之《小学教师招聘》题库(得分题)打印附完整答案详解(易错题)
- 教师招聘之《幼儿教师招聘》复习提分资料及参考答案详解【b卷】
- 2025年教师招聘之《幼儿教师招聘》模拟考试题库B卷及答案详解(必刷)
- 双人合作开店协议书范本
- 质量员模拟题含答案
- 以史为帆明方向+少年立志向未来+课件-2025-2026学年上学期主题班会
- 2025上海科技馆事业单位工作人员招聘10人笔试备考题库及答案解析
- 钢结构工程施工安全管理方案
- 医疗机构员工服务规范手册
- 2025年黑龙江省龙东地区中考英语真题含答案
- 医疗器械生产质量管理规范2025版
- 2025年全国企业员工全面质量管理知识竞赛复习考题及参考答案
- 电气线路问题整改方案(3篇)
- 2025年本币市场交易员资格考试题库带答案
评论
0/150
提交评论