919013-【微机技术(4版)PPT第2章(18.7)版】

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2)指针寄存器(Pointer Register、变址寄
存器(Index Register)
• 堆栈指针寄存器SP( Stack Pointer) 、 • 基址指针寄存器BP(Base Pointer) 、 • 源变址寄存器SI(Source Index) • 目的变址寄存器DI(Destination Index) • 用来形成操作数的地址,用于堆栈操作 • 和变址运算中计算操作数的有效地址。 • SP 、BP 用于堆栈操作 • SI 、DI 用于变址操作

② 堆栈段寄存器SS(Stack Segment) ,指
向当前的堆栈段,堆栈操作的对象就是该段中存储
• 单元的内容。

③ 数据段寄存器DS(Data Segment) ,指向
当前的数据段,通常用来存放程序变量(存储器
• 操作数) 。

④ 附加段寄存器ES(Extra Segment) ,指
向当前的附加段,通常也用来存放数据以及— 些
• 计数寄存器CX(Count Register) 、
• 数据寄存器DX(Data Register) 。
2020/11/2
上海交通大学
14
通用寄存器
2020/11/2
AX AH BX BH CX CH DX DH
SP BP SI DI
上海交通大学
AL BL CL DL
15
数据寄存器
• 特点是: • 每个16位寄存器可分为 • 高8位( AH 、BH 、CH 和DH) • 低8位(AL 、BL 、CL 和DL) , • 这两组8位寄存器可分别寻址、独立操作。既可以
20
2. 指令指针 (Instruction Pointer ,IP)
• 16 位专用寄存器,它指向当前需要取出的指令字 节,当BIU 从内存中取出一个指令字节后,IP 就 自动加1 ,指向下一指令字节。注意,IP 指向 的是指令地址的段内地址偏移量,又称偏移地址 (Offset Address)或有效地址(Effective Address ,EA) 。
OF DF IF TF SF ZF AF PF CF
定义了9位
Carry Auxiliary Carry Parity
6位状态位 C、A、Z、S、O、P
Zero
Sign Overflow
3位控制位 I、D、T
Interrupt enable Direction Trap
2020/11/2
上海交通大学
上海交通大学
12
8088与8086 的区别
• 8088微处理器是一种准16位微处理器,内部采 用16位结构,实质上与8086基本上是相同的, 其内部功能部件EU 与8086一样,而BIU 略有 区别。
• 第一, 8086 的指令队列是6字节长,而8088 的指令队列为4字节长;
• 第二, 8086 是真正的16位机,同BIU 相连的 8086 总线中的数据总线是16 位总线,而8088 是准16位机,同BIU 相连的8088 总线中的数 据总线为8位总线。
2020/11/2
上海交通大学
26
2) 控制位
• ① 方向标志DF(Direction Flag) — —— 在进行字符串操作时,每执行一条 串操作指令,对源或(与)目的操作数的 地址要进行一次调整(对字节操作为加1 或减1 ,对字操作为加2 或减2),由DF 决定地址是递增还是递减。若DF=1为递 减,即从高地址向低地址进行;DF=0 为递增。
2020/11/2
上海交通大学
5
2.3 8086 微处理器的基本时序
• 2.3.1 指令周期、总线周期和时钟周期 • 2.3.2 几种基本时序的分析
2020/11/2
上海交通大学
6
2.1.1 执行部件和总线接口部件
微处理器执行程序的步骤 • ① 从内存储器中取出一条指令,分析指令操作码; • ② 读出一个操作数(如果指令需要操作数) ; • ③ 执行指令; • ④ 将结果写入内存储器或输出设备(如果指令
将数据寄存器作为一个16 位寄存器进行操作,又 可用做两个8 位寄存器进行操作。
2020/11/2
上海交通大学
16
数据寄存器
• 可以存放 • 参加操作的数据、 • 操作的中间结果, • 也可以是操作数的地址。 • 大多数算术和逻辑运算指令都可以使用这些数据寄
存器。
2020/11/2
上海交通大学
17ห้องสมุดไป่ตู้
• 1 ,主要在数据通信中用来检查传送有无出错(注意,只 考虑低8 位) 。
• ③ 辅助进位标志AF(Auxiliary Carry Flag) ——— 反 映一个8 位量(或16 位量的低位字节)
• 的低4 位向高位(即D3 位向D4 位)有无进位(或借位) 的情况,有则置1 ,AF 用于BCD 码算术运
面向21 世纪课程教材 普通高等教育“十一 五”国家级规划教材
微型计算机技术
Weixinɡ Jisuɑnji Jishu (第4 版)
孙德文 章鸣嬛 编著
2020/11/2
上海交通大学
1
第2章 8086 微处理器
2020/11/2
上海交通大学
2
8086 微处理器
• 2.1 8086微处理器的结构 • 2.2 8086微处理器的引脚功能 • 2.3 8086微处理器的基本时序
• 算指令。
2020/11/2
上海交通大学
24
状态位
④ 零标志ZF(Zero Flag) ——— 反映运算结果是否为 零的情况,结果为零,ZF 置1 。 ⑤ 符号标志SF(Sign Flag) ——— 反映带符号数运算 结果符号位的情况,结果为负数,SF 置1 ,SF 的取值与 运算结果的最高位(字节操作为D7 位,字操作为D15 位) 取值一致。 ⑥ 溢出标志OF(Overflow Flag) ——— 反映带符号数 (以二进制补码表示)运算结果是否超过机器所能表示的 数值范围的情况,对字节运算为- 128 ~ + 127 ,对字 运算为- 32768~ + 32767。
上海交通大学
9
总线接口部件 (Bus Interface Unit ,BIU)
• 由段寄存器、指令指针、地址形成逻辑、总线控制逻 辑和指令队列等组成。
• BIU 负责从内存指定区域取出指令送到指令队列中排 队;执行指令时所需要的操作数(内存操作数和I/O 端口操作数)也由BIU 从相应的内存区域或I/O 端口 中取出,传送给执行部(EU) 。指令执行的结果如 果需要存入内存或I/O 端口,也由BIU 写入相应的内 存区域或I/O 端口。
• 总之,BIU 的功能是:同外部总线连接,为EU 和内 存(及外设接口)之间提供信息通路。并形成20位的 内存物理地址。
2020/11/2
上海交通大学
10
执行部件(Execution Unit ,EU)
• 由通用寄存器、标志寄存器、算术逻辑单元 ( ALU)和EU 控制系统等组成。EU 从BIU 的 指令队列中获得指令,然后执行该指令,完成 指令所规定的操作。
• EU 用来对寄存器内容和指令操作数进行算术 和逻辑运算,以及进行内存有效地址的计算。
• EU负责全部指令的执行,向BIU 提供数据和所 需访问的内存或I/O 端口的地址,并对通用寄
存器、标志寄存器和指令操作数进行管理。
2020/11/2
上海交通大学
11
取指令和执行指令重叠进行
2020/11/2
23
1) 状态位
• ① 进位标志CF(Carry Flag) ——— 反映算术运算后, 最高位(字节操作为D7 位,字操作为D15 位)
• 出现进位(或借位)的情况,有则为1 。CF 主要用于加、 减法运算,移位和环移指令也会改变CF 值。
• ② 奇偶(校验)标志PF(Parity Flag) ——— 反映操 作结果中1 的个数的情况,若为偶数,PF 置

在8086 系统中,这三类信息通常分别存放在
各自的内存区域中——— 8086 存储系统中的不同
存储段。
2020/11/2
上海交通大学
29
段寄存器
• 8086 系统中把可直接寻址的1MB 内存 空间划分为称为“段”(Segment)的逻
辑区域,每个段的物理长度为64 KB ,
而段的起始地址由称为“段寄存器”
2020/11/2
上海交通大学
13
2.1.2 8086 的编程结构
• 可供程序员使用的有16个16位寄存器。
• 1.通用寄存器(General‐Purpose Register ,GPR)
• 可分为两组。
• 1) 数据寄存器
• 累加器AX(Accumulator) 、
• 基址寄存器BX(Base Register) 、
程序员不能对IP 进行存取操作,程序中的转移指 令、返回指令以及中断处理能对IP 进行操作。
2020/11/2
上海交通大学
21
3. 标志寄存器FR(Flag Register)
• 16 位的标志寄存器FR定义了9 位, • 6 位是状态位, • 3 位是控制位
2020/11/2
上海交通大学
22
标志寄存器FR(Flag Register)
需要) 。
2020/11/2
上海交通大学
7
执行部件和总线接口部件
• 8086 微处理器被设计为两个独立的功能 部件,
• 总线接口部件和执行部件, • 并在大多数情况下,能使大部分 • 的取指令和执行指令重叠进行。 • 提高了程序的执行速度,充分利用总线,
2020/11/2
上海交通大学
8
功能部件
2020/11/2
2020/11/2
上海交通大学
3
2.1 8086微处理器的结构
• 2.1.1 执行部件和总线接口部件
• 2.1.2 8086 的编程结构
• 2.1.3 8086 系统中的存储器组织及

物理地址的形成
2020/11/2
上海交通大学
4
2.2 8086 微处理器的引脚功能
• 2.2.1 引脚功能说明 • 2.2.2 8088 引脚与8086 引脚的不同之处
(Segment Register)的4个16位寄存器
决定。
• 8086 利用上述段寄存器的内容,通过适当转换 可以访问这4个存储段——— 代码段、堆栈段、数
据段和附加段。
2020/11/2
上海交通大学
30
段寄存器
• ① 代码段寄存器CS(Code Segment) ,指向 当前的代码段,指令由此段中取出。
2020/11/2
上海交通大学
18
通用寄存器
• 在8086 的指令系统中,许多情况下,某些指令只 能用一个特定的寄存器或寄存器组来完成其功能,
• 对这些用来完成特定操作的8086 指令, • 上述通用寄存器具有一些隐含用法
2020/11/2
上海交通大学
19
通用寄存器的隐含用法
2020/11/2
上海交通大学
• 专用指令的操作数。
2020/11/2
上海交通大学
31
2.1.3 8086 系统中的存储器组织及物 理地址的形成
• 1.存储器组织
• 8086 微处理器有20 条地址线,可以配置1 MB (1048576 B) 的内存储器,地址编号为0000 H ~ FFFFFH 。
• 3 个控制标志用来控制微处理器的某些操作,可以由指令 来设置。
2020/11/2
上海交通大学
28
4.段寄存器
• 在微型计算机系统的内存中通常存放着三类信息:
• ① 代码(指令) ——— 指示微处理器执行 何种操作。
• ② 数据(字符、数值) ——— 程序处理的 对象。
• ③ 堆栈信息——— 被保存的返回地址和中间 结果。
• DF 可由专用指令设置。
2020/11/2
上海交通大学
27
控制位
② 中断允许标志IF(Interrupt Enable Flag) ——— 表示系统是否允许响应外部的可屏蔽中断,若IF = 1 , 表示允许响应。IF 对不可屏蔽中断请求以及内部中断不起 作用。IF 可由专用指令设置。
③ 陷阱标志TF( Trap Flag) ——— 当TF = 1 时,微 处理器每执行完一条指令便自动产生一个内部中断,转去 执行一个中断服务程序,可以借助中断服务程序来监视每 条指令的执行情况,称为“单步工作方式” ,常用于程序 的调试。TF 又称为跟踪标志。
• 若超过上述范围,称为“溢出” ,OF 置1 。
2020/11/2
上海交通大学
25
状态位
• “溢出”与“进位”是两个不同的概念,某次运算 结果有“溢出”不一定有“进位” ;反之,有
• “进位”也不一定有“溢出” 。
• 6个状态标志由执行部件EU 设置,反映算术或逻辑 运算结果的某些特征,这些状态标志常用来影响或 控制某些后续指令(例如条件转移指令、循环指令 等)的执行。不同指令对状态标志的影响不一样, 有些指令不影响状态标志。另外,进位标志CF 可 由专用指令设置。
相关文档
最新文档