微机原理-2

合集下载

五邑大学16/32位微机原理、汇编语言及接口技术钱晓捷第2章-2

五邑大学16/32位微机原理、汇编语言及接口技术钱晓捷第2章-2
2.2 8088/8086的寻址方式
寻址方式——指CPU获得操作数的方法 操作数的存放位置: 1)在指令中,2)在寄存器中,3)在内存中
从8088/8086的指令格式入手,
立即数寻址方式 寄存器寻址方式 存储器寻址方式
进而熟悉8088/8086汇编语言指令格式,尤 其是其中操作数的表达方法 为展开8088/8086指令系统做好准备
寄存器名表示其内容(操作数)
MOV AX, BX
;AX←(BX)
演示
微机系统与接口技术
7
2.2.3 存储器寻址方式
操作数在主存储器中,用主存地址表示 程序设计时,8088采用逻辑地址表示主存地址
段地址在默认的或用段超越前缀指定的段寄存器中 指令中只需给出操作数的偏移地址(有效地址EA)
8086设计了多种存储器寻址方式 1、直接寻址方式 2、寄存器间接寻址方式 3、寄存器相对寻址方式 4、基址变址寻址方式 5、相对基址变址寻址方式
微机系统与接口技术
1
指令的组成 操作码 操要执行哪种操作,如传送、运算、 移位、跳转等操作,它是指令中不可缺少的组成部 分 操作数是指令执行的参与者,即各种操作的对象 有些指令不需要操作数,通常的指令都有一个或两 个操作数,也有个别指令有3个甚至4个操作数
微机系统与接口技术
14
相对寻址方式中的位移量
在寄存器相对和相对基址变址寻址方式中,其位
移量不仅可用常量表示,也可用符号表示 这个符号可以是变量名,例如 WVAR 变量,而且 支持多种表达形式 MOV AX, [DI+WVAR] ; ;等同于 MOV AX, WVAR[DI] MOV AX,[BX+SI+WVAR] ;等同于 MOV AX, [SI+WVAR] ;等同于 MOV AX, WVAR[BX+SI] ;等同于 MOV AX, WVAR[BX][SI]

微机原理第2章 习题答案

微机原理第2章 习题答案

第2章习题参考答案18086CPU由哪两部分构成它们的主要功能是什么答:8086CPU由两部分组成:指令执行部件(EU,Execution Unit)和总线接口部件(BIU,Bus Interface Unit)。

指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成。

其主要功能是执行指令。

总线接口部件(BIU)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成。

其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。

2.8086CPU预取指令队列有什么好处8086CPU内部的并行操作体现在哪里答:8086CPU的预取指令队列由6个字节组成。

按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。

:从速度上看,该指令队列是在CPU内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。

8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取并送到指令队列。

3. 8086CPU中有哪些寄存器各有什么用途答:CPU有14个内部寄存器,可分为3大类:通用寄存器、控制寄存器和段寄存器。

通用寄存器是一种面向寄存器的体系结构,操作数可以直接存放在这些寄存器中,既可减少访问存储器的次数,又可缩短程序的长度,提高了数据处理速度,占用内存空间少。

指令执行部件(EU)设有8个通用寄存器:AX:累加器,一般用来存放参加运算的数据和结果,在乘、除法运算、I/O操作、BCD数运算中有不可替代的作用BX:基址寄存器,除可作数据寄存器外,还可放内存的逻辑偏移地址CX:计数寄存器,既可作数据寄存器,又可在串指令和移位指令中作计数用DX:DX除可作通用数据寄存器外,还在乘、除法运算、带符号数的扩展指令中有特殊用途#源变址寄存器SI:多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在DS寄存器中,也可放数据目标变址寄存器DI:多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在DS寄存器中,也可放数据基址指针BP:用于存放内存的逻辑偏移地址,隐含的逻辑段地址在SS寄存器中堆栈指针SP:用于存放栈顶的逻辑偏移地址,隐含的逻辑段地址在SS寄存器中控制寄存器包括指令指针寄存器IP和标志寄存器FLAG:IP用来指示当前指令在代码段的偏移位置。

微机原理2-2

微机原理2-2
EQ、NE、GT、LT、GE、LE 例: OP1 NE OP2 若关系成立,结果为0FFFFH。反之,为0000H。
接着判断FLAG寄存器中CF和ZF标志进行分支转移。
《微机原理与接口技术》教学课件 7
2) 修改属性运算符
使用格式
类型说明符 PTR 地址表达式
P.81
使用说明
若(DS)=2000H,(BX)=1000H,(210001H)=02H MOV byte ptr [BX],5
Buf2 dw 1234H,5678H,9000H
思考:
Dseg Ends ,
1. Buf1中10H元素的偏移地址为 2. Buf1中10H元素的物理地址为
Buf2中第一个元素的低8位34H的偏移地址为
, Buf2中第一个元素的低8位34H的物理地址为
《微机原理与接口技术》教学课件


25
⑤ 程序结束伪指令( End )
《微机原理与接口技术》教学课件 21
② 段分配(约定)伪指令( Assume )
格式:Assume 段寄存器:段名 [, 段寄存器:段名 ,···] ···
P.77
功能:说明源程序中定义的段由哪个段寄存器去寻址。
应用:数据段用DS,代码段用CS,堆栈段用SS,附加段用ES。
应用举例:
段定义 Cseg Segment ‘code’ Assume CS:Cseg , SS:Sseg, DS:Dseg (段体:程序设计) Cseg Ends
通常使用‚缺省‛参数。
《微机原理与接口技术》教学课件 20
类别
数据段 —— ‘Data’ 代码段 —— ‘Code’ 堆栈段 —— ‘Stack’
P.76

微机原理第2章课后答案

微机原理第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)基址寄存器。

微机原理第2章作业及答案

微机原理第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)基址寄存器。

微机原理作业2--答案

微机原理作业2--答案

作业二的答案1.8086存储器为什么要采用分段结构,每段的容量有什么要求,为什么?答:8086CPU拥有20位的地址总线,可访问的最大存储容量为1MB,其物理地址的范围为:00000H~FFFFFH;而8086CPU的内部的寄存器只有16位,能访问最大存储空间为64KB,物理地址范围为:0000H~FFFFH。

采用分段管理的办法可扩大对存储器的寻址范围,以适应超过16位的存储器物理结构。

于是将1MB存储器空间分成许多逻辑段,并规定逻辑段不超过64KB,只能从低4位为0000B的地址开始。

这样每个存储单元就可以用“段地址:偏移地址”的逻辑地址来表示其准确的物理位置,而且段地址和偏移地址就都可以用16位寄存器表达。

2.8086系统中,段寄存器CS=1200H,指令指针寄存器IP=FF00H,试写出指令的逻辑地址和物理地址,指向这物理地址的CS值和IP值是唯一的吗?答:逻辑地址1200H:FF00H物理地址1200H×16 + FF00H =12000H + FF00H =21F00H指向这个物理地址的CS值和IP值不是唯一的。

例如:CS=2100H,IP=0F00H。

3.8086的1MB分成两个512KB存储体的好处是什么?8088的1MB为什么不分?答:8086的1MB分成两个512KB存储体的好处就是CPU既可以单独对其中的一个存储体读/写8位数据,也可以对两个存储体中相邻的单元读/写16位数据。

也就是说8086CPU 既能进行字节操作也能进行字操作。

8088CPU的1MB存储器没有必要划分成两个512KB的存储体,是因为它的数据总线宽度为8位,在一个总线周期里不能进行16位的数据读写。

4.若当前SS=3500H,SP=0800H,请写出堆栈段在存储器中的物理地址范围。

若此时入栈10个字节,SP的内容是什么?若再出栈6个字节,SP为什么值?答:堆栈在存储器里的起始物理地址为3500H×10H+0000H=35000H,堆栈段的容量为64KB,所以栈底的物理地址为3500H×10H + FFFFH=35000H + FFFFH = 44FFFH,所以堆栈段在存储器里的物理地址范围为35000H~44FFFH。

微机原理课件第二章 8086系统结构

微机原理课件第二章 8086系统结构

但指令周期不一定都大于总线周期,如MOV AX,BX
操作都在CPU内部的寄存器,只要内部总线即可完成,不 需要通过系统总线访问存储器和I/O接口。
2021/8/17
17
• 8086CPU的典型总线时序,充分体现了总 线是严格地按分时复用的原则进行工作的。 即:在一个总线周期内,首先利用总线传 送地址信息,然后再利用同一总线传送数 据信息。这样减少了CPU芯片的引脚和外 部总线的数目。
• 执行部件(EU)
• 功能:负责译码和执行指令。
2021/8/17
5
• 联系BIU和EU的纽带为流水指令队列
• 队列是一种数据结构,工作方式为先进先出。写入的指令 只能存放在队列尾,读出的指令是队列头存放的指令。
2021/8/17
6
•BIU和EU的动作协调原则 BIU和EU按以下流水线技术原则协调工作,共同完成所 要求的任务: ①每当8086的指令队列中有空字节,BIU就会自动把下 一条指令取到指令队列中。 ②每当EU准备执行一条指令时,它会从BIU部件的指令 队列前部取出指令的代码,然后译码、执行指令。在执 行指令的过程中,如果必须访问存储器或者I/O端口, 那么EU就会请求BIU,完成访问内存或者I/O端口的操 作; ③当指令队列已满,且EU又没有总线访问请求时,BIU 便进入空闲状态。(BIU等待,总线空操作) ④开机或重启时,指令队列被清空;或在执行转移指令、 调用指令和返回指令时,由于待执行指令的顺序发生了 变化,则指令队列中已经装入的字节被自动消除,BIU会 接着往指令队列装入转向的另一程序段中的指令代码。 (EU等待)
•CF(Carry Flag)—进位标志位,做加法时最高位出现进位或 做减法时最高位出现借位,该位置1,反之为0。

微机原理第2章答案

微机原理第2章答案

第2章习题参考解答1.8086处理器内部一般包括哪些主要部分?8086处理器与其他处理器一样,其内部有算术逻辑部件、控制与定时部件、总线与总线接口部件、寄存器阵列等。

按功能结构可分为两部分,即总线接口单元(BIU)与执行单元(EU)。

BIU主要包括段寄存器、内部通信寄存器、指令指针、6字节指令队列、20位地址加法器和总线控制逻辑电路。

EU主要包括通用寄存器阵列、算术逻辑单元、控制与定时部件等。

2.什么是总线? —般微机中有哪些总线?所谓总线是指电脑中传送信息的一组通信导线,它将各个部件连接成—个整体。

在微处理器内部各单元之间传送信息的总线称为片内总线;在微处理器多个外部部件之间传送信息的总线称为片外总线或外部总线。

外部总线又分为地址总线、数据总线和控制总线。

随着电脑技术的发展,总线的概念越来越重要。

微机中常用的系统总线有PC总线、ISA总线、PCI总线等。

3.什么是堆栈?它有什么用途?堆栈指针的作用是什么?堆栈是一个按照后进先出的原则存取数据的部件,它是由栈区和栈指针组成的。

堆栈的作用是:当主程序调用子程序、子程序调用子程序或中断时转入中断服务程序时,能把断点地址及有关的寄存器、标志位及时正确地保存下来,并能保证逐次正确地返回。

堆栈除了有保存数据的栈区外,还有一个堆栈指针SP,它用来指示栈顶的位置。

假设是“向下生成”的堆栈,随着压入堆栈数据的增加,栈指针SP的值减少。

但SP始终指向栈顶。

4.在8086 CPU中,FR寄存器有哪些标志位?分别说明各位的功能。

8086 CPU中设置了一个16位的标志寄存器FR,其中用了9位,还有7位保留。

9位中有3位作为控制标志,6位作为状态标志。

IF:中断控制标志。

当IF=1时,允许可屏蔽中断请求;当IF=0时,禁止可屏蔽中断请求。

TF:单步运行标志。

当TF=1,单步运行;TF=0,连续运行程序。

DF:方向标志。

当DF=0,串操作时地址按增量修改;DF=1,地址按减量修改。

微机原理第1-2章练习

微机原理第1-2章练习

练习19 工作在最小模式读操作时, 、 练习19 工作在最小模式读操作时,RD、
ALE、 DT/R引脚信号 , 开始有效的次序依 、 引脚信号, 引脚信号 、 、 次为___________________。 次为 DT/R、ALE、RD 。
练习20 练习20 在 8086的数据操作中 与总线宽度有 的数据操作中,与总线宽度有 的数据操作中
练习13 存储器写周期中,数据开始的状态 练习13 存储器写周期中,
和段寄存器依次属于____。 是_____, IP和段寄存器依次属于 和段寄存器依次属于 。 T2 A)EU、BIU 、 B)BIU、BIU BIU、BIU 、 B) 、 C) EU、EU 、 D) BIU、EU 、
练习14 在最小模式下,执行 练习14 在最小模式下 执行“OUT DX, AL” 执行“
指令时, 指令时,M/IO, WR, RD, DT/R的状态分别是 的状态分别是 0, 0, 1,。 1 _______。 练习15 工作在最大模式时 , 练习15 工作在最大模式时, 经总线控制 器 8288将对应 将对应CPU最小模式时的三个引脚状 最小模式时的三个引脚状 将对应 态进行组合,产生控制和命令信号, 态进行组合 , 产生控制和命令信号 , 这三个 引脚应为________。 引脚应为 。
练习2 练习2 填空题
• 8086工作在最小模式下,控制数据流方向 8086工作在最小模式下, 工作在最小模式下 的信号是 M/IO 、 RD 、 WR 、 DT/R、 DEN 。 RQ/GT0、RQ/GT1是 请求/ RQ/GT0、RQ/GT1是 请求/允许 总线访问控制 信号, 应用而设计的。 信号,它是为 多处理器 应用而设计的。 假设8086 8086微机内存中某一物理地址为 假设8086微机内存中某一物理地址为 23456H, 23456H,其逻辑地址可表示为 2345: 2345: 0006H 、或 2300H :0456H

微机原理习题2参考答案

微机原理习题2参考答案

习题2参考答案2.1 8086 CPU共有哪些16位寄存器?其中哪些16位寄存器可分为二个8位寄存器来使用?参考答案:8086 CPU共有AX、BX、CX、DX、SI、DI、SP、BP、IP、FLAGS、CS、DS、ES、SS共14个16位的寄存器。

其中AX、BX、CX、DX可分为二个8位寄存器来使用2.2 简述8086 CPU各通用寄存器的主要功能?参考答案:8086 CPU包含AX、BX、CX、DX、SI、DI、SP、BP共8个通用寄存器。

其中AX主要用在字的乘、除法,输入/输出指令中;BX主要在寄存器间接寻址和XLAT指令中作基址寄存器使用;CX主要在串操作指令和LOOP指令中作计数器使用;DX主要在字的乘除法指令和输入/输出指令中使用;SI主要在字符串操作指令中作源变址寄存器使用;DI主要在字符串操作指令中作目的变址寄存器使用;SP主要在堆栈操作中作堆栈指针使用;BP主要在寄存器间接寻址中作基址指针使用。

2.3 8086 CPU的标志寄存器有几个状态标志位?几个控制标志位?它们各自的含义和作用是什么?在Debug环境下,对应的用什么符号来表示之?参考答案:8086 CPU的标志寄存器有6个状态标志位,有3个控制标志位。

其中CF进位标志位主要用来反映运算结果是否产生进位或借位,如果运算结果的最高位向前产生了一个进位(加法)或借位(减法),则其值为1,否则其值为0;PF奇偶标志位用于反映运算结果中低8位含有“1”的个数的奇偶性,如果“1”的个数为偶数,则PF 的值为1,否则为0;AF辅助进位标志位表示加法或减法运算结果中D3位向D4位产生进位或借位的情况,有进位(借位)时AF=1;无进位(借位)时AF=0;ZF零标志位用来反映运算结果是否为0,如果运算结果为0,则其值为1,否则其值为0;SF用来反映运算结果的符号位,当运算结果为负数时,SF的值为1,否则其值为0;OF溢出标志位用于反映带符号数运算所得结果是否溢出,如果运算结果超过当前运算位数所能表示的范围,则称为溢出,OF的值被置为1,否则,OF的值被清为0。

微机原理第二章8086微处理器

微机原理第二章8086微处理器
▪ 表面上看来,微处理器的外部就是数量有限的输入输出 引脚。但是,正是依靠这些引脚与其它逻辑部件相连接, 才能组成多种型号的微型计算机系统。
▪ 这些引脚就是微处理器级总线。微处理器通过微处理器 级总线沟通与外部部件和设备之间的联系。这些总线及 其信号必须完成以下功能:
▪ (1)和存储器之间交换信息; ▪ (2)和I/O设备之间交换信息; ▪ (3)为了系统工作而接收和输出必要的信号,如输入
▪ 时钟信号输入端。19 CLK(输入) ▪ 8086和8088为5MHz。 ▪ 8086/8088的CLK信号必须由8284A时钟发生器产生。 ▪ 微处理器是在统一的时钟信号CLK控制下,按节拍进行
工作的。
2021/6/12
16
8086/8088微处理器——微处理器的引脚功能
▪ 工作方式控制线 33
指令执行示例
2021/6/12
1
第二章:8086/8088微处理器
1. 微处理器ห้องสมุดไป่ตู้结构 2. 微处理器的内部寄存器 3. 微处理器的引脚功能 4. 微处理器的存储器组织 5. 最大模式和最小模式 6. 微处理器的时序
2021/6/12
2
2021/6/12
▪ 存储器分段
▪ 由于CPU内部的寄存器都是16位的,为了
2021/6/12
7
第二章:8086/8088微处理器
1. 微处理器的结构 2. 微处理器的内部寄存器 3. 微处理器的引脚功能 4. 微处理器的存储器组织 5. 最大模式和最小模式 6. 微处理器的时序
2021/6/12
8
8086/8088微处理器——微处理器的引脚功能
▪ 一、微处理器的外部结构
时钟脉冲、复位信号、电源和接地等。

微机原理及应用练习题-2

微机原理及应用练习题-2

微机原理及应用练习题-2微机原理及应用练习题一、填空题1.设机器字长为8位,根据给出的不同形式的机器数,计算其对应的十进制表示的真值,填入下表中。

机器数(若为)无符号数(若为)原码(若为)反码(若为)补码10010010146 —18 —109—1102.8086微处理器包含4个专用寄存器,其中堆栈指针寄存器SP 和堆栈基址指针BP寄存器一般与堆栈段寄存器SS连用,用以确定堆栈段中某一存储器单元的地址;而SI和目的变址DI 寄存器一般与数据段寄存器DS连用,用以确定数据段中某一存储器单元的地址。

3.8086微处理器的组成包括两部分,执行程序时,BIU(总线接口)部件负责将指令代码从内存取到指令队列中;EU(执行)单元负责分析并执行指令。

4.8086微处理器进行复位操作时,代码段寄存器的内容为:(CS)= 0FFFF H,指令指针寄存器的内容为:(IP)= 0000 H。

5.若假设(AX)=0FDAAH,(BX)=0FBCFH,则执行指令ADD AX,BX 之后,(AX)= 0F979H,(BX)= 0FBCF H,标志位OF、AF、CF 的状态对应为0 、 1 和1。

6.若TAB为数据段中0032H单元的符号地址,其中存放的内容为1234H,则执行:MOV AX,TAB指令后,AX中的内容为1234 H。

7.若(DS)= 7500H,数据段的长度为64KB,则当前数据段的起始地址为75000H,末地址为84FFF H 。

8.假设(SP)=1000H,(AX)=2000H,(BX)=3000H,试问:(1)执行PUSH AX 指令后,(SP)= 0FFE H;(2)再执行PUSH BX和POP AX 指令后,(SP)= 0FFE H,(AX)= 3000H,(BX)= 3000 H 。

9. 若8086的时钟频率为5MHz,其时钟周期为200 ns。

10. 一个完整的计算机系统包括硬件系统和软件系统两大部分。

微机原理第8章-2

微机原理第8章-2

中断服务程序: … IN AL ,DX ; 送输出允许OE信号,送数字 量到AL中 … IRET
2
数/模(D/A)转换
主程序:

MOV CX,8 ;一次循环采样,共8个通道 MOV DX,380H ;选择A/D通道0 MOV AL,0 ; 为第一次监测置初值 AGAIN:OUT DX,AL ;送START启动信号,锁定模拟输入地址 HLT ; 暂停,等待中断即EOC变高 CMP AL, 0F0H ;模拟值与0F0H比较 JA OVER ; 超限,转移到OVER INC DX ; 选择A/D通道1 LOOP AGAIN ; 中断结束后开始采样通道1 … OVER: …
启动转 换脉冲 时钟 脉冲
转换结 束信号
输出允 许信号
⑷控制逻辑与时序— 控制芯片的工作并提供转换所需的时序。
2、ADC0809引脚功能
⑴IN0~IN7— 8路模拟电压输入; ⑵ ALE — 地址锁存信号; ⑶ ADDA/B/C— 8路地址线; ⑷ D0~D7— 8位数字信号输出; ⑸CLK— 时钟信号(10K~1.2M); ⑹ VREF—基准电压,VREF(+) 接VCC,VREF (-)接地;

A/D转换器ADC完成模拟量→数字量的转换, D/A转换器DAC完成数字量→模拟量的转换。
模拟输入输出系统

1) 传感器

传感器是用于将工业生产现场的某些非电物理量转 换为电量(电流、电压)的器件。例如,热电偶能够 将温度这个物理量转换成几毫伏或几十毫伏的电压 信号,所以可用它作为温度传感器;而压力传感器 可以把物理量压力的变化转换为电信号,等等。 一般来讲,传感器输出的电信号都比较微弱,有些 传感器的输出甚至是电阻值、电容值等非电量。为 了易于与信号处理环节衔接,就需要将这些微弱电 信号及电阻值等非电量转换成一种统一的电信号, 变送器就是实现这一功能的器件。它将传感器的输 出信号转换成0~10 mA或4~20 mA的统一电流信号 或者0~5 V的电压信号

微机原理实验二 8255A并行接口应用

微机原理实验二 8255A并行接口应用

实验二8255A并行接口应用一、实验目的1.掌握8255A的功能及方式0、1的实现2.熟悉8255A与CPU的接口,以及传输数据的工作原理及编程方法。

3.了解七段数码管显示数字的原理。

4.掌握同时显示多位数字的技术。

二、8255应用小结1.8255的工作方式一片8255内部有3个端口,A口可以工作在方式0、方式1或方式2,B口可以工作在方式0、方式1,C口可以工作在方式0。

方式0是基本型输入/输出。

这种方式和外设交换数据时,8255端口与外设之间不使用联络线。

方式1为选通型输入/输出。

用这种方式和外界交换数据时,端口和外设之间要有联络信号。

方式2是双向数据传送,仅A口有这项功能。

当A口工作在方式2时,B口仍可以工作在方式0或方式1,但此时B口方式1只能用查询方式与CPU交换信息。

2. 工作方式选择字8255工作方式选择字共8位(如图),存放在8255控制寄存器中。

最高位D7为标志位,D7=1表示控制寄存器中存放的是工作方式选择字,D7=0表示控制寄存器中存放的是C口置位/复位控制字。

3.C口置/复位控制字8255的C口可进行位操作,即:可对8255C口的每一位进行置位或清零操作,该操作是通过设置C口置/复位字实现的(图8-10)。

C口置/复位字共8位,各位含义如下:3.8255A的控制信号与传输动作的对应关系4.命令字与初始化编程8255有两个命令字,即方式选择控制字和C口置0/置1控制字,初始化编程的步骤是:①向8255控制寄存器写入“方式选择控制字”,从而预置端口的工作方式。

②当端口预置为方式1或方式2时,再向控制寄存器写入“C口置0/置1控制字”。

这一操作的主要目的是使相应端口的中断允许触发器置0,从而禁止中断,或者使相应端口的中断允许触发器置1,从而允许端口提出中断请求。

注意:“C口置0/置1控制字”虽然是对C口进行操作,但是该控制字是命令字,所以要写入控制寄存器,而不是写入C口控制寄存器。

微机原理第二章习题答案

微机原理第二章习题答案

1. 8086CPU内部由哪两部分组成?它们的主要功能?8086CPU由指令执行部件EU和总线接口部件BIU两部分组成。

EU完成指令译码和指令执行的工作,BIU是CPU与外部(存储器和I/O口)的接口,它提供了16位双向数据总线和20位地址总线,完成所有的外部总线操作。

具有地址形成、取指令、指令排队、读/写操作数、总线控制等功能。

2.8080CPU中有哪些寄存器?各有什么用途?答:8086CPU的寄存器有通用寄存器组、指针和变址寄存器、段寄存器、指令指针寄存器及标志位寄存器PSW。

4个16位通用寄存器,它们分别是AX,BX,CX,DX,用以存放16位数据或地址。

也可分为8个8位寄存器来使用,低8位是AL、BL、CL、DL,高8位是AH、BH、CH、DH,只能存放8位数据,不能存放地址。

指针和变址寄存器存放的内容是某一段内地址偏移量,用来形成操作数地址,主要在堆栈操作和变址运算中使用。

段寄存器给出相应逻辑段的首地址,称为“段基址”。

段基址与段内偏移地址结合形成20位物理地址。

指令指针寄存器用来存放将要执行的下一条指令在现行代码中的偏移地址。

16位标志寄存器PSW用来存放运算结果的特征,常用作后续条件转移指令的转移控制条件。

3.8086CPU与8088CPU的主要区别是什么?答:(1)8086的指令队列是6字节,8088是4字节;(2)8088与外部交换数据的总线宽度是8位,所以,对16位数的存储器读/写需要2个总线周期,8086是16位;AD~(3)8088外部数据总线只有8条,所以分时复用的地址/数据总线为7AD;(4)8088中,用IO/M信号代替M/IO;(5)8088中,不需要BHE信号。

4. 简要解释下列名词的意义。

CPU:中央处理单元CPU (Control Processing Unit)也称微处理器,是微型计算机的核心部件,由运算器ALU、控制器、寄存器组以及总线接口等部件组成。

主要完成各种运算,负责对整机的控制。

003_微机原理-指令系统_2

003_微机原理-指令系统_2

MOV DS, AX
不影响标志位
3.3 指令系统—换码指令
指令书写格式: XLAT
指令执行的操作:
(AL)←((DS:BX+AL)) 查表操作,将BX指定的缓冲区中、AL指定的位移处的一个字节数 据取出赋给AL
指令说明
操作数隐含使用基地址寄存器BX与AL寄存器 换码指令执行前,在主存建立一个字节量表格,内含要转换的目 的码字,表格首地址存放于BX,AL存放相对表格首地址的位移量 换码指令执行后,指令将AL寄存器的内容转换为目标码字,因为 偏移量AL为8位,表格长度≤256字节 不影响标志位
数据传送指令 算术运算指令 逻辑运算和移位指令 串操作指令
控制转移指令
处理器控制指令
3.3 指令系统-通用数据传送指令
指令书写格式: MOV dst, src
指令执行的操作:(dst)←(src) 指令说明
操作数类型:立即操作数,寄存器操作数,存储器操作数 立即操作数不能作为目的操作数DST 错误:MOV 30H, AL 两个操作数也不能同时为存储器操作数 错误: MOV [DI+100H], [SI+200H]
dst为目的操作数,操作数类型可为寄存器操 作数或存储器操作数 cnt为移位次数,可为立即数1,或由寄存器 CL指定 SHL、SHR和SAL指令影响标志位CF和OF, cnt=1时,SHL与SAL移位后的最高位和CF不 同,则OF=1;SHR,OF=移位前最高位 SAR指令影响标志位CF、OF、PF、SF、ZF, AF不确定;
; 测试AL中数据的奇、偶
3.3 指令系统-移位指令
逻辑左移指令: SHL dst, cnt 算术左移指令: SAL dst, cnt

西南交大 微机原理及应用 第二章 答案

西南交大 微机原理及应用  第二章  答案

微机原理第二章习题答案2-1.解释下列概念:(1)分时复用总线——不同的时刻通过相同的总线引脚传送不同的信息(2)逻辑地址——程序员在程序中使用的地址。

(3)物理地址——又称实际地址PA,是CPU和存储器进行数据交换时所采用的地址。

(4)字地址——如果存放16位的字数据,则需要占用连续的两个单元,其中数据的高8位存放在地址较大的单元,低8位存储在地址较小的单元,并以该单元的值作为该子数据的字地址。

(5)字节地址——8086系统地址总线有20条,内存空间都按字节组织,每个内存单元存储一个字节的数据,并具有一个唯一的20位地址编号,称为字节地址。

(6)规则字——对于16位字数据,若其字地址为偶数,即从地址为偶数的单元开始存放,则称该字数据为规则字。

(7)非规则字——若其字地址为奇数,即从地址为奇数的单元开始存放,则称该字数据为非规则字。

(8)指令周期——执行一条指令所需要的时间称为指令周期。

总线周期——CPU每占用一次系统总线,进行信息的输入输出所需要的时间就成为总线周期。

时钟周期——2-2. 简述8086/8088采用的重叠解释方式对指令和程序的解释过程及其特点。

在8086系统中,为了加快程序的执行速度,采用了重叠解释方式,各条指令的解释过程是重叠进行的。

每条指令的解释过程也包括取指令和执行指令两个阶段,但是相邻两条指令的解释过程有一部分是同时进行的。

在执行一条指令时,可以同时取出下一条指令。

在当前指令执行完毕后,就可以立即制行下一条指令。

这种重叠解释方式大大加快了程序的执行速度。

2-3.简述8086CPU内部组成以及EU和BIU的作用。

8086微处理器内部配分为两个独立的功能部件:执行部件EU和总线接口部件BIU。

执行部件由通用寄存器、标志寄存器、算术逻辑单元和EU控制系统等组成,专门负责指令的执行,即从指令队列缓冲器中获得指令,然后执行该指令,完成指令规定的操作。

总线接口部件由段寄存器、指令指针、地址形成逻辑、总线控制逻辑和指令队列缓冲器等组成。

微机原理2-1:8088CPU内部结构、寄存器组、存储器组织

微机原理2-1:8088CPU内部结构、寄存器组、存储器组织

栈段和附加段。
段寄存器即是存放各个逻辑段段首地址的寄 存器。
23
存储器的分段管理


8088有20条地址线, 20=1MB, 最大可寻址空间为 2 可寻址的地址范围为 00000H~FFFFFH 该地址称物理地址 硬件用 20位的物理地址来对存储单元进行寻 址
24
存储器的分段管理


由于 8088 中的地址寄存器都是 16 位的,用 户不能直接使用20位的物理地址,编程时需 要使用逻辑地址来寻址存储单元。 物理地址 14700H 逻辑地址由两个16位数构成,其形式为: 逻辑地址 1460H:100H 段的起始地址 : 段内的偏移地址 (16位段地址) :( 16位偏移量)
分隔符
7
②指针和变址寄存器 共BP、SP、SI、DI四个 BP:基址指针寄存器Base Pointer ,默认表示
堆栈段基地址;
SP:堆栈指针寄存器Stack Pointer,指示栈顶 SI:源变址寄存器Source Index DI:目的变址寄存器Destination Index
8
2、标志寄存器 标志寄存器( FR )是 一个 十六位的 寄存器,但只利用了其中的9位:六个条 件标志和三个控制标志。

CLI 指令复位中断标志:IF=0
STI 指令置位中断标志:IF=1
20
陷阱标志TF(Trap Flag)


用于控制处理器是否进入单步执行方式: 设置TF=0,处理器正常工作; 设置 TF=1,处理器每执行一条指令就中断一次, 中断编号为 1 (称单步中断), TF 也被称为单 步标志。 单步执行和单步调试
注意: PF 标志仅反映最低 8 位中“ 1 ”的个数
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中断源识别
获取向量
保护硬件现场
中 断 处 理 关中断 保护断点 获取中断服 务程序地址
关中断
恢复硬件现场 恢复断点 中断返回
三、8086中断系统
1、中断类型
8086 能 处 理 256 种 中 断,分为两大 类:外部中断 和内部中断。 其中断分类如 右图
INT n 指令 非屏蔽中断请求
NMI INTR
DB
E
中断确认 菊花链 逻辑电路
IREQ
&
=1
≥1 INTAout
INTAin
INTR
3)中断响应处理
响应中断的条件
在每条指令的最后一个时钟周期,CPU检测 INTR或NMI信号。若以下条件成立,则CPU 响应中断: 对INTR,CPU被允许中断,即IF=1;
当前指令执行完。对INTR,还应满足以下条件
7 4 L S 2 4 5
CS
INTA 接CPU的D7~D0
2.2)中断判优
多个中断源产生中断,CPU首先为谁服务? ——中断优先级排队问题。 中断优先级的控制方法 硬件判优——链式判优、并行判优(中断向量法) 软件判优——顺序查询中断请求,先查询的先服 务(即先查询的优先级别高) 通常将中断判优与中断源识别合并在一起进行处理。 x86系统中,这项任务由PIC8259和CPU共同完 成。
6.4
中断技术
中断基本概念 中断的一般过程 8086/8088中断系统
8259介绍
中断(回顾)
引起CPU中断的事件——中断源。例如:
数据传送——请求输入输出数据,报告故障等 事故处理——掉电、硬件故障、软件错误、非法操作、 定时时间到等
中断源分为:外部中断、内部中断
内部中断:CPU内部执行程序时自身产生的中断 外部中断:CPU以外的设备产生的中断(数据传送)
的程序,转去处理突然发生 的事件(执行中断服务程 序),处理完毕,再返回原 来被中止的程序继续运行。
中断示意图
中断服 务程序
返 回
外部中断引起的数据交换!
二、中断过程
五个步骤:
中断请求 中断识别和判优 中断响应处理 中断服务 中断返回 以下以外部中断为主介绍这五个步骤。
1)中断请求
外设接口(中断源)发出中断请求信号,送到CPU 的INTR或NMI引脚;
例2
CLI MOV AX,0 MOV DS,AX MOV SI, n*4 MOV AX,OFFSET INT_VCE MOV [SI],AX MOV AX, SEG INT_VCE MOV [SI+2],AX STI …… ;关中断
;置附件段基地址为0 ;假设中断类型号为N ;置中断程序首地址的偏移量到AX ;填偏移量到中断地址表 ;置中断程序的段基地址到AX ;填段基地址到中断地址表 ;开中断
3 中断向量表的初始化
初始化——将中断服务程序的入口地址放入 向量表 例:中断类型码为48H的中断处理子程序的 名字为int48h,编写程序段将该中断处理子程 序的入口地址放入向量表。
若外设的中断类型号为6BH,设中断服务程序段 地址是1000H,偏移地址为2000H。设置中断向 量表
例1 若外设的中断类型号为6BH,则此中断类型 号对应的中断矢量表地址为从00lACH开始的四 个存储单元.设中断服务程序段地址是1000H, 偏移地址为2000H。
8086/8088的外部中断信号:INTR、NMI
INTR——可屏蔽中断请求,高电平有效,受IF标志的控 制。执行完当前指令后CPU对它作出响应INTA 。 NMI——非屏蔽中断请求,上升沿有效,任何时候CPU 都要响应此中断请求信号。
一、中断基本概念
1. 实 现 CPU 与 外 设 的 并 行 工 作 , 提 高 了 CPU 的效率。
中断请求信号:边沿请求,电平请求 例如,NMI为边沿请求,INTR为电平请求
中断请求信号应保持到中断被处理为止; CPU响应中断后,中断请求信号应及时撤销。
2.1)中断源识别和判优
计算机中的中断源有很多,CPU必须识别是 哪一个设备产生中断。识别中断源有两个方 法:1、软件查询(查询中断)。
IN AL.IPORT TEST AL,80H JNZ SEVO TEST AL.40H JNZ SEVl TEST AL.20H JNZ SEV2 TEST AL.10H JNZ SEV3
完成当前指令 内部中断 N NMI Y Y Y Y IF=1 N
8086/8088的中断响应过程
N INTR
N TF=1 N 执行下一条指令
Y 响应中断 读类型码
标志入栈 令TEMP=TF
执行服务程序 CS、IP出栈 标志出栈
IF、TF=0 CS、IP入栈 调服务程序 又有NMI N TEMP=1 Y
链式判优电路原理图(教材图6.18)
外设1 CPU 外设接口1
IREQ 中断确认 菊花链 逻辑电路 中断确认 菊花链 逻辑电路
外设2 外设接口2
IREQ
外设3 外设接口3
IREQ
中断确认
INTAin 菊花链 逻辑电路
INTA
INTAin
INTAin
INTR
≥1

菊花链逻辑电路
外设接口
三态门 中 断 向 量 码
外 设 准 备 数 据 主 程 序 输入 数据 中 断 服 务 程 序
输入状态信息 N READY? Y 输入数据
外设请求 中断 INTR有效
查询方式的数据输入
中断方式的数据输入
2 中断定义
所谓中断,是指这样一 个过程:当CPU正在执行程序 过程中,由于某一突然事件 中断申请 主 程 序
的发生,暂时中止正在执行
• 当前指令是STI和IRET,则下条指令也要执行完。
无总线请求。 (HOLD)信号和复位(RESET) 。
------若NMI和 INTR 同时发生,则首先响应NMI。
3)中断响应处理(续)
CPU中断响应时,要做下述五项工作:
向中断源发出INTA中断响应信号;获得向量。 硬件现场保护FR(FLAGS)(IF=1) 关中断IF=0; 断点保护和CS、IP。这主要是保证中断结束后 能返回被中断的程序。 获得中断服务程序首地址(入口)。

软件中断的类型码由指令给出 可屏蔽中断的类型码由8259或硬件给出
与中断有关的控制线为:NMI、INTR、INTA# 8088系统的中断源
内部中断
• • • • • 除法溢出:类型号0,商大于目的操作数所能表达的范围时产生。 单步中断:类型号1,TF=1时产生(当前指令需执行完) 断点中断:类型号3,这是一个软件中断,即INT 3指令。 溢出中断:类型号4,这是一个软件中断,即INTO指令。 软件中断:即INT n指令,类型号n(0-32)。
中断类型号和中断服务子程序的入口地 址之间的关系: 内存
中断类 型号n 0000:4n+0 0000:4n+1 0000:4n+2 0000:4n+3 00 10 00 20 IP 1000 2000 CS
×4

INT 12H在中断矢量表中的物理地址? INT 8中断服务程序首地址在中断矢量表中的物理地址? 48H 20H
如何得到中断处理程序的首地址? • 固定入口法----单片机 • 中断向量法——常用
4)中断服务(中断服务)
中断服务子程序特点
为”远”过程或“过程”(类型为FAR或NEAR) 要用IRET指令返回
中断服务子程序要做的工作
保护现场(PUSH reg’s) 开中断(STI) 进行中断处理 关中断(CLI) 恢复现场(POP reg’s) 中断返回(IRET)
NM I
返回被中断程序
N
Y
单步
当开关闭合一次时,在数码管显示“1”;当开关没 有闭合时,数码管显示“0”。
查询方式相应程序段如下: MOV DX, 0F0H MOV AL, 3FH OUT DX, AL MOV DX, 0F1H LOP: IN AL, DX TEST AL, 01 Jz LOP MOV AL, 06H MOV DX, 0F0H OUT DX, AL JMP $ ;数据接口的地址为F0H
2
中断逻辑

4
1
0
中断 控制系统 (8259A)
可屏蔽 中断请求
断点
INTO 指令
单步 除数为 中断 0中断 …
软件中断 硬件中断
8086的中断分类
中断矢量的获取? 8088系统采用中断类型码来识别不同的 中断源,每个中断源都有一个与它相对应 的中断类型码 。

溢出、断点、除法溢出、单步、非屏蔽中断 的类型码为固定值
CLI MOV MOV MOV MOV MOV MOV STI
AX,,0 DS,AX AX,2000H [6BH*4], AX AX.1000H [6BH*4+2l, AX
;置数据段段基地址为0 ;对偏移地址为01AC的单元 ;送双字
中断向量表的初始化
CLI MOV MOV MOV MOV MOV MOV MOV STI AX,0 DS,AX SI,48H*4 AX,OFFSET int48h [SI],AX AX,SEG int48h [SI+2],AX
1、内部中断可以预测(除法中断除外)
2、内部中断不受IF的影响
3、内部中断不需要执行从外部获得矢量 (处理4步)
中断向量统一管理
2、中断向量表:中断服务子程序的入口地址
从00000H到003FFH区 域,大小为1K空间,共 256个中断向量。
每个入口地址占用4个 字节,低字为段内偏移, 高字为段基址 根据中断类型号获得 中断服务程序入口= 4×n 。
外部中断
• 非屏蔽中断NMI:类型号2,不可用软件屏蔽,CPU必须响应它。 • 可屏蔽中断INTR:类型号由PIC提供。IF=1时CPU才能响应。
相关文档
最新文档