微机原理与单片机技术 8086微处理器及其系统
微机原理与接口课程设计基于8086微处理器和8255A芯片的汽车信号灯微机控制系统的设计与实现

课程设计题目汽车信号灯目录一、设计目的 (2)二、系统硬件设计 (3)三、系统软件设计 (9)四、系统调试及结果 (15)五、总结和体会 (16)六、参考文献 (16)一、设计目的通过所学知识和现代计算机技术来模拟模拟汽车信号灯控制系统,把所学的理论的知识用到现实实践中去,加强了对理论知识的理解和记忆。
展示了计算机技术在汽车行业的应用。
设计出汽车信号灯微机控制系统。
汽车信号灯的作用是大家所熟知的,汽车通过显示不同的信号灯来告诉前后左右的行车者本汽车正在进行的操作,本控制系统采用8086微处理器作为处理器和可编程的8255A芯片来模拟汽车信号灯控制系统。
通过在实验箱上分别按K1,K2,K3和K4键来显示汽车左转、右转,前进和后退等状态。
左/右转弯开关K1,K2闭合时,对应的仪表板左/右转弯指示灯、左/右转弯头灯和左/右转弯尾灯闪烁;紧急开关闭合时,所有仪表板左右转弯灯、左右转弯头灯和左右转弯尾灯闪烁;当用户按K3时,也即踩刹车时,刹车开关闭合,刹车灯(左右红色尾灯)亮;停靠时(合上停靠开关),即按K4键时,所有的灯闪烁。
所需执行的操作由相应的开关状态反映,所需控制的信号灯有仪表板左/右转弯灯、暂停灯、照明远灯和照明近灯共五类类灯.二、系统硬件设计1.硬件连接图:利用8088驱动8255 8253来连接外部电路。
2.器件选择:CPU(8088) 1个发光二极管 5个74ALS373 2个电阻 5个74ALS245 1个 74LS00 5个8255 1个控制开关 5个8253 1个3、8088,8255,8253功能及说明8088的引脚包括20根地址线,16根数据线及控制线,状态线,时钟,电源和地线等,大致可分五大类.第一类只传送一种信息,第二类每个引脚电平的高低代表不同信息,第三类代表不同的工作方式,第四类每个引脚可以传送两种信息,第五类引脚在输入和输出时分别传送不同的信息.同时还要地址锁存器及数据总线收发器来构成最小系统.因本电路用到各种比较重要的芯片,因此有必要对芯片进行简要介绍。
微机原理第2章课后答案

第2章8086微处理器及其系统教材习题解答1. 8086 CPU 由哪两部分构成,它们的主要功能是什么?在执行指令期间,EU 能直接访问存储器吗,为什么?【解】8086CPU由执行部件(EU)和总线接口部件(BIU)两部分组成。
执行部件由内部寄存器组、算术逻辑运算单元(ALU)与标志寄存器(FR)及内部控制逻辑等三部分组成。
寄存器用于存储操作数和中间结果;算术逻辑单元完成16位或8位算术逻辑运算,运算结果送上ALU内部数据总线,同时在标志寄存器中建立相应的标志;内部控制逻辑电路的主要功能是从指令队列缓冲器中取出指令,对指令进行译码,并产生各种控制信号,控制各部件的协同工作以完成指令的执行过程。
总线接口部件(BIU)负责CPU与存储器、I/O设备之间传送数据、地址、状态及控制信息。
每当EU部件要执行一条指令时,它就从指令队列头部取出指令,后续指令自动向前推进。
EU要花几个时钟周期执行指令,指令执行中若需要访问内存或I/O设备,EU就向BIU 申请总线周期,若BIU总线空闲,则立即响应,若BIU正在取一条指令,则待取指令操作完成后再响应EU的总线请求。
2. 8086CPU与传统的计算机相比在执行指令方面有什么不同?这样的设计思想有什么优点?【解】8086 CPU与传统的计算机相比增加了指令队列缓冲器,从而实现了执行部件(EU)与总线接口(BIU)部件的并行工作,因而提高了8086系统的效率。
3. 8086 CPU 中有哪些寄存器,各有什么用途?【解】8086共有8个16位的内部寄存器,分为两组:①通用数据寄存器。
四个通用数据寄存器AX、BX、CX、DX均可用作16位寄存器也可用作8位寄存器。
用作8位寄存器时分别记为AH、AL、BH、BL、CH、CL、DH、DL。
AX(AH、AL)累加器。
有些指令约定以AX(或AL)为源或目的寄存器。
实际上大多数情况下,8086的所有通用寄存器均可充当累加器。
BX(BH、BL)基址寄存器。
微机原理第三章8086的寻址方式和指令系统PPT课件

04 寻址方式和指令系统的关 系
寻址方式对指令执行的影响
01
寻址方式决定了指令操作数的来源和访问方式,从而
影响指令的执行效率和正确性。
02
不同的寻址方式可能导致指令执行时间不同,因为它
们可能需要不同的计算步骤和内存访问次数。
03
寻址方式的正确选择可以简化指令的执行过程,提高
指令的执行效率。
指令系统对寻址方式的支持
在个人电脑(PC)领域,IBM PC/AT是基于8086的扩展版 80286开发的,奠定了现代PC 的基础。
8086也被广泛应用于工业控制、 自动化设备、仪器仪表等领域。
现代计算机系统中8086的继承和发展
尽管随着技术的进步,更先进的微处理器已经取代了8086在主流应用中的地位, 但8086的设计理念和架构仍然在许多嵌入式系统、低功耗应用中得到继承和发展 。
CALL指令用于调用子程序, 并将返回地址压入堆栈。
处理器控制类指令
处理器控制类指令用于控制 处理器的状态和行为。
包括HLT、INT、IRET等指令。
02
01
03
HLT指令用于暂停处理器执 行,等待中断或系统调用。
INT指令用于触发软件中断, 执行中断处理程序。
04
05
IRET指令用于从中断返回, 恢复程序的执行。
算术运算类指令用于执行 加、减、乘、除等算术运 算。
ADD指令将两个操作数 相加并将结果存储在目标 操作数中。
ABCD
包括ADD、SUB、MUL、 DIV等指令。
SUB指令从第一个操作数中 减去第二个操作数,并将结 果存储在目标操作数中。
逻辑运算类指令
逻辑运算类指令用于执行逻 辑与、或、非等逻辑运算。
第2章 8086微处理器与汇编语言——_微机原理及单片机寻址方式

寄存器寻址 操作数存放在CPU的内部寄存器reg中:
8位寄存器r8: AH、AL、BH、BL、CH、CL、DH、DL 16位寄存器r16: AX、BX、CX、DX、SI、DI、BP、SP 4个段寄存器seg: CS、DS、SS、ES
寄存器名表示其内容(操作数)。 注意:源操作数和目的操作数的位数必须相同。
操作码 操作数 ...... 操作数
8086指令格式中的操作数有:零操作数、一操作数 和二操作数三种形式。 例: RET INC CX ADD AX , BX
寻址方式※
数据寻址方式
立即数寻址 寄存器寻址
地址寻址方式
直接寻址 寄存器间接寻址 寄存器相对寻址 基址变址寻址 相对基址变址寻址
演示
MOV AX, [SI+06H]
;AX←DS:[SI+06H]
MOV AX, 06H[SI]
;AX←DS:[SI+06H]
基址变址寻址
有效地址由基址寄存器(BX或BP)的内容加上 变址寄存器(SI或DI)的内容构成: 有效地址=BX/BP+SI/DI 段地址对应BX基址寄存器默认是DS,对应BP 基址寄存器默认是SS;可用段超越前缀改变。
计划学时:2
指令的基本格式
计算机中指令由操作码字段和操作数字段两部分 组成。
操作码字段―指示计算机要执行的操作。 操作数字段―指出在指令执行操作过程中所需要的数据。 操作数本身 操作数地址或是地址的一部分 可以是指向操作数地址的指针或其他有关 操作数的信 息
指令的一般格式:
直接寻址
微机原理8086汇编语言

微机原理8086汇编语言微机原理和8086汇编语言是计算机科学与技术领域中的重要基础知识,对于理解计算机的运行原理和编程开发具有关键作用。
本文将全面介绍微机原理和8086汇编语言的基本概念、功能特点以及应用实践。
一、微机原理概述微机原理是指微型计算机的构成、工作原理、体系结构和外围设备等的基本原理。
微机由中央处理器(CPU)、存储器和输入输出设备等组成,其内部实现了数据的存储和处理,并能够与外部环境进行交互。
微机原理的研究与应用对于计算机硬件的设计和控制至关重要。
二、8086汇编语言介绍8086汇编语言是在微机原理基础上发展起来的一种低级程序设计语言。
它以机器指令的形式直接对CPU发出控制命令,实现数据处理和操作。
8086汇编语言具有直观、高效的特点,可以对计算机内部各种硬件资源进行精细控制,实现复杂的算法和功能。
三、8086汇编语言的基本语法8086汇编语言的基本语法包括指令、寻址方式和操作数等。
指令通常由操作码和操作数组成,用于执行特定的操作。
寻址方式指定操作数在内存中的位置,可以是直接寻址、寄存器间接寻址、立即数寻址等多种方式。
操作数表示要进行操作的数据,可以是寄存器、内存单元或立即数。
四、8086汇编语言的常用指令8086汇编语言提供了丰富的指令集,包括数据传输指令、算术运算指令、逻辑运算指令、条件转移指令、无条件转移指令等。
通过这些指令的组合和调用,可以实现各种复杂的功能和处理需求。
五、8086汇编语言的应用实践8086汇编语言广泛应用于嵌入式系统设计、驱动程序开发、操作系统编程以及性能优化等领域。
在嵌入式领域,汇编语言可以直接操作硬件资源,实现高效的数据处理和控制;在操作系统编程中,汇编语言可以直接访问操作系统内核,实现底层功能的扩展和优化。
六、8086汇编语言的优势与不足8086汇编语言具有高效、灵活的优势,可以直接操作硬件资源和内存,实现高性能的程序。
然而,汇编语言的开发和调试困难,可读性低,维护成本高,对程序员的要求较高。
8086微机原理与接口技术课程设计

引言8086微机是早期个人计算机使用的一种微处理器,它具有复杂的内部结构和丰富的外部接口,广泛应用于计算机系统的设计和开发中。
本文档旨在介绍8086微机的原理和接口技术,并为课程设计的实施提供指导。
8086微机原理8086微机的基本结构:8086微机包括CPU、内存、外围设备以及系统总线等部分。
其中,CPU是控制和执行各种指令的核心部件,内存用于存储程序和数据,外围设备用于与外部进行数据交互,而系统总线则负责实现各部分之间的有效通信。
8086微机的内部结构:8086微机的内部结构包括通用寄存器、指令寄存器、段寄存器、标志寄存器等。
通用寄存器用于存储临时数据和计算结果,指令寄存器存储当前执行的指令,段寄存器用于定位内存中的数据段和代码段,而标志寄存器则存储程序运行过程中的标志位信息。
8086微机的指令系统:8086微机具有丰富的指令系统,包括数据传输指令、算术指令、逻辑指令、条件转移指令、循环指令等。
这些指令能够满足各种数据处理和控制需求,为程序的编写提供了灵活性和高效性。
8086微机接口技术内存与CPU的接口技术:8086微机通过地址总线和数据总线与内存进行通信。
其中,地址总线用于指定内存中的地址位置,数据总线用于传输数据。
通过适当的地址和数据线连接,可以实现对内存的读写操作。
外部设备与CPU的接口技术:8086微机可以通过端口和中断请求线与外部设备进行通信。
通过端口地址和端口数据线连接,可以在CPU和外部设备之间进行数据传输。
通过中断请求线,CPU可以接收外部设备的中断信号,从而进行相应的处理。
时序控制技术:8086微机的各个部件之间需要进行协调和同步。
通过合理的时序控制技术,可以确保各部件之间的数据传输和操作按照正确的时间序列进行,避免出现数据冲突和错误。
课程设计实施课程设计目标:本课程设计旨在通过8086微机原理与接口技术的学习和实践,培养学生的计算机系统设计和开发能力。
通过对8086微机的原理和接口技术的深入理解,学生可以独立完成微机系统的设计和实现。
微机原理第三章:8086微处理器结构

4.8086 和8088 二者的指令系统完全兼容
(1)有24 种寻址方式,具有乘、除法指令等。 (2)取指令和执行指令的操作并行运行,运行速度大大提高。
(3)具有最小模式和最大模式,应用领域宽广,适应性强。
(4)可方便地和数据处理器8087、I/O 处理器8089 或其它处理器 组成多处理机系统,提高数据处理能力和输人输出能力。
代码段寄存器 CS 标 志 寄 存 器
数据段寄存器 DS
堆栈段寄存器 SS
附加段寄存器 ES
由于8086/8088 CPU 可直接寻址的存储器空间是1M字节,直接寻址需要 20位地址码,而所有的内部寄存器都是16位的,用这些寄存器只能寻址 64K字节,为此需要采取分段技术来解决这个问题。
表3.1
通用寄存器的隐含使用
程序调试过程中。
3.1.2 8086/8088 的寄存器结构
四、指令指针寄存器 IP ★ 16 位的指令指针寄存器 IP 用来存放将要执行的下一条 指令在代码段中的偏移地址。 ★ 在程序运行过程中,BIU 可修改 IP 中的内容,使它始终 指向将要执行的下一条指令。 ★ 程序不能直接访问 IP,但可通过某些指令修改 IP 内容。 ★ 如遇到转移类指令,则将转移目标地址送人IP中,以实 现程序的转移。
★ 规则字的读/写操作可以一次完成。由于两个存储体上的地址
线 A19~A1 是连在一起的,只要使 A0=0,BHE=0,就可 以实现一次在两个存储体中对一个字的读/写操作。 ★ 读写的是从奇地址开始的字(高字节在偶体中,低字节在奇体 中),这种字的存放规则称为“非规则字”或“非对准字”。 ★ 非规则字的读/写,需要两次访问存储器才能完成。 第一次访问存储器读/写奇地址中的字节;
三、标志寄存器 FR
第2章 8086微处理器与汇编语言——_微机原理及单片机汇编语言

分析运算操作符应用之例
ARRAY DW 1 , 2 , 3 : ADD SI , TYPE ARRAY
汇编后: ADD VAR ARRAY STR
MOV MOV MOV
SI , 2 ; VAR为字变量 ;ARRAY为双字变量 ; STR为字节变 ; (AX) ← 2 ; (BX) ← 4 ; (CX) ← 1
第2章 8086微处理器与汇编语言
汇编语言
学习目标
了解8086汇编语言格式以及伪指令的应用 要求。
学习内容
汇编语言语句的种类及其格式 汇编语言数据 表达式与运算符 伪指令
汇编语言语句的种类及其格式
指令语句
能产生目标代码, CPU可以执行, 完成特定功能的语句, 由 CPU指令组成。
功能:定义变量的类型,分配空间并赋初值。
格式:[变量名] DB/DW/DD 操作数[,操作数…]
[变量名]
是任选项,是数据单元的符号地址。
操作数的几种形式
操作数为常数,常数表达式或为字符(串) 操作数是“?”只定义存储空间,但不预存储数据
操作数是已定义的变量或标号
操作数字段的几种形式举例
DATA_BYTE
DATA_WORD
Hale Waihona Puke DATA_DW0A 04 10 64 00 00 01 FB FF 3C 00 00 00 FD FF 00 00
10d 4 10h 100d 100h -5 60d
0FFFDh
操作数字段的几种形式举例
操作数是字符串 MESSAGE DB ‘HELLO’ ABC
综合运算符
属性运算符PTR
8086微型计算机系统.PPT

2.1.2 微型计算机系统的硬件组成
现代微型计算机系统硬件组成:
微处理器
总
线
协处理器
控
制
RAM
逻
ROM
辑
显示器
输 入
键盘
输
打印机
出 接
鼠标
口
外存储器
其他设备
8
1、微处理器(CPU,中央处理单元)
微处理器包含运算器和控制器,微处理器的性能基本决定了计算机 的性能,是微型计算机的核心。
随着微电子技术的发展,微型计算机的发展基本遵循摩尔定律。
数据2 数据m
④将指令的运 算处理结果送 回内存保存
求完成 对数据 的运算 和处理
6
存
2.1.2 微型计算机系统的硬件组成
输 原始 入 数据 设
备
运算器 存储器 控制器
输
出 计算 设 结果 备
运算器(ALU):运算器的核心是算术逻辑单元,是完成各种算术和逻 辑运算的部件。
控制器(CU):发出各种控制信息,使计算机各部件协调工作的部件。 存储器(M):记忆程序和数据的部件。 输入设备(IN):将程序和数据输入的部件。 输出设备(OUT):将结果数据和其它信息输出的部件。
《微机原理与测控接口技术》
第2章 8086微型计算机系统
1
本章主要内容
1 半808导6微体处存理储器器的的结分构及类工作模式 2 8086微处理器的引脚特性 3 8086微型计算机系统的总线时序 4 8086微型计算机系统的组成
2
2.1 概述
微型计算机(简称微机):
将计算机的核心器件中央处理器(CPU)(运算器和控制器) 集成在一块半导体芯片上,配以存储器、I/O接口电路及系统 总线等设备的计算机。
03_8086微处理器及其系统

信息与计算机学院 闫 勇 yanyong10000 @
第3章 8086微处理器及其系统 8086微处理器及其系统
8086/8088微处理器内部结构(2课时 微处理器内部结构(2课时) 3.1 8086/8088微处理器内部结构(2课时) 8086/8088的存储器(2课时 的存储器(2课时) 3.2 8086/8088的存储器(2课时) 8086/8088指令系统 实验课) 3.3 8086/8088指令系统 (实验课) 8086/8088微处理器外部引脚(2课时 微处理器外部引脚(2课时) 3.4 8086/8088微处理器外部引脚(2课时) 8086/8088系统的最小 最大工作方式(2课时) 系统的最小/ (2课时 3.5 8086/8088系统的最小/最大工作方式(2课时) 作业
BIU的结构 BIU的结构
6字节指令队列缓冲器; 字节指令队列缓冲器; 20位地址加法器; 20位地址加法器; 位地址加法器 总线控制电路; 总线控制电路; 16位指令指针IP; 16位指令指针IP; 位指令指针IP 4个16位段地址寄存器: 16位段地址寄存器: 位段地址寄存器 CS(代码段寄存器)、DS(数据段寄存器)、 CS(代码段寄存器) DS(数据段寄存器) 代码段寄存器 数据段寄存器 SS(堆栈段寄存器 堆栈段寄存器) ES(附加段寄存器 附加段寄存器) SS(堆栈段寄存器)、ES(附加段寄存器)。
总线接口单元BIU 3.1.1.1 总线接口单元BIU
--具体任务 --具体任务
BIU的功能是负责完成CPU与存储 BIU的功能是负责完成CPU与存储 的功能是负责完成CPU 器或I 端口之间的数据传送。 器或I/O端口之间的数据传送。 具体任务: 具体任务: BIU要从内存取指令送到指令 BIU要从内存取指令送到指令 要从内存取指令 队列; 队列; CPU执行指令时,BIU要配合执 CPU执行指令时,BIU要配合执 执行指令时 行单元从指定的内存单元或者 外设端口中取数据,将数据传 外设端口中取数据, 取数据 送给执行单元; 送给执行单元; 把执行单元的操作结果传送到 把执行单元的操作结果传送到 操作结果传送 指定的内存单元或外设端口中。 指定的内存单元或外设端口中。
微机原理与单片机的区别

微机原理与单片机的区别
微机原理与单片机的主要区别在于以下几个方面:
1. 结构差异:微机原理是指包括中央处理器(CPU)、存储器、输入输出设备等多个部件组成的计算机系统,通常由多个芯片或模块组成;而单片机则是指将中央处理器、存储器、输入输出设备等多个部件集成到一块芯片上的计算机系统,整个系统称为单片机。
2. 功能差异:微机原理中的中央处理器(CPU)具有较高的处理能力,能够运行复杂的操作系统和应用软件,并且支持多任务操作;而单片机的处理能力较低,主要用于执行简单的任务,如控制器、传感器等。
3. 成本差异:由于单片机的各个部件集成在一块芯片上,因此制造成本相对较低;而微机原理中的各个部件需要单独制造并组装,因此成本相对较高。
4. 应用领域差异:微机原理主要应用于个人计算机、服务器、工作站等大型计算机系统中;而单片机主要应用于嵌入式系统,如家电、手机、汽车电子等。
总之,微机原理和单片机在结构、功能、成本和应用领域等方面存在着明显的差异。
选择使用哪种计算机系统取决于具体的应用需求和资源限制。
微机原理8086汇编程序设计

03
MOV指令用于将源操作数复制 到目标操作数,ADD、SUB等 指令用于执行算术运算,CMP 指令用于比较两个操作数的大 小。
算术运算类指令
01
算术运算指令用于执行加法、减法、乘法和除法等算术运算。
02
指令包括ADD、SUB、MUL、DIV等。
03
ADD指令将两个操作数相加并将结果存储在目标操作数中, SUB指令从第一个操作数中减去第二个操作数,MUL指令将 两个操作数相乘并将结果存储在目标操作数中,DIV指令将第 一个操作数除以第二个操作数并将商存储在目标操作数中。
子程序设计的特点是能够提高程序的模块化程度,便于代码重用和维护。同时,子程序可以独立于主 程序进行测试和调试,提高了程序的可靠性。但是,子程序调用会增加程序的执行时间,需要注意优 化子程序的性能。
05 汇编语言与高级语言的接 口
C语言与汇编语言的混合编程
调用约定
在C语言中调用汇编代码时,需要遵循特定 的调用约定,如参数传递方式、寄存器使用 等。
嵌入汇编
在C语言中嵌入汇编代码,可以直接在C程序中编写 汇编指令,但需要注意语法和语义的正确性。
汇编模块
将汇编代码编写成独立的汇编模块,通过外 部函数调用的方式在C程序中使用。
汇编语言在嵌入式系统中的应用
实时性控制
01
汇编语言具有直接控制硬件的能力,适用于嵌入式系统中的实
时性控制,如中断处理、定时器控制等。
02
指令包括JMP、CALL、RET等。
03
JMP指令用于无条件跳转到指定的地址执行程序,CALL指令用于调用子程序并 将返回地址压入堆栈中,RET指令用于从子程序返回并恢复原来的执行流程。
串操作类指令
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.1.2 内部寄存器
1 通用寄存器
4个16位的通用寄存器:AX,BX,CX,DX。 可以存放16位的操作数 也可分别分解为2个8位寄存器(AL、AH 、..)
AX (primary accumulator):累加器。乘、除运算,字的输入输出,中间结果 的缓存。 AL 字节的乘、除运算,字节的输入输出,十进制算术运算。 AH 字节的乘、除运算,存放中断的功能号。 BX (base, accumulator):基址寄存器。存储器指针。 CX (counter, accumulator):计数寄存器。串操作、循环控制的计数器。 CL 移位操作的计数器 DX (accumulator, other functions):数据寄存器。字的乘、除运算,间接的输 入输出。
2.1.3 存储结构
2.1.3 存储结构
3 物理地址合成
物理地址的形成:
由编译器完成,编译过程中不需要编程人员参与计算
但要知道实现的方法和计算结果(程序调试) 。 期末要考。
2.1.3 存储结构
4 特殊内存区域
系统中,有些内存区域的作用是固定的,用户不能随便使用。 中断向量区:00000H—003FFH共1K字节,用以存放256种中断类型的中
存储结构:地址概念及其分段表示
2.1 8086微处理器结构
8086微处理器的一般性能特点: •16位的内部结构,16位双向数据信号线; •20位地址信号线,可寻址1M字节存储单元; •较强的指令系统; •可寻址64K个I/O端口; •可处理内部软件中断和外部中断,中断源可达256个; •单一的+5V电源,时钟5MHz。
微机原理与单片机技术
信息学院 电路与信号教研部
2 8086微处理器及其系统
1
2.1 8086微处理器结构
2
3
2.2 8086引脚信号和系统配置
2.3 8086主要操作
作业(107页) :2, 3, 4, 5, 7, 9, 13, 14
2.1 8086微处理器结构
编程结构:总线接口部件,执行部件EU 内部寄存器:分类,功能,标志寄存器
2.2.1工作模式
2 最大模式
系统中至少包含两个微处理器,其中一个为主处理器(8086),其 它的微处理器称之为协处理器,协助主处理器工作。 8087:数值运算协处理器。硬件实现多种类型的数值运算,如高 精度的整型和浮点型数值运算,超越函数(三角函数、对数函 数)的计算等,提高主处理器的运行速度。 8089:输入/输出协处理器。专门用于输入/输出操作的指令系统 ,直接为输入/输出设备服务,提高主处理器的效率,尤其是在 输入/输出操作比较频繁的系统中。
2.2 8086引脚信号和系统配置
2.2.1工作模式
2.2.2 8086 CPU的引脚功能 2.2.3 8086最小模式系统典型配置
2.2.1工作模式
1 最小模式
系统中只有一个8086微处理器 所有的总线控制信号,都是直接由8086产生。 该模式系统中的总线控制逻辑电路被减到最少,适用于规模较 小的微机应用系统,工业控制系统,无复杂数值计算系统等。
2.1.3 存储结构
2 存储空间分段及段地址
目的:描述一个存储单元的地址。 问题: 存储器空间为1MB个单元,地址编号用20位 二进制数。 使用内部寄存器, 16位。 解决方法:系统中采用了存储器分段的方法。 规定:存储空间一个段为64KB 。 段首地址低4位为’0’ ,高16位存于段寄存器。
2.1.3 存储结构
2.1.2 内部寄存器
3 段寄存器
4个16位段寄存器:CS 、 DS、SS、ES。 功能段指针。 CS(Code Segment):代码段寄存器。
DS(Data Segment): 数据段寄存器。
ES(Extra Segment):附加段寄存器。 SS(Stack Segment):堆栈段寄存器。
2.1.2 内部寄存器
2 指针与变址寄存器
2个16位指针寄存器:SP,BP。 SP(Stack Pointer):堆栈指针寄存器。与堆栈段寄存器SS一起来 确定堆栈在内存中的位置。 BP(Base Pointer):基数指针寄存器。通常用于存放基地址。 2个16位变址寄存器:SI,DI。 SI(Source Index):源变址寄存器。存储器指针、串指令中的源操 作数指针 DI(Destination Index):目的变址寄存器。存储器指针、串指令中 的目的操作数指针
1个16位标志寄存器:FR( Flags Register) Flags Register:
15 14 13 12 11 10 9 IF 8 7 6 5 4 AF 3 2 PF 1 0 CF
bit position
OF DF
TF SF ZF
Flags
2.1.2 内部寄存器
5 标志寄存器
6个状态标志位:OF, SF,ZF,AF,PF,CF。 记录CPU工作状态,可读。 CF (Carry Flag):进/借位标志位。(运算结果低8位中的最高位发生进/借位时,置1。) PF(Parity Flag):奇偶标志位。 (运算结果低8位中l的个数为偶数时,置1。) AF(Auxiliary Flag):半进位标志位。 (做字节加/减运算时,当低四位有向高四位进/借位时,置1。)
启动区:FFFF0H—FFFFFH共16个单元,用以存放一条无条件转移指令的
代码,转移到系统的初始化部分。
2.1 8086微处理器结构_小结
编程结构:总线接口部件,执行部件EU。P73 图4-1 14个寄存器名称和作用:编程时用。 16位的数据总线线;
20位的地址线线,寻址1M个存储单元。
存储单元的内容:存储一个字节。 1M个存储单元分段使用:代码段,数据段,堆栈段。 存储单元的地址:物理地址 = 段地址×16 + 偏移地址。
2.1.1 内部结构
block diagram over Intel 8086 1:main registers 2:segment registers and IP 3:address adder 4:internal address bus 5:instruction queue 6:control unit 7:bus interface; 8:internal databus; 9:ALU 10/11/12:external address/data/control bus FR
2.2.2 8086 CPU引脚功能
1 管脚图
外部结构图 封装:DIP 命名方法: 管脚顺序号 1 功能名称 GND
(手册:8086.pdf)
2.2.2 8086 CPU引脚功能
2 最小模式下管脚功能分类
最小系统: VCC: +5V。
GND: 地。
CLK: 时钟信号输入引脚。 Reset: 复位信号输入引脚,高电平有效。 MN/MX(Minimum/Maximum Model Control ): 接+5V,CPU工作于最小模式下。
AL BL CL DL
4 AF
3 -
2 PF
1 -
0 CF
Segment register
2.1.2 内部寄存器
8086内部有14个16位的寄存器。 通用寄存器组: AX、BX、CX、DX
指针与变址寄存器组: SP 、BP 、DI、 SI 段寄存器: 指令指针寄存器: 标志寄存器: CS、DS、SS、ES IP FR
参见手册:8086.pdf
2.1 8086微处理器结构
2.1.1 内部结构(编程结构/功能结构) 2.1.2 内部寄存器 2.1.3 存储结构
2.1.1 内部结构(编程结构/功能结构)
总线接口部件 BIU
执行部件 EU
/wiki/8086
2.1.1 内部结构
2.1.2 内部寄存器
GENERAL PURPOSE REGISTERS
AH BH CH DH Index registers SI DI BP SP
Status register 15 14 13 12 11 OF 10 DF 9 IF 8 TF CS DS ES SS Instruction pointer IP 7 SF 6 ZF 5 -
2.1.1 内部结构
2 总线接口部件BIU(Bus Interface Unit)
作用:从内存中取指令,送入指令队列, 实现CPU与存储器和I/O接口之间数据传送。 组成: 4个段地址寄存器:代码段寄存器CS 数据段寄存器DS 附加段寄存器ES 堆栈段寄存器SS 16位指令指针寄存器IP。 20位地址加法器:利用16位寄存器和成20位物理地址。 6字节的指令队:预取指,提高CPU的工作效率。 总线接口及其控制逻辑。
ZF(Zero Flag):零标志位。 (运算结果为0时置1。)
SF(Sign Flag):符号标志位。 OF(Overflow Flag):溢出标志位。
2.1.2 内部寄存器
5 标志寄存器
3个控制标志位:DF,IF,TF。 可改写,控制CPU工作方式。 TF(Trap Flag):陷阱标志位(单步标志位、跟踪标志)。 置1,将使8086/8088进入单步工作方式,通常用于程序调试。 IF(Interrupt enable Flag):中断允许标志位。 置1,则处理器可以响应可屏蔽中断。 DF(Direction Flag):方向标志位。 置1,则串操作指令的地址修改为自动减量方向。
2 存储空间分段及段地址
逻辑地址:指段地址和偏移地址,是指令中引用的形式地址。 一个逻辑地址只能对应一个物理地址,而一个物理地址可以对 应多个逻辑地址。 偏移地址:某存储单元相对其所在段起始位置的偏移字节数, 或简称偏移量。它是一个16位的地址,根据指令的不同,它可 以来自于CPU中不同的16位寄存器(IP、SP、BP、SI、DI、BX 等)。 例: 一条指令的物理地址 CS:IP