第2章微处理器及其体系结构-精选文档
合集下载
第二章 微处理器与系统结构-1
存储器
被加数
在微处理器内部各单 元间传递信息的总线 单总线/双总线/多 总线 双总线:输入总线、 输出总线,提高效率
输出
输入 进位
运 运 算 算 器 器
寄 存 加数 器 组 和
CPU
8
bupt 2008
片外总线
片外总线:在CPU和各外部部件之间传送信息的总线,系统总线,三 总线结构 数据总线:DB(Data Bus),双向 地址总线:AB(Adress Bus),单向 控制总线:CB(Control Bus),双向或者单向 单总线结构,分时使用 发送:同一时刻只允许一个部件发送数据 接收:不限
段起始地址:
33450h 距离: 1117h 物理地址:
34567h …
段地址 :只取段起始地址高16位值。 偏移地址:指在段内某内存单元的物理地址,相对段起始 地址的距离(差值)。
19
bupt 2008
20位物理地址的形成
段寄存器 0000
偏移量
加法器
20位物理地址
物理地址=段地址 X 16 +偏移量
十进制调整
被加数
运 运 算 算 器 器
PSW 标志 标志寄存器 寄存器
加数 和
进位
3
bupt 2008
2. 控制器
地址总线
发布操作命令,指挥中心。
数据总线
指令部件 指令寄存器IR 程序计数器PC
指令译码器ID
取指令
外部命令 操作控制器 时序发生器
分析指令 执行指令
内部命令
4
bupt 2008
内存、ALU、I/O等
8086系统存储器与总线连接
堆栈和指针
被加数
在微处理器内部各单 元间传递信息的总线 单总线/双总线/多 总线 双总线:输入总线、 输出总线,提高效率
输出
输入 进位
运 运 算 算 器 器
寄 存 加数 器 组 和
CPU
8
bupt 2008
片外总线
片外总线:在CPU和各外部部件之间传送信息的总线,系统总线,三 总线结构 数据总线:DB(Data Bus),双向 地址总线:AB(Adress Bus),单向 控制总线:CB(Control Bus),双向或者单向 单总线结构,分时使用 发送:同一时刻只允许一个部件发送数据 接收:不限
段起始地址:
33450h 距离: 1117h 物理地址:
34567h …
段地址 :只取段起始地址高16位值。 偏移地址:指在段内某内存单元的物理地址,相对段起始 地址的距离(差值)。
19
bupt 2008
20位物理地址的形成
段寄存器 0000
偏移量
加法器
20位物理地址
物理地址=段地址 X 16 +偏移量
十进制调整
被加数
运 运 算 算 器 器
PSW 标志 标志寄存器 寄存器
加数 和
进位
3
bupt 2008
2. 控制器
地址总线
发布操作命令,指挥中心。
数据总线
指令部件 指令寄存器IR 程序计数器PC
指令译码器ID
取指令
外部命令 操作控制器 时序发生器
分析指令 执行指令
内部命令
4
bupt 2008
内存、ALU、I/O等
8086系统存储器与总线连接
堆栈和指针
微处理器体系与结构
SI 、 DI
2、段寄存器
段寄存器包括: CS 、 SS 、 DS 、 ES
3、控制寄存器
控制寄存器包括:IP微处、理器P体S系与W结构
(一)、通用寄存器
(1)、数据寄存器
AX:(Accumulator)作为累加器。
它是算术运算的主要寄存器,所有I/O指令都使用这一寄 存器与外部设备交换数据。
对某些I/O操作DX可用来存放I/O的端口地址(口地址 256)。
微处理器体系与结构
(一)、通用寄存器(cont.)
(2)、地址指针与变址寄存器
SP、BP、SI、DI 四个16位寄存器。以字为单位在运算过 程中存放操作数,经常用以在段内寻址时提供偏移地址。
数据寄存器
地址指针、 变址寄存器 控制寄存器
段寄存器
通用寄存器组
微处理器体系与结构
二、8086/8088的寄存器结构 (cont.)
1、通用寄存器
通用寄存器包括:
数据寄存器、地址指针寄存器、变址寄存器
数据寄存器包括: AX 、BX 、CX 、DX
地址指针寄存器包括: SP 、 BP
变址寄存器包括:
器和标志寄存器进行管理。
组成:
4个通用寄存器:AX、BX、CX、DX 4个专用寄存器:BP、SP、SI、DI 标志寄存器(PSW):
9个标志位,其中6个条件标志位用于存放结果状态,
算术逻辑单元:
16 位加法器,用于对寄存器和指令操作数进行算术或逻辑运算,
EU 控制系统:
接受从总线接口单元的指令队列中取来的指令代码,对其译码和向 EU 内 各有关部分发出时序命令信号,协调执行指令规定的操作。
数据。
组成 4 个段地址寄存器(CS、DS、ES、SS) 16位指令指针寄存器IP 20位的地址加法器(16d段地址+偏移地址=物理地址) 6字节(8086)或4字节(8088)的指令队列 总线控制电路: 处理器与外界总线微处联理器系体系的与结转构 接电路。括三组总线:
第2章 微处理器及其体系结构PPT课件
说明:对8086/8088来说,EU完全一样
广西大学 机械工程学 院
2020/7/31
第二章 8086/8088微处理器及其体系结构
17
执行部件(Execution Unit—EU)
EU主要完成两种类型的操作: ①算术运算和逻辑运算(由算术逻辑单元ALU完成); ②按指令的寻址方式计算出16位的偏移地址,并将它 送到BIU(总线接口部件)中,形成20位的实际地址。
8086CPU
2020/7/31
第二章 8086/8088微处理器及其体系结构
9
CPU 图片
广西大学 机械工程学 院
现代CPU
2020/7/31
第二章 8086/8088微处理器及其体系结构
10
CPU图片
广西大学 机械工程学 院
2020/7/31
第二章 8086/8088微处理器及其体系结构
11
12
一、8086/8088CPU的编程结构
1、8086/8088CPU的内部结构 2、8086/8088CPU的寄存器结构
广西大学 机械工程学 院
2020/7/31
第二章 8086/8088微处理器及其体系结构
13
1、8086/8088CPU的内部结构
8086/8088CPU内部结构基本相同,有20条外部 地址总线,可以寻址1M内存空间;
8086CPU的内部和外部数据总线均是16位,是 典型的16位微处理器;
8088CPU内部数据总线是16位,外部数据总线 是8位,所以被称为准16位微处理器。
8088CPU指令队列是4个字节,8086是6个字节。
广西大学 机械工程学 院
2020/7/31
第二章 8086/8088微处理器及其体系结构
广西大学 机械工程学 院
2020/7/31
第二章 8086/8088微处理器及其体系结构
17
执行部件(Execution Unit—EU)
EU主要完成两种类型的操作: ①算术运算和逻辑运算(由算术逻辑单元ALU完成); ②按指令的寻址方式计算出16位的偏移地址,并将它 送到BIU(总线接口部件)中,形成20位的实际地址。
8086CPU
2020/7/31
第二章 8086/8088微处理器及其体系结构
9
CPU 图片
广西大学 机械工程学 院
现代CPU
2020/7/31
第二章 8086/8088微处理器及其体系结构
10
CPU图片
广西大学 机械工程学 院
2020/7/31
第二章 8086/8088微处理器及其体系结构
11
12
一、8086/8088CPU的编程结构
1、8086/8088CPU的内部结构 2、8086/8088CPU的寄存器结构
广西大学 机械工程学 院
2020/7/31
第二章 8086/8088微处理器及其体系结构
13
1、8086/8088CPU的内部结构
8086/8088CPU内部结构基本相同,有20条外部 地址总线,可以寻址1M内存空间;
8086CPU的内部和外部数据总线均是16位,是 典型的16位微处理器;
8088CPU内部数据总线是16位,外部数据总线 是8位,所以被称为准16位微处理器。
8088CPU指令队列是4个字节,8086是6个字节。
广西大学 机械工程学 院
2020/7/31
第二章 8086/8088微处理器及其体系结构
微机原理chapter2_微处理器体系与结构
第二章 微处理器体系与结构
2.1 微处理器的发展 2.2 Intel 8086/8088微处理器的结构
2.2.1执行单元与总线接口单元
2.2.2 8086/8088的寄存器结构 2.2.3 8086/8088的存储器组织
2.3 Intel 80386微处理器的结构
2.3.1 80386微处理器的体系结构 2.3.2 80386的工作方式
PF=0 OF=0
条件转移指令
例2-4
29
条件转移指令
指令助记符 测试条件 指令功能
JC JNC JZ/JE JNZ/JNE JS JNS JO JNO JP/JPE PF=1 JNP/JPO
CF=1 CF=0 ZF=1 ZF=0 SF=1 SF=0 OF=1 OF=0
PF=0
有进位 无进位 结果为零/相等 不为零/不相等 符号为负 符号为正 溢出 无溢出 奇偶位为1/为偶 奇偶位为0/为奇
从偶地址开 从奇地址开
始的一个字
L H
始的一个字
H
00004
512K*8位奇地址 存储体(BHE=0) (A0=1)
512K*8位偶地址 存储体 (A0=0)
L H
FFFFF
37
8086/ 8088系统的存储体结构
8086系统的存储体结构
8088系统的存储体结构
38
8086系统的存储体结构
8086CPU有16根数据线 可以同时传送16位数据(字操作,使用AD15-AD0) 也可以只传送8位数据(字节操作,使用AD15-AD8或AD7-AD0 ) 仅A0为低电平时,CPU使用AD7-AD0
BX : Base用作基址寄存器使用。
• 在计算内存储器地址时,经常用来存放基址。
2.1 微处理器的发展 2.2 Intel 8086/8088微处理器的结构
2.2.1执行单元与总线接口单元
2.2.2 8086/8088的寄存器结构 2.2.3 8086/8088的存储器组织
2.3 Intel 80386微处理器的结构
2.3.1 80386微处理器的体系结构 2.3.2 80386的工作方式
PF=0 OF=0
条件转移指令
例2-4
29
条件转移指令
指令助记符 测试条件 指令功能
JC JNC JZ/JE JNZ/JNE JS JNS JO JNO JP/JPE PF=1 JNP/JPO
CF=1 CF=0 ZF=1 ZF=0 SF=1 SF=0 OF=1 OF=0
PF=0
有进位 无进位 结果为零/相等 不为零/不相等 符号为负 符号为正 溢出 无溢出 奇偶位为1/为偶 奇偶位为0/为奇
从偶地址开 从奇地址开
始的一个字
L H
始的一个字
H
00004
512K*8位奇地址 存储体(BHE=0) (A0=1)
512K*8位偶地址 存储体 (A0=0)
L H
FFFFF
37
8086/ 8088系统的存储体结构
8086系统的存储体结构
8088系统的存储体结构
38
8086系统的存储体结构
8086CPU有16根数据线 可以同时传送16位数据(字操作,使用AD15-AD0) 也可以只传送8位数据(字节操作,使用AD15-AD8或AD7-AD0 ) 仅A0为低电平时,CPU使用AD7-AD0
BX : Base用作基址寄存器使用。
• 在计算内存储器地址时,经常用来存放基址。
第2章 微处理器及其体系结构1
主要内容2.1
(
字长
((
((
内存的最大容量和装机容量 2.2 8086微处理器
(
运算器由下列部分组成:
(
作用:和总线打交道的接口部件,根据传统CPU采用串行工作方式:
8086CPU
(
通用寄存器特有的习惯用法
(2)指针及变址寄存器(SP,BP,SI,DI)
(3)4个段寄存器
指针寄存器用于存放逻辑段的段基地址
(5)状态标志寄存器F (PSW)溢出:运算数位过大,侵占了符号位
2.2.3 实际地址的产生物理地址(实际地址):
BIU 中20位物理地址的产生由8086的段寄存器之
一提供,它们是CS、
DS、SS、ES。
由基址指针(BP)寄存器、基址(BX)寄存器、源变址(SI)寄存器、目标变址(DI)寄存器和指令指针(IP)提供
2.2.4 时钟周期和总线周期若存储器或外设速度慢,则向。
接口第章微处理器与系统结构
9
二、控制器
CTRL是发布操作命令的部件,操作的顺序需要精确的定时,
其内部主要组成如下: 1、指令部件 包括程序计数器(PC),指令寄存器(IR),
指令译码器(ID)。 2、时序部件 包括时钟系统,脉冲分配器。 3、微操作控制部件 根据指令产生计算机各部件所需要的控 制信号,如传送、加减、逻辑运算等,由译码 器输出、节拍发
1. 表示方法—BCD码(Binary Coded Decimal) 要表示一位 十进制数,至少要用4位二进制数,常用下面两种表示方法:
压缩的(组合的)BCD码:一个字节表示两位BCD码。 优点:占内存少
非压缩(非组合)的BCD码:一个字节表示一位BCD码, 高 4位为0。
优点:键盘输入的‘0’ ~‘9’是ASCII码,30h~39h
数字电路中的环形计数器常用来组成节拍脉冲发生器。
2019/11/26
信息工程学院信息论教研室
12
指令周期、机器周期与时钟周期的关系如下图 p3M1
机器周期
M2
∬
M5
T1 T2 T3 T4
CLK
∬
时钟周期(T state):主时钟的两个脉冲前沿的时间间隔称为一个时钟 周期,又称为T状态。它是CPU操作的最小时间单位。
第二章 微处理器和系统结构
本章主要介绍 • 微处理器(CPU)的主要组成部分及各部分功能 • Intel 8086微处理器组成结构、引脚信号及功能 • 80X86系统组成 • 高性能微处理器简介
2019/11/26
信息工程学院信息论教研室
1
第 2 章 微处理器与系统结构
教科书 28 ~ 80页 2.1 微处理器的基本结构 2.2 Intel 8086 微处理器
微处理器及其结构
2.1.1微处理器的主要性能指标 结束
2.1.2 微处理器的工作方式
➢ 实地址方式 ➢ 保护地址方式 ➢ 虚拟8086方式 ➢ 系统管理方式 ➢ 工作方式间的相互转换
实地址方式
8086/8088微处理器采用的寻址方式。 系统启动后,任何处理器(Intel)自动进入实地址方式。
实地址方式的主要特点:
SMM最显著的应用就是电源管理。
用于笔记本电脑的处理器从80386DL开始就支持SMM, 目的是降低系统功耗。
用于台式机支持SMM的处理器有Pentium、Pentium II、 Pentium III以及Pentium 4等。
工
复位 实地址
复位或
作
Hale Waihona Puke 方式RSM 指令方
PE=1 复位或 SMI
式
PE=0
在8086/8088系统中与其配合的协处理器有数值运算协处 理器8087和输入输出协处理器8089。
80286及以后的处理器均采用最大模式。
2.如何设置8086/8088的两种工作模式?
➢当MN/MX#接电源电压时,系统就工作于最小模式。 ➢当MN/MX#线接地,则系统就工作于最大模式。
2.2.1 8086/8088的工作模式与引脚信号
➢RESET(In) :复位信号,高电平有效。
5.8086/8088有哪些公共引脚信号?
➢READY (In):准备好信号,高电平有效。 处理器与存储器及I/O接口速度同步的控制 信号。
➢TEST# (In): 测试信号,低电平有效。处 理器执行WAIT指令的控制信号(有效时退 出等待状态)。
➢MN/MX# (In):最大/最小工作模式选择 信号。硬件设计者用来决定8086工作模式, MN/MX#=1 ,8086为最小模式, MN/MX#= 0 ,8086为最大模式。
2.1.2 微处理器的工作方式
➢ 实地址方式 ➢ 保护地址方式 ➢ 虚拟8086方式 ➢ 系统管理方式 ➢ 工作方式间的相互转换
实地址方式
8086/8088微处理器采用的寻址方式。 系统启动后,任何处理器(Intel)自动进入实地址方式。
实地址方式的主要特点:
SMM最显著的应用就是电源管理。
用于笔记本电脑的处理器从80386DL开始就支持SMM, 目的是降低系统功耗。
用于台式机支持SMM的处理器有Pentium、Pentium II、 Pentium III以及Pentium 4等。
工
复位 实地址
复位或
作
Hale Waihona Puke 方式RSM 指令方
PE=1 复位或 SMI
式
PE=0
在8086/8088系统中与其配合的协处理器有数值运算协处 理器8087和输入输出协处理器8089。
80286及以后的处理器均采用最大模式。
2.如何设置8086/8088的两种工作模式?
➢当MN/MX#接电源电压时,系统就工作于最小模式。 ➢当MN/MX#线接地,则系统就工作于最大模式。
2.2.1 8086/8088的工作模式与引脚信号
➢RESET(In) :复位信号,高电平有效。
5.8086/8088有哪些公共引脚信号?
➢READY (In):准备好信号,高电平有效。 处理器与存储器及I/O接口速度同步的控制 信号。
➢TEST# (In): 测试信号,低电平有效。处 理器执行WAIT指令的控制信号(有效时退 出等待状态)。
➢MN/MX# (In):最大/最小工作模式选择 信号。硬件设计者用来决定8086工作模式, MN/MX#=1 ,8086为最小模式, MN/MX#= 0 ,8086为最大模式。
微处理器的体系结构
兼容性
针对系列计算机 要求所有机种间能够保持向上兼容和向后兼容 向上兼容:为某个档次机种编制的软件能够不加修 改地运行在比它高档的机种上 向后兼容:为某个时期生产的机种编制的软件能够 不加修改地运行在它之后生产的机种上 Pentium微处理器的运行模式:实模式、保护模式
兼容性 针对(软件)体系结构,非硬件实现
1000:1234 0100:ABCD
计算机体系结构是程序员所看到的系统的一些属性: 概念性的结构和功能上的表现,这些属性既不同于数 据流和控制的组织,也不同于逻辑设计和物理实现。
Amdahl,1964
计算机体系结构是连接硬件和软件的一门学科,它研 究的内容不但涉及计算机硬件,也涉及计算机软件。
计算机体系结构与计算机组成
区别在于关心的问题不同: •计算机体系结构关心的是怎样合理地进行软硬 件功能分配,为软件人员提供适用的计算机 •计算机组成关心的是怎样合理地实现分配给硬 件的功能和指标,提高性能价格比
第二章 Pentium微处理器的体系结构
2.1 计算机体系结构的含义 2.2 Pentium微处理器的内部结构 2.3 实模式软件体系结构 2.4 保护模式软件体系结构 2.5 浮点部件软件体系结构
2.1 计算机体系结构的含义
计算机体系结构 = computer architecture (计算机系统结构)
简单指令:完全由硬件执行而无需任何微码控制, 在一个时钟周期内执行的指令
•mov reg, reg/mem/imm •mov mem,reg/imm •alu reg, reg/mem/imm •alu mem, reg/imm •inc reg/mem •dec reg/mem •push reg/mem •pop reg •lea reg, mem •jmp/call/jcc near •nop
第二章 微处理器及其体系结构
最小方式下的基本配置
M/IO为存储器/输入输出控制信号,输出,三 态。用于指示当前CPU是访问存储器(高电 平) 还是I/O端口(低电平)。 DT/R为数据发送/接收信号,输出,三态。 用于指示CPU是进行发送操作(低电平)还是 接收操作(高电平)。 DEN为数据允许信号,输出,三态。用作系统 中总线收发器的允许控制信号。
3. 其它信号 ① 时钟信号CLK, 输入, 该信号为8086提供 基本的定时脉冲。 ② 电源Vcc,输入。要求接+5 V±10% 。 ③ 地线GND。
2.2.5 总线周期简介
▲ 时钟周期—时钟信号振荡周期。时钟周期是CPU的
基本时间计量单位,它由计算机主频决定,例如 8086主频为f=5MHz,一个时钟周期 T=1/f=1/5M=0.2us。 ▲总线周期—CPU通过总线读/写一次数据所需时间。 8086/8088中,一个最基本的总线周期由4个时钟周 期组成。 ▲指令周期——CPU执行一条指令所需时间。不同指令 的指令周期的长短是不同的,因为指令的字节数是 不同的,取这些指令所需要的时间就有很大的不同, 执行这些指令的时间也就不同了。
DEBUG中标志的表示
缩写字母的全称 OF 溢出(是/否) OV Overflow ,NV Not Overflow DF 方向(减量/增量) DN DowN UP UP IF 中断(允许/关闭) EI Enable Interrupt, DI Disable Interrupt SF 符号(负/正) NG NeGative ,PL PLus ZF零(是/否) ZR ZeRo ,NZ Not Zero AF辅助进位(是/否) AC Auxiliary Carry, NA Not Auxiliary PF奇偶(是/否) PE Parity Even ,PO Parity Odd CF 进位(是/否) CY CarrY , NC Not Carry
二章节微处理器与系统结构资料
多处理器系统
超标量结构:一个时钟周期内执行一条以上的指 令。
低标量结构:一条指令至少需要一个以上的时钟周期
工作电压:微处理器正常工作所需要的电压,早 期为5V,后来有3.3V,2.8V,1.5V等。
制造工艺:晶体管之间的最小线距, 0.35m,
0.25m, 0.18m, 0.13m等
CL 在移位和循环移位指令中,作为移位位数和循环移位次 数的计数寄存器(指令执行后,(CL)不变)
DX I/O指令间接寻址时,作为地址寄存器;在乘法指令中作 为辅助累加器(当乘积或被除数为32位时,存放高16位 数)
BP 在间接寻址中,作为基址寄存器
SP 在堆栈操作中,作为堆栈指针 SI 间接寻址时,作为地址寄存器或变址寄存器;在电串子操科技作大学
电子科技大学
状态标志
微机系统原理与接口技术
反映指令对数据作用之后,结果的状态(不是结 果本身)。这些状态将控制后续指令的执行
OF(Overflow Flag):溢出标志(指补码),F.11
OF=1:在运算过程中,如操作数超过了机器表示的范 围称为溢出。
OF=0:在运算过程中,如操作数未超过了机器能表示 的范围称为不溢出。
标志寄存器F
微机系统原理与接口技术
D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1
OF DF IF TFD0 S的寄存器 只定义了其中9位,另外7位未定义(不用)
6位状态标志:OF、SF、ZF、PF、CF、AF 3位控制标志:DF、IF、TF
PF=1: 结果的低8位中有偶数个1。 PF=0: 结果的低8位中有奇数个1。
有些运算操作将影响全部状态标志,如加 法、减法运算
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
多功能寄存器
• RCX(计数,Counter) – RCX,ECX,CX,CH,CL – 可保存许多指令的计数值,如移位指令、循环指令、串指 令等。 – 在386以上微处理器中,ECX及RCX可用于保存访问存储 单元时的偏移地址。 • RDX(数据,DATA) – RDX,EDX,DX,DH,DL – 可用于保存乘法形成的部分结果,或除法指令的部分被除 数。 – 在386以上微处理器中,EDX及RDX可用于保存访问存储 单元时的偏移地址。
多功能寄存器
• RAX(累加器,Accumulator) – RAX,EAX,AX,AH,AL – 在乘法、除法及一些调整指令中有专门用途。 – 在386以上微处理器中,EAX及RAX可用于保存 访问存储单元时的偏移地址。 • RBX(基址,Base) – RBX,EBX,BX,BH,BL – 可用于保存访问存储单元时的偏移地址。
多功能寄存器
• R8~R15 – 只存在于Pentium 4和Core 2中64位扩展允许的 情况下。 – 这些寄存器中的数据是用于通用目的的。 – 可以按照64、32、16、8位大小寻址。 – 8位部分是寄存器最右边的8位。 – 第8位~第15位不能按照一个字节直接寻址。
专用寄存器
• 专用寄存器包括: – RIP(指令指针) – RSP(堆栈指针) • 很多参考书把RSP作为一个通用寄存器 – RFLAGS(标志寄存器) – CS,DS,ES,SS,FS,GS(段寄存器)
31~0
MOV R10W, AX
MOV R14D, R15D
64位
——
63~0
MOV R13, R12
64位模式下的程序设计模型
4. 高字节寄存器( AH 、 BH 、 CH 、 DH )不能与由 R8~R15所表示的字节在同一指令中寻址。 5. 64 位模式下, SI 、 DI 、 BP 、 SP 低 8 位可寻址,为 SIL、DIL、BPL、SPL。
RIP(指令指针)
• RIP:在64位模式中,包括40位地址,指向要执行 的下一条指令的偏移值,该偏移值相对于指令所在 代码段的基地址(段基址)
• EIP:32位指令指针,用于32位微处理器中。
• IP:在8086和80286中,指令指针为16位寄存器。 • 程序员不能对RIP/EIP/IP进行直接存取操作。程序 中的转移指令、返回指令以及中断处理能对RIP/EIP /IP进行操作。
程序设计模型
• 8086~Core2 – 包括64位扩展 • • • • 8位寄存器 16位寄存器 32位寄存器 64位寄存器
• 多功能寄存器 – 又称为通用寄存器 • 专用寄存器
程序设计模型
• 8086,8088和80286 包含16位内部结构。 • 80386~Core2包括全 部的32位内部结构。 • Pentium 4和Core2 在使用64位模式操作 时,也包括64位寄存 器需注意: 1. 64 位寄存器 R8~R15 是可以按照字节、字、双字 或者四字的方式寻址的。8位部分是最低8位。 2. 不支持把其中的第8~15位作为1字节来直接寻址。
寄存器大小
8位
控制字
B
访问位数
7~0
示例
MOV R9B, R10B
16位
32位
W
D
15~0
RSP(堆栈指针)
• RSP – RSP,ESP,SP – 用于寻址一个称为堆栈的存储区。
RFLAGS(标志寄存器)
• RFLAGS:用于指示微处理器的状态并控制它的操 作。 – FLAGS:8086~80286 – EFLAGS:32位微处理器,80386及其以上 – RFLAGS:64位微处理器
第2章 微处理器及其体系结构
罗文坚 中国科大 计算机学院 /~wjluo/mcps/
本章内容
微处理器的内部体系结构 实模式存储器寻址
保护模式存储器寻址简介
内存分页 平展模式内存
程序设计模型
• 程序可见的寄存器:程序设计期间必须使用的。 – 程序设计模型 • 程序不可见的寄存器:在应用程序设计期间不能直 接寻址,但系统程序设计期间可能间接使用到。 – 只有80286及更高档的微处理器才包含程序不可 见寄存器,用于控制和操作保护模式存储系统和 其他特征。
程序设计模型
8位寄存器 AH,AL,BH,BL,CH,CL,DH,DL o 例如,ADD AL, AH 16位寄存器 AX,BX,CX,DX,BP,SI,DI,SP IP,FLAGSA CS,DS,ES,SS,FS,GS o 注意1:AX,BX,CX,DX个包含2个8位寄存器。 o 注意2:FS和GS值用于80386以上微处理器。 o 例如,ADD DX,CX
程序设计模型
32位寄存器 EAX,EBX,ECX,EDX,ESI,EDI,EBP,ESP EIP,EFLAGS o 只用于80386以上微处理器。 o 例如,ADD ECX,EBX 64位寄存器 RAX,RBX,RCX,RDX,SRI,RDI,RBP,RSP RIP,RFLAGS R8,R9,R10,R11,R12,R13,R14,R15 o 例如,ADD RCX, RBX
多功能寄存器
• RBP(基指针, Base Pointer) – RBP,EBP,BP – 可用于保存访问存储单元时的偏移地址。 • RDI(Destination Index) – RDI,EDI,DI – 可用于保存访问存储单元时的偏移地址。 – 常用于寻址串指令的目的操作数。 • RSI(Source Index) – RSI,ESI,SI – 可用于保存访问存储单元时的偏移地址。 – 常用于寻址串指令的源操作数。
RFLAGS(标志寄存器)
• CF:进位标志(Carry Flag) – CF=1,表示有进位或借位。 • PF:奇偶标志(Parity Flag) – 奇校验 • AF:辅助进位标志(Auxiliary Carry) – 加法结果中第3位与第4位之间的进位,或减法结 果中第3位与第4位之间的借位。 – BCD码加减法指令使用这一标志。 • ZF:零标志(Zero Flag) – ZF=1表示结果为0;ZF=0表示结果不为0。