- 1、本文档共60页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《微机原理及应用》第二章-8086、88微处理器报告
第二章 8086/8088微处理器 8086:16位微处理器 数据总线宽度16位:可以处理8位或16位数据 地址总线宽度20位:可直接寻址1MB单元和64KB的 I/O端口 8088:准16位处理器 内部寄存器及内部操作均为16位,外部数据总线8位 8088与8086指令系统完全相同,芯片内部逻辑结构、芯片引脚有个别差异。 设计8088的目的主要是为了与Intel原有的8位外围接口芯片直接兼容 第一节 8086/8088微处理器的结构 一、内部结构(编程结构):见图2.1 由两部分组成:总线接口单元BIU(Bus Interface Unit) 执行单元EU(Execution Unit) (一)总线接口单元BIU 功能:负责与内存或I/O端口传送指令或数据 ①BIU从内存取指令送到指令队列缓冲器 ②当EU执行指令时,BIU要配合EU从指定的内存单元或I/O端口中读取数据,或者把EU的操作结果送到指定的内存单元或I/O端口去。 组成:4个16位的段寄存器(CS、DS、ES、SS); 1个16位的指令指针寄存器IP; 1个地址加法器; 6个字节的指令队列; 总线控制电路 段的起始地址成为“段基址”,要访问的单元距段基址的距离(字节数)为“偏移量”(Offset)。 程序设计时,使用的是逻辑地址。逻辑地址由“段基址”和“偏移量”构成(均为16位)。 “段基址”由段寄存器CS、DS、SS和ES提供;“偏移量”由BX、BP、IP、SP、SI、DI或根据寻址方式计算出的有效地址EA(Effective Address)提供。 注意: ①每个存储单元有唯一的物理地址,但它却可由不同的“段基址”和“偏移量”组成。例如: 1200H:0345H?12345H 1100H:1345H?12345H ② 除非专门指定,一般情况下,段在存储器中的分配是由操作系统负责的。 由逻辑地址获得物理地址的计算公式: 物理地址=段基值X16+偏移量 例.设(CS)=4232H ,(IP)=66H (二) 执行单元EU(Execution Unit)见图2.1 功能:负责指令的译码和执行, 负责向总线接口单元BIU提供偏移地址, 对通用寄存器和标志寄存器进行管理。 组成:ALU(算术逻辑单元) 通用寄存器组: AX,BX,CX,DX,BP,SP,SI,DI 标志寄存器FR 执行单元控制电路 标志寄存器的格式及各位的含义 1. 状态标志(6位):表示前面的操作执行后,算术逻辑部件处于怎样一种状态。例如,是否产生了进位,是否发生了溢出等等。程序中,可以通过对某个状态标志的测试,决定后面的走向及操作。 ●进位标志CF(Carry Flag) 它反映: 加法时,最高位(字节操作时的D7位,字操作时的D15位)是否有进位产生。 减法时,最高位(字节操作时的D7位,字操作时的D15位)是否有借位产生。 ●奇偶标志PF(Parity Flag):若运算结果低8位中“1”的个数为偶数,则PF=1;否则PF=0。 ●辅助进位标志AF(Auxiliary carrry Flag): 也称“半进位标志”,它反映: 加法时,第3位向第4位有进位; 减法时,第3位向第4位有借位。 ●零标志ZF(Zero Flag):若运算结果为0,则ZF=1;否则ZF=0。 ●符号标志(Sign Flag):它和运算结果的最高位相同。 ●溢出标志OF(Overflow Flag):若运算过程中发生了“溢出”,则OF=1 2. 控制标志(3位):每一位控制标志都对一种特定的功能起控制作用。可以通过专门的指令对其进行“置位”(Set)或“复位”(Reset)。 ●中断允许标志IF(Interrupt Enable Flag):如果IF置“1”,则CPU可以接受可屏蔽中断请求;反之,则CPU不能接受可屏蔽中断请求。 指令系统中有两条专门的指令可以置“1”或置“0” IF标志位:
文档评论(0)