微机原理与接口技术第二章讲解

合集下载

【学习课件】第二章微机原理与接口技术

【学习课件】第二章微机原理与接口技术

(3)、20位的地址加法器。
(4)、六字节的指令队列缓冲器。
说明:
(1)、指令队列缓冲器:在执行指令的同时,将取下 一条指令,并放入指令队列缓冲器中。CPU执行完一 条指令后,可以指令下一条指令(流水线技术)。提 高CPU效率。
(2)、地址加法器:产生20位地址。CPU内无论是段 地址寄存器还是偏移量都是16位的,通过地址加法器 产生20位地址。
AD7
09
32 /RD
AD6
10
31 HOLD(/RQ//GT0)
AD5
11
30 HLDA(/RQ//GT1)
AD4
12
29 /WR(/LOCK)
ppt课件
2
8086CPU结构图
20位
AH AL
通 BH BL 用 CH CL
寄 DH DL

SP

BP
地址加 法器
CS DS SS ES
16位 I/O
DI
IP
控制
SI
内部寄 存器
电路 外 总
线
运算寄存器 ALU
执行部分 控制电路
12 3 4 56 8位 指令队列缓冲器
标志
执行部件 ppt课件
总线接口部件
ppt课件
0-低4位向高4位无进、8借位
3、8086/8088CPU执行程序的操作过程
(1)、20位地址的形成,并将此地址送至程序存储器
指定单元,从该单元取出指令字节,依次放入指令队 列中。
(2)、每当8086的指令队列中有2个空字节,8088指 令队列中有1个空字节时,总线接口部件就会自动取指 令至队列中。
系统的最小模式:只有一8086/8088CPU。

微机原理与接口技术讲解

微机原理与接口技术讲解

PSW小结
(6)段寄存器
返回
8088有4个16位段寄存器
CS(代码段)指明代码段的起始地址 SS(堆栈段)指明堆栈段的起始地址 DS(数据段)指明数据段的起始地址 ES(附加段)指明附加段的起始地址
每个段寄存器用来确定一个逻辑段的起始地址, 每种逻辑段均有各自的用途
二.存储器组织 问题一: 寄存器、存储器 (内存)、外存都用于存储信息,为何仅讨 论CPU的存储器寻址?
符号标志S(Sign Flag )
运算结果最高位为 1,则S=1; 否则 S=0
有符号数据用最高有效位表示数据的符号 所以,最高有效位就是符号标志的状态
3AH +7CH=B6H ,最高位 D7=1:S=1 84H+7CH=(1)00H,最高位 D7=0:S=0
陷阱标志位T(Trap Flag )(单步标志位)
外部设备(接口电路)
汇编语言程序员看到的是端口( I/O地址)
微型计算机的系统组成 系统总线
CPU CPU MOV
CPU
内存 MOV AL,ES:[5678H]
CPU I/O接口 IN
AL,DL AL,56H
CPU 运算器 控制器 寄存器
内存
辅助存储器
I/O


输入设备
输出设备
返回
上次课回顾结束
第2章
每个段最大限制为64KB
内部寄存器16位如何寻 址20条地址线220=1MB?
3.物理地址和逻辑地址
用户编程时采用 逻辑地址,形式为 段地址 : 偏移地址
段寄存器内容
分隔符
有效地址 EA
例:MOV AX,ES: [0100H]
;AX←ES:[0100H]
一个存储单元具有唯一物理地址( 20位,地址 线寻址)、多个逻辑地址( 16位,编程用)

微机原理与接口技术第二章

微机原理与接口技术第二章

系统扩展接口设计 CPU一般由寄存器阵列RS、算术逻辑运算单元ALU、控制器和内部总线及 缓冲器组成。 寄存器是CPU内部的存储单元,作用是暂存需 要反复使用的数据。 寄 存 器
用寄存器 用寄存器 的 , 。 用的是 数器PC, 一 , 寄存器 的 IP, 是要 存 一 要 一 用寄存器 用寄存器用 暂存数据、 作数 。
系统扩展接口设计
注意 8个通用寄存器一般均可用来存放指令的操作数或保存运算结果,但是在某些 中又必须专用某个寄存器,如I/O操作时必须使用AX,循环指令中必须使用CX。 指针和变址实际上是相同的概念,都是存储单元地址,一般指令中用来存放存储单 元的地址可作用BX、BP、DI之一,但字符串操作指令中必须使用SI和DI,而堆栈 操作中必须使用SP来存放栈顶单元地址。 2、段寄存器 段寄存器是专用寄存器,用在存储器访问时存放段的基址。 3、控制寄存器 (1)指令指针寄存器 指令指针寄存器IP中存放着下一条要取出指令的偏移地址,它具有自动加1 功能,每取出1B的指令机器码,它就自动加1,使它指向下一个要取的内存单 元。这个寄存器由CPU内部使用,CPU正是利用此寄存器才确保程序中的指令 能依次执行。程序中不可访问此寄存器,但某些指令具有隐含改变IP的功能, 如转移、循环、调用子程序等指令。 (2)标志寄存器在其它章节详述
系统扩展接口设计
1、PC=00H,从地址00H处取一条指令。设第一条指令占2B,取出后PC自动加2。 CPU随后执行所取指令,指令操作码指出应将操作数3放入累加器A内。 2、PC=02H,从地址02H处取一条指令。设第二条指令占2B,取出后PC自动 加2。CPU随后执行刚才所取指令,指令操作码指出应将操作数5与累加器A的 内容相加,并将结果8暂存A内。 3、PC=04H,从地址04H处取一条指令。设第三条指令占2B,取出后PC自动加2 。CPU随后执行刚才所取指令,指令操作码指出应将累加器A内容与操作数1相 减,结果7暂存在A内。 4、PC=06H,从地址06H处取一条指令。设第四条指令占2B,取出后PC自动 加2。CPU随后执行刚才所取指令,指令操作码指出应将累加器A中内容保存到 操作数所指定的内存单元中。 5、PC=08H,从地址08H处取一条指令。设第五条指令占1B,取出后PC自动加 1。CPU随后执行刚才所取指令,该指令无操作数,指令操作码指出CPU应暂 停,故CPU不再往下取指令。

微机原理与接口技术-第2章(2)精品PPT课件

微机原理与接口技术-第2章(2)精品PPT课件
AL 外设数据 AL中数据转换 Flag 低字节 AH AH Flag 低字节 把Flag内容压入堆栈 把Flag内容弹出堆栈
OSZ APC 不影响 不影响 不影响 不影响 不影响 不影响 不影响 不影响
不影响 不影响 不影响
Z APC 不影响
OSZ APC
1. 通用数据传送指令
(1) 基本传送指令 MOV DST, SRC
的操作数,但CS和IP这两个寄存器不能作为目的操作数,换句 话说,这两个寄存器的值不能随意修改。
例如:
MOV CS,AX以及MOV IP,1000H是错误的。
④ 立即数不能直接送段寄存器。另外也不允许在两个段寄存器之 间直接传送信息。 例如:
MOV AX,1000H MOV DS,AX 段地址必须通过寄存器如AX寄存器送到DS寄存器。 例:MOV DS,ES ;错 应该这样: MOV AX,ES MOV DS,AX
设(DS)=3000H,(SS)=4000H,(BX)=5000H, (BP)=6000H,
则前一条指令将立即数1000H送到物理地址为46000H和46001H 的两单元中,后一条指令将立即数2000H送到物理地址为 35000H和35001H的两单元中。
⑦所有的MOV传送指令都不能改变标志。
例1: 把地址为AREA1(段内偏移量)的存储单元的内容,传 送至同一 段内的地址为AREA2的存储单元中。
(4) 段寄存器和存储单元之间(seg/M) MOV DS,[2000H] ; 将2000H和2001H两存储单元内容传到DS
(5) 立即数到通用寄存器(r/Imm) MOV SP,2000H ;将2000H送SP
(6) 立即数到存储单元(M/Imm) MOV WORD PTR [SI],4501H ;将立即数4501H送(SI)所指 的字单元

微机原理与接口技术第二章讲解

微机原理与接口技术第二章讲解
? 指令预取队列是并行流水线工作的基础
? 负责与内存或列复位,从
指定的新地址取指令,并立即传给执行单元执行。
25
结论
? 指令预取队列的存在使EU 和BIU 两个部分可同时进 行工作,从而:
? 提高了CPU 的效率; ? 降低了对存储器存取速度的要求
16
READY信号
外部同步控制输入信号,高电平有效。
17
中断请求和响应信号
? INTR:可屏蔽中断请求输入端 ? NMI : 非屏蔽中断请求输入端 ? INTA:中断响应输出端
18
总线保持信号
? HOLD :总线保持请求信号输入端。当 CPU 以外的其他设备要求占用总线时, 通过该引脚向 CPU 发出请求。
? 程序:
? 具有一定功能的指令的有序集合
? 指令:
? 由人向计算机发出的、能够为计算机所识别的命令。
5
3. 指令执行的一般过程
取指令
指令译码
读取操作数
执行指令
存放结果
取指部件,分析部件,执行部件
6
4. 顺序执行和并行流水线
? 顺序执行方式:( 8088/8086 之前的芯片)
? 各功能部件交替工作,按顺序完成指令的执行过 程。
29
数据寄存器
? 8088/8086 含4个16位数据寄存器,它们又 可分为 8个8位寄存器,即:
? AX ? BX ? CX ? DX
AH,AL BH,BL CH ,CL DH ,DL
30
数据寄存器特有的习惯用法
? AX:累加器。所有I/O指令都通过AX与接口传送 信息,中间运算结果也多放于 AX中;
? 另外,BIU 中的地址加法器用来产生20 位的物理 地址。见P44 文字叙述和图2-7 说明。

最新微机原理与接口技术第2章1PPT课件

最新微机原理与接口技术第2章1PPT课件
20
2.2.1 通用寄存器
AX、BX、CX、DX
➢ 一般用于存放参与运算的操作数或运算结果 ➢ 每个数据寄存器都是16位的,但又可将高、低8
位分别作为两个独立的8位寄存器来用。高8位分 别记作AH、BH、CH、DH,低8位分别记作AL, BL,CL,DL。 ➢ 注意,8086/8088 CPU的14个寄存器除了这4个 16位寄存器能分别当作两个8位寄存器来用之外, 其它寄存器都不能如此使用。
OF DF IF TF SF ZF
AF
PF
CF
根据功能,8086的标志可以分为两类: ➢ 状态标志:表示前面的操作执行后,ALU
处于何种状态,可能会影响后面的操作 ➢ 控制标志:人为设置的,可以用专门的设
置和清除指令,用于对某种功能的控制
27
状态标志
有6个,即SF、ZF、PF、CF、AF和OF ① 符号标志SF (sign flag ) ② 零标志ZF (zero flag) ③ 奇偶标志PF (parity flag) ——低8位1的个数为偶数,PF=1 ④ 进位标志CF (carry flag) ——最高位产生进位CF=1 ⑤ 辅助进位标志AF (auxiliary carry flag) ⑥ 溢出标志OF (overflow flag) ——算术运算产生溢出
本章主要内容
8086微处理器 80286、80386 Pentium
1
总线接口部件(BIU)的组成
4个16位段地址寄存器 CS 16位的代码段寄存器 DS 16位的数据段寄存器 ES 16位的附加段寄存器 SS 16位的堆栈段寄存器
16位的指令指针寄存器IP (Instruction Pointer)
——8位运算结果超出-128~+127 ——16位运算结果超出-32768~+32767

微机原理与接口技术第2章微处理器系统结构精品PPT课件

微机原理与接口技术第2章微处理器系统结构精品PPT课件

采用总线结构的优点是: ※ 减少信息传输线数目;
※ 提高系统的可靠性; ※ 增加系统灵活性; ※ 便于实现系统标准化。
四、寄存器阵列(Register Array)
在CPU内部,有一个临时存放地址和数据 的寄存器阵列,是CPU内部的高速存储单元。 这个阵列因CPU的不同而不同,有的称寄存 器堆,寄存器多少有差别,但其功能相似。
1、指令部件 包括程序计数器(PC),指令寄存器(IR), 指令译码器(ID)、微操作控制部件 可采用组合逻辑控制,微程序控制和可编程逻辑
阵列(PLA)来实现。
控制器的组成框图:
时钟周期(T state):主时钟的两个脉冲前沿的
时间间隔称为一个时钟周期,又称为T状态。它CPU 操作的最小时间单位。
三态缓冲器(3态BUF)处于:
低阻(高低电平)→挂BUS上;
高阻→逻辑上脱开。
“脱开”状态: 处于高阻状态,开路状态,浮空状态; 逻辑上“脱开”,物理上仍连在一起。
总线缓冲器分为:
单向三态缓冲器,如地址总线缓冲器只发地 址信息,(地址BUS是单向的);
双向三态缓冲器,如数据总线缓冲器,既可
发又可收数据(数据BUS是双向的)。
第2章 Intel 80X86
2.1 Intel 8086/8088 2.2 80X86高档微处理器
思考与练习题
本章重点提示:
掌握16位微处理器的内部结构,基本工作过 程;
• 熟悉和理解16位微处理器的封装引脚及其功 能作用;
• 理解16位CPU的最大工作方式和最小工作 方式的含义;
• 掌握各种寄存器的用途,能熟练地运用各 种寄存器编程;
• 理解指令预取和指令流水线作业的意义。
微处理器(Microprocessor) ,是采用大规 模或超大规模集成电路技术做成的半导体芯片, 上面集成了计算机的主要部件:运算器、控制 器、寄存器组、总线和总线缓冲器。整个微型 计算机硬件系统的核心就是微处理器,所以它 又称为中央处理器(Central Processing Unit), 即CPU。

微机原理与接口技术 第二章1

微机原理与接口技术 第二章1

8086/8088 CPU的内部寄存器 的内部寄存器
通用寄存器组 数据寄存器
·AX累加器 ( Accumulator):使用频率最高 , 用于算术 累加器( 使用频率最高, 累加器 ) 使用频率最高 运算,逻辑运算以及与外设传送信息等; 运算 , 逻辑运算以及与外设传送信息等; 隐含使用包 括字乘、字除、 括字乘、字除、字I/O等; 等 基址寄存器( ·BX基址寄存器(Base address Register):常用于存放内 基址寄存器 ) 常用于存放内 存偏移地址,隐含使用:查表转换指令; 存偏移地址,隐含使用:查表转换指令; ·CX计数器(Counter):作为循环和串操作等指令的隐 计数器( ) 计数器 含计数器; 含计数器; ·DX数据寄存器( Data register):存放数据, 隐含使用 : 数据寄存器( 存放数据, 数据寄存器 ) 存放数据 隐含使用: 字乘、字除、间接I/O操作 操作; 字乘、字除、间接 操作; ·AL 隐含使用:字节乘、字节除、字节 、查表转换、 隐含使用:字节乘、字节除、字节I/O、查表转换、 十进制运算; 十进制运算; ·AH 隐含使用:字节乘、字节除; 隐含使用:字节乘、字节除; ·CL 隐含使用:多位移位和循环移位。 隐含使用:多位移位和循环移位。
8086CPU内部结构框图 内部结构框图
十六位算术逻辑单元ALU 十六位算术逻辑单元 (Arithmetic and Logic Unit) 核心是二进制加法器 作用: 作用: (1)进行所有的算术运算和逻辑运算 ; ) (2)按指令的寻址方式计算出寻址单元的十六 ) 位的有效地址EA(Effective Address),并将此 位的有效地址 , 偏移地址送到BIU中形成一个二十位的实际地 偏移地址送到 中形成一个二十位的实际地 以对1M字节的存储 址(Physical Address ),以对 字节的存储 空间寻址。 空间寻址。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
并行流水线方式:( 8088/8086之后的芯 片)
各功能部件并行工作。
7
顺序工作方式
CPU 取指令1
分析 指令1
BUS 忙碌
执行 指令1
取指令2
分析 指令2
忙碌
执行 指令2
8
并行流水线工作方式
CPU
EU
取指令1
分析 指令1
取指令2
执行 指令1
分析 指令2
取指令3
执行 指令2
分析 指令3
决定存储单元在内存中的位置
相对地址(偏移地址)
决定该存储单元相对段内第一个单元的距离
逻辑段的起始地址称为段首
每个逻辑段内的第一个单元 段首的偏移地址=0
44
存储器的编址(3)
31
15
0
××× ••• ××× ××× ••• ×××
段基地址(16位) 段首地址(段首的物理地址)
段首的偏移地址:
41
五、存储器寻址
42
1. 内存单元的编址(1)
每个内存单元在整个内存空间中都具有惟一
的地址
物理地址
每个内存单元的地址码都由两部分组成:
段(基)地址
16位
段内地址
相对地址/偏移地址
16位
8088为16位结构,所以段地址和偏移地址均为16位
43
存储器的编址(2)
段基地址:
含14个16位寄存器,按功能可分为三类 8个通用寄存器 4个段寄存器 2个控制寄存器
深入理解:每个寄存器中数据的含义
28
1. 通用寄存器
数据寄存器(AX,BX,CX,DX) 地址指针寄存器(SP,BP) 变址寄存器(SI,DI)
29
数据寄存器
8088/8086含4个16位数据寄存器,它们又 可分为8个8位寄存器,即:
DF(Direction Flag)
方向标志位。在数据串操作时确定操作的方向。
39
3. 段寄存器
作用
用于存放相应逻辑段的段基地址
为8什0么86叫/8逻0辑88段内?存中逻辑段的数量
每个 最段多寄为存6器4K中个存放的内容=? 8086/8088内存中逻辑段的类型
代码段
存放指令代码
50
3. 存储器的保护模式(不考)
保护模式:
支持多任务的工作模式,提供了多任务保护机制; 内存段的访问受到限制,不能再随意存取数据段。
保护模式下的内存访问
不再直接从段寄存器中获得段基地址,段基地址 存放在内存的段描述符表中,由段描述符寄存器 给出段描述符表的基地址,段寄存器中仅存放段 选择符。
I/O端口地址;在32位乘除法运算时,存放 高16位数。
31
地址指针寄存器
SP:堆栈指针寄存器,其内容为栈顶的 偏移地址;
BP:基址指针寄存器,常用于在访问内 存时存放内存单元的偏移地址。
32
BX与BP在应用上的区别
作为通用寄存器,二者均可用于存放数据; 作为基址寄存器,用BX表示所寻找的数据在
14
主要的控制和状态信号
WR: 写信号; RD: 读信号; IO/M:为“0”表示访问内存,
为“1”表示访问接口; DEN: 低电平有效时,允许进行读/写操作; DT/R:数据收发器的传送方向控制; ALE:地址锁存信号; RESET:复位信号。
15
例:
当WR=1,RD=0,IO/M=0时, 表示CPU当前正在进行读存储器操作
51
保护模式下的存储器地址变换
15
0 31
0
段寄存器
偏移地址
描述符表 偏移地址
描 述 符 表 描述符表 寄存器 表基地址
31
0
分 页
线性地址


段基地址 段界限 属性
内存储器 ┇

物理地址



52
4. 堆栈及堆栈段的使用
堆栈:
内存中一个特殊区域,用于存放暂时不用或需 要保护的数据。
常用于响应中断或子程序调用。
具有一定功能的指令的有序集合
指令:
由人向计算机发出的、能够为计算机所识别的命令。
5
3. 指令执行的一般过程
取指令 指令译码 读取操作数 执行指令 存放结果 取指部件,分析部件,执行部件
6
4. 顺序执行和并行流水线
顺序执行方式:(8088/8086之前的芯片)
各功能部件交替工作,按顺序完成指令的执行过 程。
数据段;用BP则表示数据在堆栈段。
33
变址寄存器
SI:源变址寄存器 DI:目标变址寄存器 变址寄存器在指令中常用于存放数据在内
存中的地址。
34
2. 控制寄存器
IP
内存中的程序
CPU
程序计 指令地指址针寄存器指令,1其内容取为出下一条要分执析行指令的
数器PC偏移地址。
获取操作数
FLAGS
数据段
存放操作的数据
附加段
存放操作的数据
堆栈段
存放暂时不用但需保存的数据。
40
段寄存器
CS
代码段寄存器,存放代码段的段基地址。
DS
数据段寄存器 ,存放数据段的段基地址。
ES
附加段寄存器,存放数据段的段基地址。
SS
堆栈段寄存器, 存放堆栈段的段基地址
段寄存器的值表明相应逻辑段在内存中的位置
53
例:
已知
SS=1000H,SP=0100H
则:
段首
堆栈段的段首地址= 10000H

栈顶(偏移)地址=0100H
栈顶
栈 区
若该段最后一个单元
栈底
地址为10200H,则:
栈底偏移地址= 0200H
54
5. 内部寄存器小结
全部为16位寄存器 只有4个数据寄存器分别可分为2个8位寄存器 所有16位寄存器中:
第2章
微处理器与总线
1
主要内容:
微处理器的功能和结构
8088/8086微处理器
特点
主要引线功能和内部结构
内部寄存器
实地址模式下的存储器寻址
总线时序
总线
2
一、微处理器及8088/8086CPU
3
1. 微处理器
微处理器
运算器 控制器 内部寄存器
4
2. 程序和指令
程序:
指令2
执行
标志寄存器,存┇放运算结果的特征存放结果
6个状态标志位(CF,SF,AF,PF,OF,ZF)
3个控制标志位指(令InF,TF,DF)

操作数
35
状态标志位(1)
CF(Carry Flag)
进位标志位。加(减)法运算时,若最高位有进(借) 位则CF=1
PF(Parity Flag)
0000H
19
4
0
××× ••• ××× 0000
段基地址(16位)
45
存储器的编址(4)
物理地址:
内存单元在整个内存空间中的惟一地址
例:
段基地址 =6000H
60000H
段首地址

偏移地址=0009H
9

物理地址

00H
60009H 12H
46
2. 实地址模式下的存储器地址变换
16
READY信号
外部同步控制输入信号,高电平有效。
17
中断请求和响应信号
INTR:可屏蔽中断请求输入端 NMI: 非屏蔽中断请求输入端 INTA:中断响应输出端
18
总线保持信号
HOLD:总线保持请求信号输入端。当CPU 以外的其他设备要求占用总线时, 通过该引脚向CPU发出请求。
指定的新地址取指令,并立即传给执行单元执行。
25
结论
指令预取队列的存在使EU和BIU两个部分可同时进 行工作,从而:
提高了CPU的效率; 降低了对存储器存取速度的要求
另外,BIU中的地址加法器用来产生20位的物理 地址。见P44文字叙述和图2-7说明。
26
四、内部寄存器
27
内部寄存器的类型
CF= 1 AF= 0 SF= 1
OF= 0 PF= 1 ZF= 0
38
控制标志位
TF(Trap Flag)
陷井标志位,也叫跟踪标志位。TF=1时,使CPU 处于单步执行指令的工作方式。
IF(Interrupt Enable Flag)
中断允许标志位。IF=1使CPU可以响应可屏蔽中 断请求。
奇偶标志位。运算结果的低8位中“1”的个数为偶 数时PF=l
AF(Auxiliary Carry Flag)
辅助进位标志位。加(减)操作中,若Bit3向Bit4有 进位(借位),AF=1
36
状态标志位(2)
ZF(Zero Flag)
零标志位。当运算结果为零时ZF=1
SF(Sign Flag)
10
6. 8088CPU的两种工作模式
8088可工作于两种模式下 最小模式 最大模式
最小模式为单处理器模式。 最大模式为多处理器模式。
11
两种工作模式的选择方式ຫໍສະໝຸດ 8088是工作在最小还是最大模式由MN/MX引线 的状态决定。
MN/MX=0——工作于最大模式 MN/MX=1——工作于最小模式
段首地址=10550H
DS=250AH
段首地址=250A0H
ES=2EF0H SS=8FF0H
相关文档
最新文档