1 / 17

第二章 Intel-8086 微处理器结构

第二章 Intel-8086 微处理器结构. 2-1 Intel-80x86 系列微处理器概述. 1971 年推出 Intel 4004 芯片,被认为是世界上第一个 微处理器 (CPU) 。 1978 年 Intel 公司推出 8086 CPU , 16 位。 1979 年又推出 8088 , 8 位数据线,以满足与当时的 8 位机间的兼容性。 IBM 公司进入个人计算机领域,采用 Intel 8088 芯片,使 Intel CPU 成为主流。. 2-2 Intel-8086 微处理器结构. 1 、 8086 概况. 16 位微处理器

Download Presentation

第二章 Intel-8086 微处理器结构

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第二章 Intel-8086微处理器结构 2-1 Intel-80x86系列微处理器概述

  2. 1971年推出Intel 4004芯片,被认为是世界上第一个微处理器(CPU)。 • 1978年Intel 公司推出8086 CPU,16位。1979年又推出8088,8位数据线,以满足与当时的8位机间的兼容性。 • IBM公司进入个人计算机领域,采用Intel 8088芯片,使Intel CPU成为主流。

  3. 2-2 Intel-8086微处理器结构 1、8086概况 • 16位微处理器 • 地址总线20条,寻址能力220=1MB • DIP-40(双列直插式40脚)封装 • 2、8086的功能结构 • 传统CPU执行指令的过程是:取指令->执行指令->再取指令->……,串行操作。 • 而8086的取指令与执行指令操作是由两个不同的部件完成,可同时进行。目的是提高CPU的执行速度。

  4. 8086从功能上可分成两部分: • 总线接口部件BIU(Bus Interface Unit); • 执行部件EU(Execution Unit)。 • 总线接口部件BIU负责与内存或I/O端口进行指指令和数据传送;执行部件EU负责指令执行。 ①BIU从内存中取指令送到指令队列; ②当EU执行指令时,BIU要配合EU从指定的内存单元或I/O端口中读取数据,或者把EU的操作结果送到指定的内存单元或I/O端口去。

  5. 3、8086的存储器组织 • 1)8086寻址能力的扩展 • 存储器由很多个8位的存储单元组成,每个存储单元对应于一个地址编码。CPU要访问某存储单元,需将该单元地址发到地址总线。 • 8086内部与地址有关的寄存器均为16位,只能寻址216=64KB的存储器空间。 • 为了扩大CPU可访问的存储器容量,8086 CPU采用两个寄存器来形成地址:段地址寄存器、偏移地址寄存器。 • 这样,8086实际上有20条地址线,能够访问的存储单元数(即寻址能力)为220=1MB; • 地址范围:00000H~0FFFFFH

  6. 2)8086中20位地址的生成 • 将1MB存储空间分成若干个不超过64KB的区段,称为存储器的段(Segment)。 • 每个存储段有一个16位的基准地址,称为段地址; • 以段地址为基准,段内各存储单元的相对地址称为偏移地址(16位); • 段地址存放在CPU的段寄存器中;偏移地址存放在偏移地址寄存器中。 • 20位物理地址= • 16位段地址×24(左移四位)+16位偏移地址 • 例如:段地址为2500H,偏移地址9700H • 则形成的物理地址为25000H+9700H=2E700H

  7. 3)物理地址、逻辑地址 • 物理地址:存储器中各存储单元的实际地址。 • 逻辑地址:用段地址和偏移地址表示的相对地址。 • 表示形式为 段地址:偏移地址 • 如 2000H:1340H • 一个物理地址可对应多个逻辑地址; • 如物理地址12345H,逻辑地址可以是 • 1234H:0005H;1200H:0345H;1100H:1345H

  8. 4)段的种类 • 有了段寄存器,可将1M的存储空间分成很多个段; • 为便于管理,8086设计上将不同的存储内容存放在不同的段中;分为代码段、数据段、堆栈段和附加段。 • 用户编写的程序放在代码段中,使用的数据放在数据段中。

  9. 4、8086的寄存器组 • 数据寄存器:AX、BX、CX、DX • 指针及变址寄存器:SP、BP、SI、DI • 段寄存器:CS、DS、ES、SS • 指令指针IP(Instruction Pointer) • 状态标志寄存器PSW(Program State Word) • 说明 • 数据寄存器和指针及变址寄存器又统称通用寄存器; • 指令指针与状态标志统称控制寄存器; • 所有寄存器均为16位。

  10. 1)数据寄存器 • AX:通用寄存器;算术运算的主寄存器——累加器(Accumulator); • BX:通用寄存器;一些指令中作为基址(Base)寄存器; • CX:通用寄存器;一些指令中作为计数器(Counter) ; • DX:通用寄存器;一些指令中作为数据(Data)寄存器与AX配合使用。

  11. 说明: • 在一般指令中,这些寄存器可作为通用寄存器使用,在一些特定的指令中,各寄存器有特定功能; • 既可作为16位使用,也可分成两个8位寄存器使用 • 高8位记作 : AH、BH、CH、DH • 低8位记作 : AL、BL、CL、DL

  12. 2)指针及变址寄存器 • SP:堆栈指针寄存器(Stack Pointer),用来指示栈顶的偏移地址。 • BP:基址指针寄存器(Base Pointer),指示堆栈区中的一个基地址。 • SI:源变址寄存器(Source Index)。 • DI:目的变址寄存器(Destination Index)。 • 说明:这4个寄存器也可以作为通用寄存器使用。

  13. 3)段寄存器 • CS:代码段(Code Segment);存放程序段的段地址。 • DS:数据段(Data Segment);存放数据段的段地址。 • ES:附加段(Extra Segment);存放附加段的段地址. • SS:堆栈段(Stack Segment);存放堆栈段的段地址。

  14. 4)控制寄存器 • IP:指令指针(Instruction Pointer)寄存器;能自动加1,生成代码段中下一条将要取的指令的偏移地址。 • PSW:程序状态字(Program State Word)寄存器;用各个状态位反映算术逻辑运算的一些状态标志和控制标志。

  15. 5、PSW标志位的定义 • C—进位标志,结果在最高位产生进位或借位时置1; • P—奇偶标志,结果中1的个数为偶数时置1; • A—半进位标志(低4位向高4位的进位); • Z—运算结果为零时置1; • S—符号标志,该标志位与结果的最高位相同; • O—溢出标志,运算结果超出有符号数表示范围时置1; • D—方向标志,用于串操作,置1使串操作按减1执行; • T—跟踪标志,置1后处理器进入单步执行方式,便于调试; • I—中断允许标志,置1允许CPU接受外部可屏蔽中断; • 前6种标志为状态标志,后3种标志为控制标志。 O D I T S Z A P C

  16. CPU怎样判断是否溢出? • 按结果的最高位和次高位的进位情况判断;对两个进位进行异或,异或结果为1表示有溢出,为0表示无溢出。 • 原理不做讨论。

More Related