微型计算机原理与应用课件

上传人:油条 文档编号:47705653 上传时间:2018-07-04 格式:PPT 页数:49 大小:368KB
返回 下载 相关 举报
微型计算机原理与应用课件_第1页
第1页 / 共49页
微型计算机原理与应用课件_第2页
第2页 / 共49页
微型计算机原理与应用课件_第3页
第3页 / 共49页
微型计算机原理与应用课件_第4页
第4页 / 共49页
微型计算机原理与应用课件_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《微型计算机原理与应用课件》由会员分享,可在线阅读,更多相关《微型计算机原理与应用课件(49页珍藏版)》请在金锄头文库上搜索。

1、本教案内容第2章 8086CPU结构与功能n微处理器的外部结构n微处理器的内部结构n微处理器的功能结构n微处理器的寄存器组织n微处理器的存储器和I/O组成8086/8088 CPU内部共有14个16位寄存器, 用于提供运算,控制指令执行和对指令及操作数 寻址。掌握每个寄存器的作用以及用法,是学好 汇编语言程序设计的基础。14个寄存器按其用途可分为三大类:通用寄存器(8个)段寄存器 (4个)控制寄存器(2个)2.4 微处理器的寄存器组织一.通用寄存器(8个) 8个16位通用寄存器分为两组 :地址指针和变址寄存器(个)数据寄存器(4个)2.4 微处理器的寄存器组织 存放数据16位8位DXDLDHC

2、XCLCHBXBLBHAXALAH累加器Accumulator 基址寄存器(地址寄存器) Base Register 计数器Count Register 数据寄存器Data Register 1.数据寄存器(4个)2.4 微处理器的寄存器组织 2.地址指针和变址寄存器(个)均为16位,也能存放数据均为地址寄存器DISIBPSP堆栈指针寄存器Stack Pointer 基址指针寄存器Base Pointer 源变址寄存器Source Index 目的变址寄存器Destination Index 2.4 微处理器的寄存器组织 二.段寄存器堆栈信息数据(数值、字符等)代码(指令码)在微机系统的内存中

3、通常存放着三类信息:指示CPU执行何种操作。程序处理的对象或结果。被保存的返回地址和中间结果等。代码段 数据段 堆栈段2.4 微处理器的寄存器组织 有个段寄存器。分别是:SSESDSCS代码段寄存器。指向当前的代码段,指令 由此段取出。Code Segment 数据段寄存器。指向当前的数据段。Data Segment 附加数据段寄存器。指向当前的附加数据 段。Extra Segment 堆栈段寄存器。指向当前的堆栈段。 Stack Segment 16位2.4 微处理器的寄存器组织 指令指针寄存器相当于一般微处理器中的程 序计数器(PC:Program Counter )。它始终指向CPU下一

4、条要取指令所在存贮器单 元的偏移地址(段地址由CS提供)。用户不能更改IP的值,只有CPU执行转移指令, 子程序调用指令和子程序返回指令以及中断处理 时,IP才作相应的改变。四.控制寄存器(2个)1.指令指针寄存器(IP:Instruction Pointer )(16位)2.4 微处理器的寄存器组织 标志寄存器相当于一般微处理器中的程序状态 字寄存器(PSW)。16位,但有用的只有9位,其中:2.标志寄存器(FLAG)状态标志:CF,PF,AF,ZF,SF,OF,共6位 控制标志:TF,IF,DF,共3位 如下图所示:OF DF IF TF SF ZF AF PF CF15 14 13 12

5、 11 10 9 8 7 6 5 4 3 2 1 02.4 微处理器的寄存器组织 CF(Carry Flag)进位标志。如果加法时最 高位(对字节操作是D7位,对字操作是D15位)产生 进位或减法时最高位产生错位,则CF=1,否则 CF=0。 状 态 标 志反映的是ALU运算后结果的状态AF(Auxiliary Carry Flag)辅助进位标志。 如果在加法时D3位有进位或减法时D3位有借位,则 AF=1,否则AF=0。这个标志位用于实现BCD码算术 运算结果的调整。2.4 微处理器的寄存器组织 ZF(Zero Flag)零标志位。如果运算结果各位都为零,则ZF=1,否则 ZF=0。SF(S

6、ign Flag)符号标志。它总是和结果的最高位(字节操作时是D7,字 操作时是D15)相同,因为在补码运算时最高位是 符号位,所以运算结果为负时,SF=1,否则SF=0.2.4 微处理器的寄存器组织 OF(Overflow Flag)溢出标志。在加或减运算中结果超出8位或者16位有符号 数所能表示的数值范围(-128 +127或-32768 +32767)时,产生溢出,OF=1,否则OF=0。PF(Parity Flag)奇偶标志。如果操作结果的 低8位中含有偶数个1,PF=1,否则PF=0。2.4 微处理器的寄存器组织 例1:若CPU执行5439H+476AH加法运算指令:那么,指令执行后

7、有:SF=1,ZF=0,PF=1,AF=1,CF=0,OF=10101 0100 0011 1001B 0100 0111 0110 1010B1001 1011 1010 0011B+2.4 微处理器的寄存器组织 例2:若CPU执行543AH-FE00H减法运算指令;那么,指令执行后有:SF=0,ZF=0,PF=1,AF=0,CF=1,OF=00101 0100 0011 1010B 1111 1110 0000 0000B0101 0110 0011 1010B-2.4 微处理器的寄存器组织 控 制 标 志用来控制CPU的操作特征(运行状态)DF(Direction Flag) 方向控制标

8、志。可由指令置1/清0CLD;DF=0在进行字符串操作时,CPU每执行一条串操作 指令,对源或(与)目的操作数的地址会自动进行 一次调整,其调整准则为0,自动递增。STD;DF=1DF=1,自动递减。2.4 微处理器的寄存器组织 IF(Interrupt Enable Flag)CLI;IF=0,CPU处于关中断状态。1时,CPU能响应外部可屏蔽中断请求;当IF=IF对外部非可屏蔽中断请求以及CPU内部 的中断不起作用.可由指令置1/清0:外部可屏蔽中断允许标志。STI;IF=1,CPU处于开中断状态。0时,CPU不能响应外部可屏蔽中断请求。2.4 微处理器的寄存器组织 TF(Trap Fla

9、g)陷井标志。没有专门的置1/清0指令。当TF=1时,CPU每执行完一条指令便自动产 生一个内部中断(类型为1),转去执行一个中断 服务程序,用户可以借助中断服务程序来检查每 条指令执行的情况,称为单步工作方式,常用于 程序的调试。2.4 微处理器的寄存器组织 一.存储器地址空间和数据存储格式w8086/8088的存储器都是以字节(8位)为单位 w组织的。 w有20条地址总线, 字节(1B) 。 w每个字节对应一个唯一的地址, w地址范围为 -1 (用16进制表示为00000 FFFFFH),如图所示 。2.5 微处理器的存储器和I/O组织存储器二 进 制 地 址十六进制地址000000000

10、 0000 0000 0000 0000 00001 00002 000030000 0000 0000 0000 00010000 0000 0000 0000 00110000 0000 0000 0000 0010FFFFE FFFFF1111 1111 1111 1111 11111111 1111 1111 1111 11102.5 微处理器的存储器与I/O组织 存储器内两个连续的字节,定义为一个字, 低字节(低8位)存放在低地址中,高字节(高8位 )存放在高地址中。 各位的编号方法是最低位(LSB)为位0,一个字节 中,最高位(MAS)编号为位7;一个字中最高位的 编号为位15。这

11、些约定如图所示2.5 微处理器的存储器与I/O组织 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 07 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0(高字节)(低字节)地址=N+1字地址地址=N2.5 微处理器的存储器与I/O组织 字数据在存储器中存放的格式如图所示字单元的地址一个字单元一个字节单元高字节 低字节D15 D8 D7 D0字数据在存储器中存放格式示意图2.5 微处理器的存储器与I/O组织 8086/8088允许字从任何地址开始。字的地址 是偶地址时,称字的存储是对准的,若字的地址 是奇地址时,则称字的存储是未对准的。8086 CPU数据总线

12、16位,对于访问(读或写) 字节的指令,需要一个总线周期。 对于访问一个偶地址的字的指令,也只需要一个 总线周期。 而对于访问一个奇地址的字的指令,则需要两个 总线周期(CPU自动完成)。2.5 微处理器的存储器与I/O组织 8088 CPU数据总线8位,无论是字,还是字节 数据存取操作,也无论是偶地址的字,还是奇地 址的字,每一个总线周期只能完成一个字节的数 据存取操作。对字数据所组成的连续两个总线周 期是由CPU 自动完成的。2.5 微处理器的存储器与I/O组织 从前面的介绍可知,二.存储器的分段和物理地址的形式1为什么要分段8086/8088CPU有20条地址线(A19A0),能 寻址外

13、部存贮空间为 =1MB,而在8088/8086CPU 内部能向存贮器提供地址码的地址寄存器有六个 ,均为16位,所以用这六个16位地址寄存器任意 一个给外部存贮器提供地址,只能提供 =64K个 地址,所以,对1MB地址寻址不完。这六个16位地 址寄存器分别为:2.5 微处理器的存储器与I/O组织 为了使8088/8086CPU能寻址到外部存贮器1MB空 间中任何一个单元,8088/8086巧妙地采用了地址 分段方法(将1MB空间分成若干个逻辑段),从而 将寻址范围扩大到了1MB。基址寄存器DISIBPBX 基址指针寄存器 源变址寄存器堆栈指针寄存器目的变址寄存器指令指针寄存器SP IP2.5

14、微处理器的存储器与I/O组织 1MB的存贮空间中,每个存贮单元的实际地址编 码称为该单元的物理地址(用PA表示)。 2怎么分段各逻辑段的起始地址必须能被16整除,即一个 段的起始地址(20位物理地址)的低4位二进制 码必须是0。 把1MB的存贮空间划分成若干个逻辑段,每段最 多64KB。2.5 微处理器的存储器与I/O组织 一个段的起始地址的高16位自然数为该段的段 地址.显然,在1MB的存贮空间中,可以有 个 段地址.每个相邻的两个段地址之间相隔16个存 贮单元。 在一个段内的每个存贮单元,可以用相对于本 段的起始地址的偏移量来表示,这个偏移量称 为段内偏移地址,也称为有效地址(EA)。 段

15、内偏移地址也用16位二进制编码表示.所以, 在一个段内有 =64K个偏移地址(即一个段最 大为64KB)。2.5 微处理器的存储器与I/O组织 在一个64KB的段内,每个偏移地址单元的段地址 是相同的.所以段地址也称为段基址。 由于相邻两个段地址只相隔16个单元,所以段与 段之间大部分空间互相覆盖(重叠)。 存贮器段的划分与段的覆盖示意图如下图所示。2.5 微处理器的存储器与I/O组织 存贮器段的划分与段的覆盖示意图段0 段1 段2100201001010000000200001000000段地址2.5 微处理器的存储器与I/O组织 段地址和段内偏移地址都是无符号的16位二进制 数,常用4位十

16、六进制数表示。这种方法表示的存 贮器单元的地址称为逻辑地址。如下图所示。 2物理地址(PA)的形成逻辑地址的表示格式为:段地址:偏移地址2.5 微处理器的存储器与I/O组织 XXXXXHXXXXH : XXXXH段地址:段内偏移地址逻辑地址20 位 物 理 地 址2.5 微处理器的存储器与I/O组织 其中段地址有段寄存器提供:一个存储单元用逻辑地址表示后,CPU 对该单元的寻址就应提供两部分地址段地址 段内有效地址CS 提供当前代码(程序)段的段地址DS 提供当前数据(程序)段的段地址ES 提供当前附加数据段的段地址SS 提供当前堆栈段的段地址2.5 微处理器的存储器与I/O组织 段内偏移地址由下列地址寄存器提供:B

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号