已阅读5页,还剩106页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章微处理器与总线 2 教学目的及要求 1 了解微处理器的一般结构和功能2 理解8088CPU的外部引线及主要引线功能3 掌握8088CPU的结构特点 内部寄存器功能及工作时序4 了解80386的结构特点5 理解总线的一般概念 计算机的核心部件用来实现指令的自动装入和自动执行 实现计算机本身的自动化 2 1微处理器概述 微处理器具有运算和控制功能 是整个微型计算机的核心 也称中央处理器CPU CentralProcessingUnit 由一片或几片大规模集成电路组成 具有控制器和运算器功能 微处理器的主要功能部件 1 算术逻辑部件 ALU 用来进行算术和逻辑运算 例如 SUBAL 5 ANDAL FEH ADDAL 10 ORAL01H 2 累加器 运算前存放操作数 运算后存放运算结果 输入 输出指令也通过累加器来完成 例如 INAL 50H OUT51H AL 3 程序计数器 ProgramCounter PC 也称指令计数器 InstructionCounter 由它指出下一条要执行指令所在存储单元的地址 具有加1计数的功能 4 指令寄存器 用来存放从存储器中取出的指令码 5 指令译码器 对指令码进行译码 确定指令的操作 如加 减 移位等 6 时序和控制部件 微处理器 Microprocessor 微处理器的功能运算与控制 2 1微处理器概述 是计算机系统的核心根据指令实现各种相应的运算实现数据的暂存实现与存储器和接口的信息通信 2 1微处理器概述 微处理器的一般构成 运算器控制器内部寄存器组 2 1微处理器概述 运算器 算数逻辑单元ALU内部寄存器组内部总线分为 1 单总线2 双总线3 三总线 2 1微处理器概述 控制器 指令控制时序控制操作控制异常处理 如溢出 中断等分为 1 程序计数器PC2 指令寄存器3 指令译码器4 时序控制部件5 微操作控制部件 ALU控制器 2 28088 8086微处理器 主要内容 8088 8086CPU外部引线及功能 8088 8086CPU的内部结构和特点 各内部寄存器的功能 8088 8086的工作时序 2 2 18086微处理器概述 8086是Intel系列的第三代16位微处理器 采用了HMOS高密度工艺 每片集成4万多只晶体管 单一 5v电源 主频为5MHz 10MHz 它的内部和外部的数据总线宽度是16位 地址总线宽度20位 可导址空间达220 即1MB 1 8088 8086的指令流水线 指令的一般执行过程 取指令指令译码读取操作数执行指令存放结果 串行和并行方式的指令流水线 串行工作方式 BIU和EU交替工作 按顺序完成上述指令执行过程 并行工作方式 BIU和EU可同时工作 串行工作方式 8088以前的CPU采用串行工作方式 取指令1 执行1 存结果1 取指令2 取操作数 执行2 CPU BUS 忙碌 忙碌 忙碌 忙碌 并行工作方式 8088CPU采用并行工作方式 取指令2 取2的操作数 BIU 存结果1 取指令3 取3操作数 取指令4 执行1 执行2 执行3 EU BUS 忙碌 忙碌 忙碌 忙碌 忙碌 忙碌 2 内存分段管理 分段管理 将内存地址空间分为多个逻辑段 8086中 每个内存单元的地址包括段地址和段内偏移地址段寄存器和地址寄存器 送入地址加法器 形成指向某个单元的物理地址 如房间号523 3 支持多处理器系统 8086有两种工作模式 最小模式和最大模式 1 8086系统处于最小模式 就是系统中的CPU只有8086单独一个处理器 在这种系统中 所有总线控制信息都直接由8086产生 系统中总线控制逻辑电路被减到最少 这些特征就是最小模式名称的由来 最小模式适合于较小规模的系统 2 在最大模式系统中有多个微处理器 其中必有一个主处理器8086 其他处理器称为协处理器或辅助处理器 承担某一方面的专门工作 最小模式下的连接示意图 8086CPU 控制总线 数据总线 地址总线 地址锁存 数据收发 ALE 时钟发生器 最大模式下的连接示意图 8086CPU 数据总线 地址总线 地址锁存 数据收发 ALE 时钟发生器 总线控制器8288 控制总线 协处理器8087 8088 8086CPU的特点 采用并行流水线工作方式 通过设置指令队列实现对内存空间实行分段管理 将内存分为4个段并设置段寄存器 以实现对1MB空间的寻址支持多处理器系统 2 2 28086的外部引脚及其功能 1 芯片引脚特性的描述引脚的功能即引脚信号的定义信号的有效电平指控制引脚使用有效时的逻辑电平 低电平有效的引脚名字上面加有一条横线 引脚名字上无横线者为高电平有效 另有一些引脚高 低电平均有效 分别表示不同的状态或数值 还有些引脚信号为边沿有效 信号流向芯片与其他部件的联系全靠在引脚上传送信息 这些信息可能自芯片向外输出 也可能从外部输入到芯片 还可能是双向的 引脚的复用为了以少量引脚提供更多的功能 会采用引脚复用的做法 三态能力 三态 能力是指有些引脚除了能正常输出或输入高 低电平外 还能输出高阻状态 当它输出高阻状态时 表示芯片实际上已放弃了对该引脚的控制 使之 浮空 这样 与总线相连接的其它设备就可以获得对总线的控制权 系统转为接受总线的设备控制下工作 外部特性表现在其引脚信号上 学习时请特别关注以下几个方面 指引脚信号的定义 作用 通常采用英文单词或其缩写表示 信号从芯片向外输出 还是从外部输入芯片 或者是双向的 起作用的逻辑电平高 低电平有效上升 下降边沿有效 输出正常的低电平 高电平外 还可以输出高阻的第三态 有效电平 三态能力 信号的流向 引脚的功能 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET 8086有40个引脚 其中第33 最小 最大模式 脚很关键 它是一条输入线 可以加高电平 也可以加低电平 由该线所加电平的高或低电平决定24 31引脚的功能 24 31引脚的功能取决于8086工作在最小模式还是最大模式 其他引脚不受第33引脚的影响 我们把这部分引脚称为一般引脚 8086的引脚特性 在最小模式系统中 全部控制信号由8086提供 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET GND 地 输入 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC 电源 输入 8086VCC接入的电压为 5V 10 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC AD15 AD0 地址 数据 分时复用的存储器或端口的地址 数据总线 传送地址时为单向的三态输出 传送数据时可双向三态输入 输出 ALE 1 传送地址DEN 0 传送数据 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI NMI Non MaskableInterrupt 中断请求不受中断允许标志位的影响 也不能用软件进行屏蔽 只要此信号一有效 CPU就在现行指令结束后立即响应中断 进入非屏蔽中断处理程序 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR INTR可屏蔽中断请求 输入 高电平有效 当INTR 1 表示外设提出了中断请求 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR 该时钟信号的占空比为33 即1 3周期为低电平 2 3周期为高电平 CLK 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR CLK A19 A16是地址的高4位 在T1输出地址 S6 S3是CPU的状态信号 在T2 T4时输出CPU状态 当访问存储器时 T1输出的A19 A16与AD15 AD0组成20位地址信号而访问I O端口时A19 A16 0000 AD15 AD0为16位地址信号 状态信号的S6 0 表示当前8086与总线相连S5指示中断允许标志位IF的状态S4和S3组合指示当前使用的段寄存器 00 01 10 11 分别指ES SS CS DS 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR CLK 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR CLK RD 0 表示8086为存储器或I O端口读操作 当DMA时 此线浮空 WR 0 表示8086为存储器或I O端口写操作 当DMA时 此线浮空 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR CLK ALE AddressLatchEnable 是8086在每个总线周期的T1状态时发出的 作为地址锁存器的选通信号 表示当前地址 数据复用线上输出的是地址信息 要求进行地址锁存 注意ALE端不能被浮空 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR CLK INTA InterruptAcknowledge 有效表示对INTR的外部中断请求作出响应 进入中断响应周期 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR CLK TEST 等待测试信号 输入 用于多处理器系统中 且只有在执行WAIT指令时才使用 当CPU执行WAIT指令时 它就进入空转的等待状态 每隔5个时钟周期对该线的输入进行一次测试 若TEST 1 则CPU将停止取下条指令而继续等待 直至TEST 0 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR CLK READY 准备好信号线 输入 高电平有效 当READY 1时 表示内存或I O设备准备就绪 马上可以进行依次数据传输 CPU在每个总线周期的T3状态开始对READY进行采样 如READY 0 CPU在T3之后 自动插入一个或几个等待状态TW 一旦READY 1 才进入T4状态 完成数据传输过程 从而结束当前总线周期 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR CLK RESET引起处理器立即结束现行操作 CPU结束当前操作后 对状态标志寄存器 IP DS SS ES清零 而将CS设置为0FFFFH 当RESET 0时 CPU从0FFFFH开始执行程序 8086的引脚特性 VCCAD15A16 S3A17 S4A18 S5A19 S6BHE S7MN MXRDHOLD RQ GT0 HLDA RQ GT1 WR LOCK M IO S2 DT R S1 DEN S0 ALE QS1 INTA QS0 TESTREADYRESET VCC NMI INTR CLK HLDA HoldAcknowledge HOLD和HLDA是一对配合使用的总线联络信号 当系统中的其他总线主控部件要占用总线时 向CPU发HOLD 1总线请求 如果此时CPU允许让出总线 就在当前总线周期完成时 发HLDA 1应答信号 且同时使具有三态功能的地址 数据总线和控制总线处于浮空 表示让出总线 总线请求部件收到HLDA 1后 获得总线控制权 在这期间 HOLD和HLDA都保持高电平 当请求部件完成对总线的占用后 HOLD 0总线请求撤消 CPU收到后 也将HLDA 0 这时 CPU又恢复了对地址 数据总线和控制总线的占有权 引脚 小结 CPU引脚是系统总线的基本信号可以分成三类信号 16位数据线 D0 D1520位地址线 A0 A19控制线 ALE IO M WR RD READYINTR INTA NMI HOLD HLDARESET CLK Vcc GND 有问题 引脚 提问 提问之一 CPU引脚是如何与外部连接的呢 提问之二 CPU引脚是如何相互配合 实现总线操作 控制系统工作的呢 解答 总线形成 解答 总线时序 A19 A0 MRDCMWTCAMWCIORCIOWCAIOWCINTA 最大模式系统组成 最大组态的总线形成 系统地址总线采用三态透明锁存器74LS373和三态单向缓冲器74LS244 系统数据总线通过三态双向缓冲器74LS245形成和驱动 系统控制总线主要由总线控制器8288形成MEMR MEMW IOR IOW INTA 2 2 38086的功能结构 8086微处理器的内部功能结构由两个独立的工作部件 执行部件EU ExecutionUnit 和总线接口部件BIU BusInterfaceUnit 构成 1 执行部件EU 由运算器 寄存器组 控制器等组成 负责指令的执行2 总线接口部件BIU 由指令队列 地址加法器 总线控制逻辑等组成 负责与系统总线打交道 1 8088的内部结构 1 执行部件EU 1 EU的功能 A 从BIU的指令队列缓冲器中取出指令 由EU控制器的指令译码器译码产生相应的操作控制信号给各部件B 对操作数进行算术运算和逻辑运算 并将运算结果的状态特征保存到状态寄存器FR中C EU不直接与CPU外部系统相连 当需要与主存储器或I O设备交换数据时 EU向BIU发出命令 并提供给BIU16位有效地址及所需传送的数据 2 执行部件EU的组成A 算术逻辑单元ALUB 通用数据寄存器组C 地址指针和变址寄存器D 标志寄存器E 数据暂存寄存器F EU控制器 3 EU的特点 A 通用数据寄存器AX BX CX DX 既可以作16位寄存器使用 也可以分成高 低8位分别作两个8位寄存器使用 地址指针BP SP和变址寄存器SI DI都是16位寄存器 B ALU的核心是16位二进制加法器C EU控制器是执行指令的控制电路 实现从队列中取指令 译码 产生控制信号等 2 总线接口部件BIU 1 BIU的功能 1 BIU从主存取指令送到指令队列缓冲器2 CPU执行指令时 总线接口单元要配合EU从指定的主存单元或外设端口中取数据 将数据传送给EU或把EU的操作结果传送到指定的主存单元或外设端口中3 计算并形成访问存储器的20位物理地址功能 负责与存储器 I O端口传送数据 2 BIU的组成 4个段地址寄存器 CS DS ES SS 16位指令指针寄存器IP 20位的地址加法器 16d 段地址 偏移地址 物理址 6字节 8086 或4字节 8088 的指令队列 总线控制电路 处理器与外界总线联系的转接电路 包括三组总线 20位地址总线 16位双向数据总线 一组控制总线 二点说明 指令队列8086的指令队列为6个字节 8088的指令队列为4个字节 不论是8086还是8088都会在执行指令的同时从内存中取下一条或几条指令 取来的指令放在指令队列中 使BIU具有预取指令的功能 是一种先进先出 FIFO 的数据结构 指令执行顺序顺序指令执行 指令队列存放紧接在执行指令后面的那一条指令 执行转移指令 BIU清除指令队列中的内容 从新的地址取入指令 立即送往执行单元 然后再从新单元开始重新填满队列 3 BIU的特点 1 指令队列是由6个字节的寄存器组成 8088指令队列由4个字节组成 采用 先进先出 原则 2 地址加法器是用来产生20位存储器物理地址的 物理地址的计算公式为 物理地址 20位 段基址 16位 16 偏移地址 16位 3 8086分配20条引脚线分时传送20位地址 16位数据和4位状态信息 2 8088 8086的寄存器结构 8088 8086的寄存器组有 8个通用寄存器 4个段寄存器 1个标志寄存器 1个指令指针寄存器他们均为16位 汇编语言程序员看到的处理器 就是寄存器所以 一定要熟悉这些寄存器的名称和作用 8088的寄存器结构 8088的寄存器结构 1 通用寄存器 1 数据寄存器AX BX CX DX作为通用寄存器 用来暂存计算过程中所用到的操作数 结果或其它信息 访问形式 可以用16位的访问 或者可以用字节 8位 形式访问 它们的高8位记作 AH BH CH DH 它们的低8位记作 AL BL CL DL AX Accumulator 作为累加器 它是算术运算的主要寄存器 所有I O指令都使用这一寄存器与外部设备交换数据 例 INAL 20HOUT30H AXBX Base用作基址寄存器使用 在计算内存储器地址时 经常用来存放基址 例 MOVAX BX 03H CX Count可以作计数寄存器使用 在循环LOOP指令和串处理指令中用作隐含计数器 例 MOVCX 200HAGAIN LOOPAGAIN CX 1 CX 结果 0转AGAINDX Data可以作为数据寄存器使用 一般在双字长乘除法运算时 把DX和AX组合在一起存放一个双字长 32位 数 DX用来存放高16位 对某些I O操作DX可用来存放I O的端口地址 口地址 256 例 MULBX AX BX DX AX 例 INAL DX 2 地址指针与变址寄存器 段起始地址SP BP SI DI四个16位寄存器 以字为单位在运算过程中存放操作数 经常用以在段内寻址时提供偏移地址 段内偏移地址段地址 只取段起始地址高16位值 偏移地址 指在段内某内存单元物理地址相对段起始地址的偏移值 高16位值0000B 地址指针寄存器 SP BP SP stackpointer 堆栈指针寄存器用来指示栈顶的偏移地址 必须与SS段寄存器联合使用确定实际地址 BP basepointer 基址指针寄存器可以与SS寄存器联合使用来确定堆栈段中某一存储器单元地址 变址寄存器 SI DI SI SourceIndexRegister源变址寄存器 DI DestinationIndex目的变址寄存器 使用场合 常用于变址寻址 一般与DS联用 用来确定数据段中某一存储单元的地址 SI DI具有自动增量和自动减量功能 例 MOVAX SI 2 指令指针 IP 存放将被执行的指令的偏移地址 其它微机中称为程序计数器PC 计算机之所以能脱离人的干预 自动地进行计算或控制 就是因为内部有一个能自动跟踪指令地址的硬件电路 IP 在开始执行程序时 赋给IP第一条指令的地址 然后每取一条指令 IP的值就自动指向下一条指令的地址 3 状态标志寄存器 F 16位 但只有9位有效 表示9个标志 反映CPU的状态和运算结果情况 其中CF OF AF ZF SF PF为6个条件 状态 标志位 DF IF和TF为3个控制标志位 F的格式 2 条件标志 6个 反映一条指令执行后运算结果特征 CF 进位标志 CF D7CY或D15CY执行算术运算指令后 结果的最高位 字节时为D7CY或字为D15CY 向更高位产生进位 则CF 1 否则CF 0 该标志主要用于多字节加减运算 例 3FH 0B4H0BFH 0B4H0011111110111111 10110100 1011010011110011 CF 0101110011 CF 1 注 对CF操作有三条专用指令 STC CF 1 CLC CF 0 CMC CF CF PF 奇 偶校验标志 PF D7 D0运算结果的低8位中 1 的个数为偶数 则PF 1 否则PF 0 该标志主要用于检测数据通信中是否发生错误 如上例 结果E3H中有6个 1 则PF 1 结果73H中有5个 1 则PF 0 AF 辅助进位标志 AF D3CY字节运算中 低4位向高4位有进位或借位时 则AF 1 否则AF 0 该标志主要用于BCD码运算的调整指令中 如 38H 49H00111000 0100100110000001 AF 1 若视为BCD运算 则应调整 ZF 零标志 ZF D7 D0或D15 D0运算结果为0 则ZF 1 否则ZF 0 如上例中 结果非0 则ZF 0 SF 符号标志 SF D7或D15运算结果为正数 则SF 0 为负数 则SF 1 如 3FH 0B4H 0F3H的SF 1而 0BFH B4H 173H的SF 0 OF 溢出标志 OF D7CY D6CY或D15CY D14CY 当运算结果超出了机器所能表示的范围时 则OF 1 否则OF 0 如 3FH 0B4H 0F3H中OF 0而 0BFH 0B4H 173H中OF 1注意 实际上机器把所有数都当无符号数运算 把结果都当符号数来设置标志 以上6个标志为指令执行后的结果标志 可作为控制转移的条件 3 控制标志 控制CPU的状态 DF 方向标志 主要用于字符串操作中控制地址的步进方向 DF 1 地址减址 DF 0 地址增址 有两条专门用于DF的指令 CLD DF 0 STD DF 1IF 中断允许标志 控制CPU是否开中断 IF 1 说明CPU开中断 即允许CPU响应外部可屏蔽中断 IF 0 说明CPU关中断 即禁止CPU响应外部可屏蔽中断 注 有两条关于IF的专用指令 CLI IF 0 STI IF 1 TF 跟踪标志 TF 1 CPU处于单步工作方式 即CPU每执行一条指令就自动地发生一个内部中断 CPU转去执行一个中断程序 常用于程序调试 又称为陷井标志 TF 0 CPU正常执行程序 例题 例1 MOVAX 1MOVBX 2ADDAX BX指令执行后 AX 3 OF 0 CF 0 ZF 0 SF 0例2 MOVAX FFFFHMOVBX 1ADDAX BX指令执行后 AX 0 OF 1 CF 1 ZF 1 SF 0 8088CPU有20条地址线最大可寻址空间为220 1MB物理地址范围从00000H FFFFFH8088CPU将1MB空间分成许多逻辑段 Segment 每个段最大限制为64KB段地址的低4位为0000B这样 一个存储单元除具有一个唯一的物理地址外 还具有多个逻辑地址 2 2 4存储器组织 物理地址和逻辑地址 8088CPU存储系统中 对应每个物理存储单元都有一个唯一的20位编号 就是物理地址 从00000H FFFFFH分段后在用户编程时 采用逻辑地址 形式为段基地址 段内偏移地址 分隔符 物理地址14700H逻辑地址1460H 100H 逻辑地址 段地址说明逻辑段在主存中的起始位置8088规定段地址必须是模16地址 xxxx0H省略低4位0000B 段地址就可以用16位数据表示 就能用16位段寄存器表达段地址偏移地址说明主存单元距离段起始位置的偏移量每段不超过64KB 偏移地址也可用16位数据表示 CS 代码寄存器 存放代码段的段地址 SS 堆栈段寄存器 存放堆栈段的段地址 DS 数据段寄存器 存放数据段的段地址 ES 附加数据段寄存器 存放附加数据段的段地址 由4个段寄存器将内存分成了四个可访问的 当前段 因为8088有20位地址 220 1MB存储空间 单元地址必须用20位地址表示 但内部寄存器均为16位 只能进行16位运算 所以存储器分段管理 段的起始地址的高16位称该段的段地址 而偏离段首址的字节数为偏移地址 亦用16位表示 即单元的逻辑地址表示为 段地址 偏移地址 段寄存器 8086CPU中有4个段寄存器 用于存放当前程序所用的各段的起始地址 也称为段的基地址 段寄存器的使用规定 利用基础地址 偏移地址 物理地址物理地址 段寄存器内容 16 偏移地址该公式本质意义 16位字长如何进行20位寻址 例 基础地址 偏移地址 物理地址 的思想 学校 体育馆 游泳馆 0M 2000M 2826M 1 从学校走2826m到游泳馆 2826m是游泳馆物理地址 2 从学校走2000m到体育馆 从体育馆再走826m到游泳馆 2000m是相对于起点的基础地址 826m相对于基础地址的偏移地址 以基础地址为起点的地址 以上例继续说明 物理地址 段寄存器内容 16 偏移地址 8 6 2 0 0 8 2 6 200 段地址 826 偏移地址 段地址 10 偏移地址 物理地址 0M 2000M 2826M 1000M 体育馆 游泳馆 体操馆 2500M 1200M 图书馆 自习室 和学习有关的场所 和运动有关的场所 获得20位物理地址示意图 物理地址的形成 20000H 25F60H 25F61H 25F62H 25F63H 2000H 段基址 逻 辑 地 址 段内偏移地址 5F62H 逻辑地址与物理地址 逻辑地址与物理地址 物理地址 16d 段地址 偏移地址 存储器寻址 段基地址 6000H段首地址偏移地址物理地址 代码段 60019H 00H 12H 60000H 0019H 物理地址 物理地址由段基地址和偏移地址组成物理地址 段基地址 16 偏移地址 60002H 08H 12H 60000H 0000 段基地址 16位 段首地址 例 已知CS 150AH DS 250AHES 2EF0HSS 8FF0H某操作数偏移地址 0204H画出各段在内存中的分布 段首地址及操作数的物理地址 150A0H 250A0H 2EF00H 8FF00H CS DS ES SS 例题解答 设操作数在数据段 则操作数的物理地址为 250AH 16 0204H 252A4H 堆栈及堆栈段的使用 堆栈 内存中一个特殊区域 用于存放暂时不用或需要保护的数据 常用于响应中断或子程序调用 2 2 58086的工作时序 微型计算机系统内的所有操作都要按统一的时钟节拍进行 每项总线操作也都需要一定的时间 称之为总线周期 不同的总线操作需要不同的总线信号 而 总线时序 则是对这些信号的变化时间顺序的描述 8086的总线时序 时序 Timing 是指信号高低电平 有效或无效 变化及相互间的时间顺序关系 总线时序描述CPU引脚如何实现总线操作CPU时序决定系统各部件间的同步和定时 什么是总线操作 8086的总线时序 总线操作是指CPU通过总线对外的各种操作8088的总线操作主要有 存储器读 I O读操作存储器写 I O写操作中断响应操作总线请求及响应操作CPU正在进行内部操作 并不进行实际对外操作的空闲状态Ti描述总线操作的微处理器时序有三级 指令周期 总线周期 时钟周期 什么是指令 总线和时钟周期 8086的总线时序 指令周期是指一条指令经取指 译码 读写操作数到执行完成的过程 若干总线周期组成一个指令周期总线周期是指CPU通过总线操作与外部 存储器或I O端口 进行一次数据交换的过程8088的基本总线周期需要4个时钟周期4个时钟周期编号为T1 T2 T3和T4总线周期中的时钟周期也被称作 T状态 时钟周期的时间长度就是时钟频率的倒数当需要延长总线周期时需要插入等待状态Tw 何时有总线周期 总线周期 基本总线周期由4个T状态组成 T1 T2 T3 T4等待时钟周期Tw 在总线周期的T3和T4之间插入空闲时钟周期Ti 在两个总线周期之间插入 各种周期的动态演示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国铁路太原局集团有限公司高校毕业生招聘1195人(大专学历)考试笔试参考题库附答案解析
- 2025年延安市遴选公务员(33人)考试笔试模拟试题及答案解析
- 2025年厦门市校园招聘中小学幼儿园中职学校教师考试笔试备考试题及答案解析
- 2025江西吉安市吉水县吉阳产业发展有限公司及下属子公司面向社会招聘补充笔试考试参考题库及答案解析
- 肿瘤科胰腺癌手术康复指南
- 泌尿外科围手术期护理管理培训指南
- 消化内科胃癌术后康复计划
- 肾脏移植术后护理指南
- 2026年湖南省长沙市单招职业适应性测试题库新版
- 2026年烟台工程职业技术学院单招职业适应性测试题库必考题
- 2025年温泉度假行业分析报告及未来发展趋势预测
- 私人出租音响合同协议
- 四川省成都市金堂县2024-2025学年六年级上学期英语期中试卷(含答案)
- 2025年燃气管道运营维护服务合同协议
- 2025年健康管理师(二级)技能考核试卷
- 部编版小学语文三年级上册第四单元作业设计
- 《义务教育英语课程标准(2025年版)》核心内容解读
- 汽车融资租赁业务流程图
- 《多边形的面积》单元教材分析PPT课件
- 浅析巴塞罗那德国馆
- 水利工程全套表格及填写范例(完整资料).doc
评论
0/150
提交评论