简述8086cpu的编程结构

合集下载

8086结构组成

8086结构组成

8086结构组成8086是一款16位微处理器,它的结构组成非常复杂。

本文将从以下几个方面来详细介绍8086的结构组成。

一、总体结构8086由三个主要部分组成:执行单元(EU)、总线接口单元(BIU)和寄存器组。

1.执行单元:负责执行指令并进行算术和逻辑运算。

2.总线接口单元:负责与外部设备通信并控制数据传输。

3.寄存器组:包括通用寄存器、段寄存器和指令指针寄存器等。

二、执行单元1.指令队列指令队列是执行单元中的一个重要部分,它可以存储多条指令,以便快速地进行取指令操作。

当EU需要执行一条新的指令时,它会从队列中取出下一条指令并开始执行。

2.算术逻辑单元算术逻辑单元(ALU)是执行单元中的核心部分,它可以进行各种算术和逻辑运算,如加、减、乘、除、与、或等操作。

ALU还可以处理条件跳转和无条件跳转等控制操作。

3.状态标志寄存器状态标志寄存器(FLAGS)用于记录ALU运算的结果,以便EU进行下一步操作。

FLAGS寄存器包括零标志位、进位标志位、溢出标志位等。

三、总线接口单元1.地址加法器地址加法器(AFA)是BIU的核心部分,它可以将内部地址转换为外部地址,并控制数据传输。

2.指令缓存器指令缓存器(IC)用于存储从内存中读取的指令。

当EU需要执行一条新的指令时,BIU会从IC中取出相应的指令并传输给EU。

3.数据缓存器数据缓存器(DC)用于暂时存储从内存中读取或写入的数据。

当EU 需要访问内存时,BIU会将相应的数据传输到DC中,EU再从DC中读取或写入数据。

四、寄存器组1.通用寄存器8086有8个16位通用寄存器,分别命名为AX、BX、CX、DX、SI、DI、BP和SP。

这些寄存器可以用于保存临时数据和计算结果等。

2.段寄存器8086有4个16位段寄存器,分别命名为CS、DS、ES和SS。

这些寄存器用于保存程序和数据在内存中的位置信息。

3.指令指针寄存器指令指针寄存器(IP)用于保存下一条指令在内存中的地址。

8086处理办法器结构

8086处理办法器结构
高速缓存容量和级数:高速缓存(Cache)是设置在微处理器内部的一 种存储器。由于其存取速度要比内存高一个数量级,可以达到与微处理 器部件同频的工作速度,因此利用高速缓存可以提高处理器的工作效率。 Cache根据速度和位置不同可分一级(L1)、两级(L2)或三级(L3)。
生产工艺:不同的生产工艺对CPU的功耗和工作频率有较大影响,生产 工艺越先进CPU功耗越低,工作频率越高。
TF(Trap Flag)
跟踪标志
TF=1 CPU单步运行; TF=0 CPU正常运行;
跟踪程序进行调试 控
IF(Interrupt Enable Flag)
中断允许 IF=1 CPU接受外部中断; 标志 IF=0 CPU不接受外部中断;
控制可屏蔽中断
制 标
DF(Direction Flag)
方向标志
反映CPU最近一次运算结果的一些状况。 数据暂存寄存器:协助ALU完成运算,暂存参加运算的数据,
如从内存读入的数据。 通用寄存器:用于存放参与运算的数据或数据在内存中的偏
移地址。 EU控制电路:负责接收从BIU指令队列中取来的指令,经
指令译码后形成定时控制信号,对EU各部件实现特定的控 制操作。
将取指令部件与执行指令部件分开,使它们可以并行工 作,从而实现并行流水线,提高系统运行速度; 对内存空间分段管理,利用16位段基址和16位段内偏移 地址实现对1MB空间的寻址; 设有两种工作模式,分别支持单处理器工作和多处理器 工作; 基本指令执行时间为0.3μs~0.6μs。
8086处理办法器结构
辅助进行BCD码运 算调整
零标志
ZF=1运算结果为零; ZF=0运算结果不为零;
判断运算结果是否 为零或相等
符号标志

微机原理与接口技术试题

微机原理与接口技术试题

一、单选题(一) CPU1、8086CPU的指令队列为 ( ) 个字节。

CA 2B 4C 6D 82、标志寄存器的标志位ZF=1表示运算结果()。

AA为零 B 为负 C 不为零 D 有进位3、如果算术或逻辑运算结果不为0,则()。

AA ZF=0B ZF=1C SF=0D SF=14、在8086CPU的延长总线周期中,在()状态之后插入Tw状态。

CA T1B T2C T3D T44、8086/8088读/写总线周期,微处理器是在()状态采样READY信号,以便决定是否插人Tw。

CA T1B T2C T3D T45、8086CPU可插入()DA 1个等待周期B 2个等待周期C 3个等待周期D 任意多个等待周期6、关于8086CPU的非可屏蔽中断,下列说法正确的是()。

CA受中断允许标志IF的影响 B 可用软件屏蔽C 对应的中断类型号为2D 在整个系统中可以有多个7、8086CPU有16根数据线和20根地址线,故可寻址的最大地址空间为()。

BA 64KB B 1MBC 1KBD 64MB8、对可编程接口芯片进行读/写操作的前提条件是 ( )。

BA RD=0B CS=0C WR=0或RD=0D WR=012、如果允许CPU接收可屏蔽中断请求,则标志位()。

AA IF=1B IF=0C CF=1D CF=013、8086CPU要求复位信号RESET至少维持()个时钟周期的高电平。

BA 2B 4C 5D 614、()是微型计算机的核心。

AA CPUB RAMC ROMD 内存15、8086CPU复位时,代码寄存器CS和指令指针寄存器IP分别初始化为()。

CA 0000H,0000HB 0000H,FFFFHC FFFFH,0000HD FFFFH,FFFFHM/为高电平,表示()。

B16、在最小模式下,如果8086CPU的引脚IOA CPU和I/O接口之间进行数据传输B CPU和存储器之间进行数据传输C 存储器和存储器之间进行数据传输D 存储器和I/O接口之间进行数据传输17、关于8086CPU 的信号INTA ,下列说法正确的是( )。

8086微处理器微处理器的基本结构8086

8086微处理器微处理器的基本结构8086

对某些I/O操作DX可用来存放I/O的端口地址(口地址 256)。
例: 例:
MUL BX IN AL , DX
; (AX)(BX)(DX)(AX)
(2)地址指针与变址寄存器: 段起始地址
SP、BP、SI、DI 四个16位寄存器。
以字为单位在运算过程中存放操作数,

经常用以在段内寻址时提供偏移地址。
寄存器组 AH AL AX BH BL BX CH CL CX DH DL DX
SI DI BP SP
运 算 器
(3) 如果在执行指令的过程中,
需要访问内存或I/O端口, EU
EU会请求BIU去完成存取操作。
PSW标志 寄存器
DS
BIU
ES

SS

CS


IP

数据暂存器

总线

接口

控制

电路
指令译码器
1、通用寄存器 (1)数据寄存器
AX、BX、CX、DX 作为通用寄存器。
用来暂存计算过程中所用到的操作数,结果或其它信息。 访问形式:可以用16位的访问;
或者可以用字节(8位)形式访问, 它们的高8位记作 : AH 、 BH 、 CH 、 DH 。 它们的低8位记作 : AL 、BL 、CL 、DL 。
二、8086/8088的编程结构 编程结构:
指从程序员和使用者的角度看到的结构。 与芯片内部的物理结构和实际布局有区别。
某CPU芯片内部实物图
12
8086 编程结构:
1. 总线接口部件BIU (Bus Interface Unit)
→ 运输部门
2. 执行部件EU

8086结构组成

8086结构组成

8086结构组成一、简介8086是英特尔(Intel)公司于1978年推出的16位微处理器,是第一款具有高度通用性的微处理器。

8086结构包括各种功能部件,如寄存器组、运算单元、控制单元等。

本文将详细介绍8086的结构组成和各个组成部分的功能。

二、8086结构组成1. 寄存器组8086包含了多个寄存器,用于存储各种数据和地址信息。

寄存器组包括通用寄存器、指令指针寄存器、段寄存器等。

1.1 通用寄存器8086拥有四个16位的通用寄存器:AX、BX、CX、DX。

这些寄存器可以用于存储数据、地址以及进行运算。

1.2 指令指针寄存器指令指针寄存器IP存储当前执行指令的地址,可以进行程序的跳转和控制。

1.3 段寄存器8086采用段寄存器和偏移地址的方式来定位内存中的数据。

段寄存器包括代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS和附加段寄存器ES。

2. 运算单元8086拥有一个功能强大的运算单元,可以执行各种运算和逻辑操作。

运算单元包括算术逻辑单元ALU、标志寄存器FLAGS等部件。

2.1 算术逻辑单元(ALU)ALU是8086中重要的组成部分,负责执行各种算术和逻辑运算,如加法、减法、与、或等。

2.2 标志寄存器(FLAGS)FLAGS寄存器用于存储运算结果的状态信息,包括进位标志、零标志、溢出标志等。

这些标志位可以帮助程序进行条件分支和判断。

3. 控制单元控制单元是8086中负责控制和协调各个部件工作的组成部分。

主要包括指令译码器、时钟发生器等。

3.1 指令译码器指令译码器用于解析指令,将指令转化为相应的控制信号,控制其他部件的工作。

3.2 时钟发生器时钟发生器为8086提供稳定的时钟信号,用于同步各个部件的工作,确保指令能够按序执行。

4. 外部接口8086能够与外部设备进行通信,包括输入输出接口和存储器接口。

4.1 输入输出接口输入输出接口负责将内部数据和外部设备进行数据交换,通过输入输出指令控制。

8086微处理器与存储器的编程结构教案

8086微处理器与存储器的编程结构教案

第3章 8086微处理器与存储器的编程结构1.教学目的:掌握INTEL80X86微处理器概况以及基于微处理器的计算机系统构成,为汇编语言编程奠定基础。

2.教学要求:①了解INTEL80X86微处理器概况②理解基于微处理器的计算机系统构成③熟练掌握汇编语言编程所需的CPU功能结构、微机存储器(MEM)组织和微机接口组织等基础知识3.教学重点:①微处理器的功能结构②微存储器组织4.掌握难点:①微处理器的寄存器组②存储器寻址5.教学进程安排:P20~406.教学方法:①一般叙述INTEL80X86微处理器概况以及基于微处理器的计算机系统构成②重点讲授微处理器的功能结构和微存储器组织7.教学内容摘要:3.1 80X86微处理器概述3.1.1 微处理器发展简介1.Intel 8086微处理器2.Intel 80386微处理器3.Intel 80486微处理器4.Intel 奔腾(Pentium)处理器5.Intel 奔腾Ⅱ处理器6.Intel 奔腾Ⅲ处理器7.Intel 奔腾Ⅳ处理器3.1.2 与微处理器相关的概念1. 芯片集成度2. 微处理器主频3. 系统总线, 系统总线一般分三类:(1)数据总线(DATA BUS,DB)(2)地址总线(ADDRESS BUS,AB)(3)控制总线(CONTROL BUS,CB)4. 程序存储及存储器组织5. 处理器运算速度3.2 基于微处理器的计算机系统构成微型计算机系统包括硬件和软件两部分。

3.2.1 硬件系统图3.1给出了微型计算机组成框图。

1.运算器2.控制器3.存储器,(1)“读操作”:是指CPU将存储器中存储的某一部分信息取出来进行处理的操作。

(2)“写操作”:是指CPU用新的信息刷新存储器原来存储的某一部分内容的操作。

(3)注意:存储器的读/写操作是以字节为单位按存储器存储单元地址进行的。

4.输入/输出设备图3.1 微型计算机硬件系统组成把运算器、控制器、主存储器和输入/输出接口称为组成计算机硬件系统的五大部件。

8086CPU内部结构


AF — 辅助进位标志,若低字节的第4位向上产生一个进位或 借位,则AF置“1”,否则置“0”;
执行部件
ZF — 零标志位, 若运算结果为零, 则ZF置“1”,否则置“0”; SF — 符号标志位,若算数运算的结果为负,SF置“1”, 否则置“0”;
OF — 溢出标志位,有符号数算术运算结果产生溢出,OF置“1”,否 则置“0”;
B0000H-B0F9FH, 4KB, 单色显示器显示缓冲区;
B8000H-BBF3FH,16KB,彩色显示器显示缓冲区; FFFF0H-FFFFFH,16B,复位程序入口;
执行部件
(1)16位算术逻辑单元ALU (2)4个16位数据寄存器
AX、BX、CX、DX,又可以分为8个8位寄存器使用:AH、 AL、BH、BL、CH、CL、DH、DL 数据寄存器用于存放操作数及中间结果,AX和AL可用作累加 操作,因此又可称作累加器。
(3)4个16位地址指针寄存器
SP (Stack Pointer)— 堆栈指针寄存器 BP (Base Pointer) — 基址指针寄存器 SI (Source Index) — 源变址寄存器 DI (Destination Index)— 目的变址寄存器 地址指针寄存器用于存放操作数的地址,编程时通过修改寄存 器的内容达到修改地址的目的。
Cp=1
8086引脚信号和功能-function diagram AD0 系 (S2)M/IO ~ RD 统 AD15 控 (LOCK)WR A16/S3 制 (S0)DEN ~ (S1)DT/R A19/S6 8086 总线 (RQ0)HOLD 控制 BHE/S7 (RQ1)HLDA ALE(QS0) READY INTA(QS1) CPU TEST INTR 控制 RESET NMI MN/MX CLK

8086CPU的结构与功能

8086CPU 的结构与功能CPU 结构与功能不管什么型号的CPU ,其内部均有这四⼤部件1. ALU :算术逻辑单元2. ⼯作寄存器:分为数据寄存器和地址寄存器⼯作寄存器的⽬的是为了提⾼运算速度,希望参与运算的数据不从外部存储器去取数据,⽽是在CPU 内部取,所以要有能暂存少量数据的寄存器。

数据寄存器是专门存放数据的,地址寄存器是专门存放地址,进⾏间接寻址⽅式,但当地址寄存器不提供地址时,也可以⽤来暂存数据。

3. 控制器:中央指挥机关4. I/O 控制逻辑电路⼀般CPU 执⾏存储器(按字节组织)⾥⾯指令过程如下:1. CPU 通过控制器部件⾥⾯的程序计数器(PC )给外部存储器的地址引脚输出地址(通过地址总线AB ),同时CPU 给存储器发送读操作命令;2. 在读操作下,就把这个地址单元的指令代码通过数据总线(DB ),取回来放在指令寄存器⾥⾯(IR ),注意此时因为指令没有执⾏完,所以PC 还不能去往下⼀条指令,IR 没有地⽅放数据。

3. 指令译码器(ID )不断检测指令寄存器有没有数据,有的话就把指令取⾛放在ID ⾥⾯,取来的指令就被ID 译码分析,就知道这个指令希望CPU 做什么,怎么做;4. ID 通知控制逻辑部件,在相应的控制引脚发出相应的有效命令(读,写等);5. 此条指令执⾏完,IR 为空,PC ⾃动增加到下⼀条指令的地址,执⾏下⼀条指令流程。

如果指令为n 字节,PC ⾃动增n 。

因为在取指令时候,不能执⾏指令,在执⾏指令时候,不能取指令,因此这种架构CPU 是取指令->执⾏指令->取指令...这样循环下去。

CPU 执⾏效率不⾼。

堆栈由先进后出原则组织的存储器区域,称为堆栈。

单⽚机应⽤中,堆栈是个特殊存储区,堆栈属于RAM 空间的⼀部分,堆栈⽤于函数调⽤、中断切换时保存和恢复现场数据(临时数据)。

对于8006 CPU ⽽⾔,堆栈操作是按字操作。

堆栈单元的地址指针由堆栈指针寄存器SP 的内容提供。

8086cpu的结构和功能

8086cpu的结构和功能8086CPU是由英特尔公司开发的一款经典的16位微处理器。

它是在20世纪80年代初面世的,也是当时最新一代的微处理器。

8086CPU具有复杂的结构和强大的功能,为计算机技术的发展做出了重要贡献。

本文将从多个方面介绍8086CPU的结构和功能。

首先,我们来了解8086CPU的整体结构。

8086CPU包括两个主要部件:执行部件和总线控制部件。

执行部件由数据总线单元(DBU)、算术逻辑单元(ALU)和寄存器组成,负责实际进行数据的处理和运算。

总线控制部件包括指令队列、指令译码器和时序控制器,负责控制数据和指令的传输以及处理器的时序控制。

这种分离的结构使得8086CPU 具有高效的指令执行能力。

其次,我们来探讨8086CPU的功能特点。

8086CPU具有许多强大的功能,包括多种数据类型支持、分段式寻址、以及可扩展的指令集等。

首先是多种数据类型支持。

8086CPU支持多种数据类型,包括字节、字和双字等。

这使得它能够处理各种不同类型的数据,适应了不同应用场景的需求。

其次是分段式寻址。

8086CPU采用分段式寻址的方式,将内存划分为多个段,每个段具有独立的段地址。

这种寻址方式可以灵活地管理内存,提高内存的利用率,并且方便编程。

最后是可扩展的指令集。

8086CPU的指令集非常丰富,包括各种数据处理、逻辑控制、输入输出、以及字符串操作等指令。

同时,8086CPU还支持通过软件扩展指令集,满足用户的个性化需求。

总之,8086CPU作为一款经典的微处理器,具有复杂的结构和强大的功能。

它为计算机技术的发展做出了重要贡献,为后续的微处理器设计奠定了基础。

通过多种数据类型支持、分段式寻址和可扩展的指令集等特点,8086CPU实现了高效的数据处理和灵活的内存管理,为用户的应用提供了广泛的功能支持。

参考文献:1. Patterson, D.A., & Hennessy, J.L. (2017). Computer Organization and Design: The Hardware/Software Interface. Morgan Kaufmann.2. Kip Irvine. (2016). Assembly Language for x86 Processors. Pearson.。

第2章8086CPU的原理


(2)DS:数据段段寄存器,在数据段寻址时,与BX、SI、DI 合用。 (3)SS:堆栈段段寄存器,在栈操作时,与SP合用对栈顶数据进 行存取。在对栈中数据存取时与BP合用。 (4)ES:附加数据段段寄存器,在串操作时,存放目标串,与DI 合用。也可以用来存放数据。 2 标志寄存器FLAGS FLAGS是16位寄存器,包含9个标志,标示CPU的状态和某些操 作特性。
其中:AH、AL寄存分别表示AX寄存器的高8位和低8位,如下图: 1Fh AH 50h AL AX
AH=1Fh AL=50h AX=1F50h
但AH和AL都可以作为8位的寄存器独立使用, 如 MOV BL,AH 指令执行后, BL=1Fh
其余的8位寄存器如上所述。 8086的4个数据寄存器,通常都是用来存储供CPU处理的数据或 保存结果的,但在特定的场合里,它们又有自己的特殊用途。 (1)AX、AL---累加器:在乘法、除法和符号扩展指令中,有一 个操作数预先放在累加器中;在I/O操作时,通过它CPU与接口交 换数据。累加器也是所有寄存器中执行速度最快的。
IF 中断允许标志: IF 的值决定CPU是否响应外部的可屏蔽中断。 当 IF=1 时,CPU可以响应外部的可屏蔽中断,否则相反。IF 的值 由专门的指令控制,即:STI 指令置 IF=1 CLI 指令置 IF=0 当 IF=0 时,CPU不能屏蔽非屏蔽中断和CPU内部中断。 TF 跟踪标志: TF=1 时,CPU进入单步程序执行方式,TF的控 制没有专用的指令,要通过其它方式设置。
图(3.5)8086/8088的引脚信号
最小方式 用于单个微处理器组成的系统,由8086产生系 统所需的全部控制信号。 最大方式 用于多处理器系统中,8086不直接提供控制信 号 。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

简述8086cpu的编程结构
8086 CPU是Intel公司于1978年推出的一款16位微处理器,它是当时最先进的微处理器之一。

它的编程结构具有以下几个方面的特点。

一、寄存器
8086 CPU有14个16位的寄存器,分为通用寄存器、段寄存器和指令指针寄存器。

通用寄存器包括AX、BX、CX和DX,每个通用寄存器可以分为两个8位的部分进行独立操作。

段寄存器包括CS、DS、SS和ES,用于存储段的起始地址。

指令指针寄存器IP用于存储指令的偏移地址。

二、寻址方式
8086 CPU支持多种寻址方式,包括直接寻址、寄存器寻址、间接寻址、基址加变址寻址和相对寻址等。

直接寻址是指操作数直接给出地址;寄存器寻址是指操作数在寄存器中;间接寻址是指操作数通过一个寄存器指向的地址;基址加变址寻址是指操作数通过一个基址寄存器和一个变址寄存器计算出的地址;相对寻址是指操作数相对于指令指针寄存器的偏移地址。

三、指令系统
8086 CPU的指令系统非常丰富,包括数据传送指令、算术运算指令、逻辑运算指令、位操作指令、串操作指令、程序转移指令和处
理器控制指令等。

数据传送指令用于将数据从一个位置传送到另一个位置;算术运算指令用于进行加减乘除等数学运算;逻辑运算指令用于进行与、或、非等逻辑运算;位操作指令用于对数据的位进行操作;串操作指令用于对字符串数据进行操作;程序转移指令用于控制程序的转移;处理器控制指令用于控制处理器的工作状态。

四、中断和异常处理
8086 CPU支持中断和异常处理机制。

中断是指外部设备通过中断请求线向处理器发出中断请求,处理器则通过中断向量表找到对应的中断服务程序进行处理。

异常是指在执行指令过程中发生的错误或非法操作,处理器会根据异常类型转移到异常处理程序进行处理。

五、堆栈机制
8086 CPU使用堆栈机制来保存程序的返回地址和局部变量等信息。

堆栈由SS和SP寄存器来管理,SS寄存器存储堆栈段的起始地址,SP寄存器存储堆栈指针的偏移地址。

六、分段机制
8086 CPU采用分段机制来扩展地址空间。

通过段寄存器和偏移地址的组合,可以访问超过64KB的内存空间。

段寄存器存储段的起始地址,偏移地址存储段内的偏移量。

七、特权级
8086 CPU支持特权级的概念,将指令分为特权指令和非特权指令。

特权指令只能在特权级别较高的程序中执行,非特权指令可以在任何程序中执行。

总结起来,8086 CPU的编程结构包括寄存器、寻址方式、指令系统、中断和异常处理、堆栈机制、分段机制和特权级等多个方面。

了解和掌握8086 CPU的编程结构对于进行汇编语言程序的开发和优化非常重要。

相关文档
最新文档