微机原理与接口技术 ——8086微处理器 西安邮电大学 计算机学院 范琳
1 2 3 4 5 第三章 80x86微处理器 80x86 微处理器简介 8086 微处理器 8086 寄存器 8086 引脚功能 8086 存储器组织 5
第三章 80x86微处理器 8086如何实现并行工作方式 8086的结构 8086微处理器为了充分使用总线以提高程序的执行速度被设计成为两个独立的功能部件:执行部件(EU)和总线接口部件(BIU)。 CPU EU BIU 内部DB 外部DB
第三章 80x86微处理器 AH AL BH BL CH CL DH DL 通用寄存器 SP BP SI DI 数 据 寄存器 指针和变址 数 据 寄存器 指针和变址 ALU 数据总线(16位) 暂存寄存器 EU 控制电路 AX BX CX DX 标志寄存器 执行单元(EU) 总线接口单元(BIU) 1 2 3 4 5 6 指令队列缓冲器 内部寄存器 IP ES SS DS CS ∑ DB(16位) AB(20位) 总线控制 电 路 8086总线 地址 加法器
总线接口单元BIU Bus Interface Unit 组成: 第三章 80x86微处理器 总线接口单元BIU Bus Interface Unit 组成: 总线接口部件由段寄存器、指令指针、地址形成逻辑、总线控制逻辑和指令队列等组成。 任务: BIU与外部总线连接为执行部件EU完成所有的总线操作,并计算形成20位的内存物理地址。
总线接口单元BIU 功能: 负责完成CPU与存储器(内存或主存)或I/O设备之间的数据传送。 ① 取指令到指令队列缓冲器 第三章 80x86微处理器 总线接口单元BIU 功能: 负责完成CPU与存储器(内存或主存)或I/O设备之间的数据传送。 ① 取指令到指令队列缓冲器 ② 从内存或外设端口读取数据 ③ 向内存或外设端口发送数据 ④ 形成20位物理地址 俗称完成“外勤”工作。 在执行转移程序时,BIU使指令预取队列复位,从指定的新地址取指令,并立即传给执行单元执行。
段寄存器(Segment Register) 第三章 80x86微处理器 CS 段寄存器(Segment Register) 8086系统中把可直接寻址的1MB内存空间分为称作“段”的逻辑区域,段的段地址由称为“段寄存器”的4个16位寄存器决定: (1) 代码段寄存器CS(16位) (2) 堆栈段寄存器SS(16位) (3) 数据段寄存器DS(16位) (4) 附加段寄存器ES(16位) DS SS ES
段寄存器的作用? 第三章 80x86微处理器 用户程序在内存中的分段信息 前缀段(PSP段) 256字节 CPU 数据段 BIU 代码段 CS:0000H 代码段 DS:0000H 数据段 BIU CS,DS SS,ES 用户程序 ES:0000H 附加段 SS:0000H 堆栈段
指令指针IP是一个16位专用寄存器,它指向当前需要取出的指令字节,当BIU从内存中取出一个指令字节后,IP就自动指向下一条指令。 第三章 80x86微处理器 指令指针寄存器IP(16位) 指令指针IP是一个16位专用寄存器,它指向当前需要取出的指令字节,当BIU从内存中取出一个指令字节后,IP就自动指向下一条指令。 1.程序运行过程中IP如何变化? 2.IP使用过程中的要求? IP
第三章 80x86微处理器 地址加法器的作用 逻辑地址和物理地址 ⑴ 逻辑地址:由段地址(逻辑段起始地址的高16位)和偏移地址(16位)表示的存储单元的地址称为逻辑地址,记为: 段地址∶偏移地址 ⑵ 物理地址:由CPU内部总线接口单元BIU中的地址加法器根据逻辑地址产生的20位存储单元地址称为物理地址。 20位物理地址 19 ∑ 段地址 19 0000 15 段内偏移地址
指令指针IP是一个16位专用寄存器,它指向当前需要取出的指令字节,当BIU从内存中取出一个指令字节后,IP就自动指向下一条指令。 第三章 80x86微处理器 1 2 3 4 5 6 指令队列缓冲器 指令指针IP是一个16位专用寄存器,它指向当前需要取出的指令字节,当BIU从内存中取出一个指令字节后,IP就自动指向下一条指令。 问:如果取到转移类指令,指令队列将如何变化?
执行单元EU Execution Unit 组成: 执行部件EU由通用寄存器、标志寄存器、运算器(ALU)和EU控制系统等组成。 任务: ① 向BIU提供所需要访问的内存或I/O端口的地址, ② 对通用寄存器、标志寄存器和指令操作数进行管理。
执行单元EU 功能: 执行指令 从指令队列中取指令代码 译码 在ALU中完成数据的运算 运算结果 的特征保存在标志寄存器FLAGS中。 第三章 80x86微处理器 执行单元EU 功能: 执行指令 从指令队列中取指令代码 译码 在ALU中完成数据的运算 运算结果 的特征保存在标志寄存器FLAGS中。
EU: AH AL BH BL CH CL DH DL 通用寄存器 SP BP SI DI 数 据 寄存器 指针和变址 ALU 数 据 寄存器 指针和变址 ALU 数据总线(16位) 暂存寄存器 EU 控制电路 AX BX CX DX 标志寄存器
通用寄存器 第三章 80x86微处理器 15 8 7 AH AL AX 累加器 BH BL BX 基址寄存器 数据寄存器 CH CL CX AH AL AX 累加器 BH BL BX 基址寄存器 数据寄存器 CH CL CX 计数寄存器 DH DL DX 数据寄存器 15 通用寄存器 SP 堆栈指针寄存器 指针寄存器 BP 基址寄存器 SI 源变址寄存器 变址寄存器 DI 目的变址寄存器
第三章 80x86微处理器 Thank you!