第二章 IA-32结构微处理器与8086
合集下载
第2章 IA-32结构微处理器与8086

2.从实模式至保护模式
ቤተ መጻሕፍቲ ባይዱ
从80286开始,在80386中真正完善保 护模式。
3.片内存储管理单元(MMU)
32位地址,可寻址4GB物理地址。 大多数PC的物理内存配置远小于4GB。 但应用程序却可能需要庞大的地址空 间。 因此,在操作系统中提供了虚拟存储 器管理机制,而这要求硬件支持。
4.浮点支持
① 方向标志(Direction Flag,DF) ② 中断允许标志(Interrupt-enable Flag,IF) ③ 追踪标志(Trace Flag,TF)
4.指令指针
指令指针(IP)寄存器包含下一条要执 行的指令在当前码段中的偏移。
2.3.3 存储器组织
图2-8
8086物理地址的形成
图2-9 8086的存储器结构
图2-4
8086微处理器基本执行环境
2.3.2 基本的程序执行寄存器
通用寄存器,这八个寄存器能用于存放操 作数和指针。 段寄存器,这些寄存器最多能保存四个段 选择子。
FLAGS(程序状态和控制)寄存器, FLAGS寄存器报告正在执行的程序的状态, 并允许有限地(应用程序级)控制处理器。 IP(指令指针)寄存器。IP寄存器包括下 一条要执行的指令的16位指针。
图2-1
8086(8088)的功能结构
图2-2
8位微处理器的执行顺序
图2-3
8086的执行顺序
2.3 8086微处理器的执行环境 2.3.1 基本执行环境概要
在8086微处理器上执行的程序或任务 都有一组执行指令的资源用于存储代码、 数据和状态信息。
地址空间 基本程序执行寄存器 堆栈(Stack) I/O端口
2.1.2 8086性能的提高
IA-32结构微处理器与8086

6. 数据流SIMD扩展( Streaming SIMD Extensions -SSE) 自Pentium III处理器开始,在IA32微处理器中引进了数据流SIMD(单指 令多数据)扩展(SSE)技术。SSE指令 集包括了70条指令,其中包含提高3D图 形运算效率的50条SIMD浮点运算指令、 12条MMX 整数运算增强指令、8条优化内 存中连续数据块传输指令。
同济大学电信学院
2.1.1 8086功能的扩展
128 位指令设计以支持媒体和科学应用 。由于这些指令所用的向量操作数允许应用 程序在多个向量元素上并行操作。元素能是 整数(从字节至四字)或浮点数(单精度或 双精度)。
同济大学电信学院
2.1.1 8086功能的扩展
在SSE2的基础上又增加了13个额外 的SIMD指令。SSE3 ( Streaming SIMD Extensions3)中13个新指令的主要目的 是改进线程同步和特定应用程序领域, 例如媒体和游戏。这些新增指令强化了 处理器在浮点转换至整数、复杂算法、 视频编码、SIMD浮点寄存器操作以及线 程同步等五个方面的表现,最终达到提 升多媒体和游戏性能的目的。
同济大学电信学院
2.1.2 8086性能的提高
到了奔腾处理器增加了第二个执行流水 线以达到超标量性能(两个已知的流水线u 和v,一起工作能实现每个时钟执行两条指 令)。
同济大学电信学院
2.1.2 8086性能的提高
Intel Pentium 4处理器是第一个基 于Intel NetBurst微结构的处理器。Intห้องสมุดไป่ตู้l NetBurst微结构是新的32bit微结构,它 允许处理器能在比以前的IA-32处理器更 高的时钟速度和性能等级上进行操作。 Intel Pentium 4处理器有快速的执行引擎 、Hyper流水线技术与高级的动态执行。 使指令执行的并行性进一步提高,从而 做到在一个时钟周期中可以执行多条指 令。
同济大学电信学院
2.1.1 8086功能的扩展
128 位指令设计以支持媒体和科学应用 。由于这些指令所用的向量操作数允许应用 程序在多个向量元素上并行操作。元素能是 整数(从字节至四字)或浮点数(单精度或 双精度)。
同济大学电信学院
2.1.1 8086功能的扩展
在SSE2的基础上又增加了13个额外 的SIMD指令。SSE3 ( Streaming SIMD Extensions3)中13个新指令的主要目的 是改进线程同步和特定应用程序领域, 例如媒体和游戏。这些新增指令强化了 处理器在浮点转换至整数、复杂算法、 视频编码、SIMD浮点寄存器操作以及线 程同步等五个方面的表现,最终达到提 升多媒体和游戏性能的目的。
同济大学电信学院
2.1.2 8086性能的提高
到了奔腾处理器增加了第二个执行流水 线以达到超标量性能(两个已知的流水线u 和v,一起工作能实现每个时钟执行两条指 令)。
同济大学电信学院
2.1.2 8086性能的提高
Intel Pentium 4处理器是第一个基 于Intel NetBurst微结构的处理器。Intห้องสมุดไป่ตู้l NetBurst微结构是新的32bit微结构,它 允许处理器能在比以前的IA-32处理器更 高的时钟速度和性能等级上进行操作。 Intel Pentium 4处理器有快速的执行引擎 、Hyper流水线技术与高级的动态执行。 使指令执行的并行性进一步提高,从而 做到在一个时钟周期中可以执行多条指 令。
第2章 8086微处理器及其体系结构

5
1985年:英特尔发布了80386处理器 年 英特尔发布了 处理器
历史上第一个具有“多任务”功能的 历史上第一个具有“多任务”功能的CPU
6
1993年:第一款与数字无关的处理器“Pentium” 年 第一款与数字无关的处理器“
内建MMX(多媒体指令集)
Pentium处理器集成了310万个晶体管,最初推出的初 始频率是60MHz、66MHz,后来提升到200MHz以上。 引入了SIMD(单指令多数据)执行方式
16
两种CPU指令执行模式对比
MPU 等待取指1 执行1 等待取指2 执行2 等待取指3 执行3
总线
忙
闲
忙
闲
忙ቤተ መጻሕፍቲ ባይዱ
闲
传统微处理器的指令执行过程
BIU
取指1
取指2
取指3
取指4
取指5
取指6 执行6
EU 总线 忙
执行1 忙
执行2 忙
执行3 忙
执行4 忙
执行5 忙
8086CPU的指令执行过程-流水线工作模式
17
11
2003年英特尔发布了Pentium M处理器
Pentium M处理器加上802.11的无线WiFi技术,就构成了 英特尔Centrino(迅驰)移动运算技术的整套解决方案
12
2005年第二季度,基于“Smithfield”双核心的 英特尔Pentium 8XX处理器发布
Pentium 8XX处理器采用90纳米工艺生产,支持800MHz 前端总线,配备2MB二级缓存(每个核心1MB),能用两 个核心实现两个线程。
7
1997年英特尔发布了Pentium II处理器
Pentium II首次引入了S.E.C封装(Single Edge Contact)技术,将高速缓存与处理器整合在一块 PCB板上
第2章 IA-32结构微处理器与8086

32位地址能寻址4GB物理地址。
2.1.1 8086功能的扩展
第二章 IA-32结构微 处理器与8086
2.从实模式至保护模式
从80286开始,在80386中真正完善保护模式。 3.片内存储管理单元(MMU)
32位地址,可寻址4GB物理地址。 大多数PC的物理内存配置远小于4GB。 但应用程序却可能需要庞大的地址空间。 因此,在操作系统中提供了虚拟存储器管理机 制,而这要求硬件支持。
图2-4 8086微处理器基本执 IA-32结构微 处理器与8086
通用寄存器:这八个寄存器能用于存放操作数和指 针。
段寄存器:这些寄存器最多能保存四个段选择子。
FLAGS(程序状态和控制)寄存器:FLAGS寄存 器报告正在执行的程序的状态,并允许有限地(应 用程序级)控制处理器。
普通高等学校计算机教育“十三五”
微机原理与接口技术(第3版)
周明德 张晓霞 兰方鹏 著式
内容导航
CONTENTS
2.1 IA-32微处理器是8086的延伸 2.2 8086的功能结构 2.3 8086微处理器的执行环境 1.4 微型计算机的结构
2.1 IA-32微处理器是8086的延伸第二章 IA-32结构微
2.引入片内缓存(Cache)
为了减少从存储器中取指令与数据的时间, 利用指令执行的局部性原理,把近期可能要用到 的指令与数据放在工作速度比主存储器更快(当 然,容量更小)的缓存中。
2.1 8086的功能结构
第二章 IA-32结构微 处理器与8086
8086 CPU从功能上来说分成两大部分:总线 接口单元(Bus Interface Unit,BIU)和执行单 元(Execution Unit,EU)。
2.1.1 8086功能的扩展
2.1.1 8086功能的扩展
第二章 IA-32结构微 处理器与8086
2.从实模式至保护模式
从80286开始,在80386中真正完善保护模式。 3.片内存储管理单元(MMU)
32位地址,可寻址4GB物理地址。 大多数PC的物理内存配置远小于4GB。 但应用程序却可能需要庞大的地址空间。 因此,在操作系统中提供了虚拟存储器管理机 制,而这要求硬件支持。
图2-4 8086微处理器基本执 IA-32结构微 处理器与8086
通用寄存器:这八个寄存器能用于存放操作数和指 针。
段寄存器:这些寄存器最多能保存四个段选择子。
FLAGS(程序状态和控制)寄存器:FLAGS寄存 器报告正在执行的程序的状态,并允许有限地(应 用程序级)控制处理器。
普通高等学校计算机教育“十三五”
微机原理与接口技术(第3版)
周明德 张晓霞 兰方鹏 著式
内容导航
CONTENTS
2.1 IA-32微处理器是8086的延伸 2.2 8086的功能结构 2.3 8086微处理器的执行环境 1.4 微型计算机的结构
2.1 IA-32微处理器是8086的延伸第二章 IA-32结构微
2.引入片内缓存(Cache)
为了减少从存储器中取指令与数据的时间, 利用指令执行的局部性原理,把近期可能要用到 的指令与数据放在工作速度比主存储器更快(当 然,容量更小)的缓存中。
2.1 8086的功能结构
第二章 IA-32结构微 处理器与8086
8086 CPU从功能上来说分成两大部分:总线 接口单元(Bus Interface Unit,BIU)和执行单 元(Execution Unit,EU)。
2.1.1 8086功能的扩展
第二章 IA-32结构微处理器

15
AH BH CH DH
SP BP SI DI IP PSW CS DS SS ES
AL BL CL DL
数据寄存器
指针寄存器
变址寄存器
通 用 寄 存 器
控制寄存器
段寄存器
0
2.1 8086处理器结构
2.1.2 8086的内部寄存器结构 通用寄存器包含数据寄存器、地址指针寄存 器和变址寄存器
2.1.2 8086的内部寄存器结构 1、通用寄存器
变址寄存器SI和DI
SI:源变址寄存器;DI:目的变址寄存器; SI和DI一般与DS联合,可以确定源存储单元和目的 存储单元的物理地址; SI和DI具有自动增加或减小1的能力;
2.1 8086处理器结构
2.1.2 8086的内部寄存器结构 2、段寄存器
2.1 8086处理器结构
2.1.2 8086的内部寄存器结构 3、控制寄存器
位编号 15 14 13 12 11 10 9 名 称 8 7 6 5 4 AF 3 2 PF 1 0 CF OF DF IF TF SF ZF
条件码标志包含CF、PF、AF、ZF、SF、OF。
条件码标志的值一般由处理器根据运算结果自动设置, 其值与操作数有关;
AF,Auxiliary Carry Flag,辅助进位位
表征运算过程中第3位是否向第4位发生进位;
15 14 … 4 3 2 1 0
AF
PF,Parity Flag,奇偶效验位
当前累加器中所存放的数的奇偶效验情况; PF = 1,低8位中有偶数个‘1’; PF = 0,低8位中有奇数个‘1’;
1、总线接口单元
寄存器包括:CS、DS、SS、ES和IP; 20位地址加法器 6个字节的指令队列 总线控制接口 处理器与外部总线的接口电路 外部总线包括地址总线(20),数据总线(16)及 控制总线。
AH BH CH DH
SP BP SI DI IP PSW CS DS SS ES
AL BL CL DL
数据寄存器
指针寄存器
变址寄存器
通 用 寄 存 器
控制寄存器
段寄存器
0
2.1 8086处理器结构
2.1.2 8086的内部寄存器结构 通用寄存器包含数据寄存器、地址指针寄存 器和变址寄存器
2.1.2 8086的内部寄存器结构 1、通用寄存器
变址寄存器SI和DI
SI:源变址寄存器;DI:目的变址寄存器; SI和DI一般与DS联合,可以确定源存储单元和目的 存储单元的物理地址; SI和DI具有自动增加或减小1的能力;
2.1 8086处理器结构
2.1.2 8086的内部寄存器结构 2、段寄存器
2.1 8086处理器结构
2.1.2 8086的内部寄存器结构 3、控制寄存器
位编号 15 14 13 12 11 10 9 名 称 8 7 6 5 4 AF 3 2 PF 1 0 CF OF DF IF TF SF ZF
条件码标志包含CF、PF、AF、ZF、SF、OF。
条件码标志的值一般由处理器根据运算结果自动设置, 其值与操作数有关;
AF,Auxiliary Carry Flag,辅助进位位
表征运算过程中第3位是否向第4位发生进位;
15 14 … 4 3 2 1 0
AF
PF,Parity Flag,奇偶效验位
当前累加器中所存放的数的奇偶效验情况; PF = 1,低8位中有偶数个‘1’; PF = 0,低8位中有奇数个‘1’;
1、总线接口单元
寄存器包括:CS、DS、SS、ES和IP; 20位地址加法器 6个字节的指令队列 总线控制接口 处理器与外部总线的接口电路 外部总线包括地址总线(20),数据总线(16)及 控制总线。
微机原理第2章-IA32微处理器的功能结构

2.3.4 基本程序执行寄存器
0
15
16
31
0
15
0
15
16
31
7
8
AL
BL
CL
DL
AH
BH
CH
DH
EAX
EBX
ECX
EDX
ESP
EBP
ESI
EDI
1.通用寄存器
EAX 累加器寄存器:存放操作数和结果 EBX 基址寄存器:在DS段中的数据指针;存放操作数 ECX 计数寄存器:串和循环操作的计数器 EDX 数据寄存器:I/O指针
逻辑地址 是程序中使用的地址,它由段基址和段内偏移值所组成,段基址与段内偏移值都为16位的二进制数。
物理地址 也叫实际地址或绝对地址,是CPU访问存储器时实际使用的地址,为20位地址。 物理地址=段基址×16+段内偏移地址。
1
2
存储器物理地址的形成
【例】各独立段的分配情况示例。
设CS=B000H、DS=1CDEH、SS=4200H、ES=0150H,它们分别为代码段、数据段、堆栈段和附加段的段首址。自每个段首址开始,各段均占64KB的范围,各段之间互不重叠。
基本寄存器:在程序执行时暂时保存中间结果;在进行算术运算和逻辑运算时,通用寄存器任何一个都可以作为源操作数或目的操作数。
指针和变址寄存器
ESI 串操作的源指针 EDI 串操作的目标指针 ESP 堆栈指针 EBP 堆栈上数据指针
通用寄存器的特殊用途和隐含性质
6个段寄存器,保存16位段基址: CS 代码段 SS 堆栈段 DS 数据段 ES 附加段 FS 数据段F GS数据段G
指令的重叠操作
2.2.2 80386的功能结构
0
15
16
31
0
15
0
15
16
31
7
8
AL
BL
CL
DL
AH
BH
CH
DH
EAX
EBX
ECX
EDX
ESP
EBP
ESI
EDI
1.通用寄存器
EAX 累加器寄存器:存放操作数和结果 EBX 基址寄存器:在DS段中的数据指针;存放操作数 ECX 计数寄存器:串和循环操作的计数器 EDX 数据寄存器:I/O指针
逻辑地址 是程序中使用的地址,它由段基址和段内偏移值所组成,段基址与段内偏移值都为16位的二进制数。
物理地址 也叫实际地址或绝对地址,是CPU访问存储器时实际使用的地址,为20位地址。 物理地址=段基址×16+段内偏移地址。
1
2
存储器物理地址的形成
【例】各独立段的分配情况示例。
设CS=B000H、DS=1CDEH、SS=4200H、ES=0150H,它们分别为代码段、数据段、堆栈段和附加段的段首址。自每个段首址开始,各段均占64KB的范围,各段之间互不重叠。
基本寄存器:在程序执行时暂时保存中间结果;在进行算术运算和逻辑运算时,通用寄存器任何一个都可以作为源操作数或目的操作数。
指针和变址寄存器
ESI 串操作的源指针 EDI 串操作的目标指针 ESP 堆栈指针 EBP 堆栈上数据指针
通用寄存器的特殊用途和隐含性质
6个段寄存器,保存16位段基址: CS 代码段 SS 堆栈段 DS 数据段 ES 附加段 FS 数据段F GS数据段G
指令的重叠操作
2.2.2 80386的功能结构
数字电子技术 第2章 IA-32结构微处理器与8086

2.1 IA-32微处理器是8086的延伸
Intel 8086
功能扩展
性能提高
IA-32
6
物理与电子电气工程学院
2.1 IA-32微处理器是8086的延伸
16位扩展为32位 实模式到保护模式
浮点支持
功能扩展
MMX技术
流SIMD扩展(SSE)
MMU
7
物理与电子电气工程学院
2.1 IA-32微处理器是8086的延伸
器与外界设备传送数据.
BX(base):基址寄存器,常用于地址索引; CX(count):计数寄存器,常用于计数/保存计算值,如在移
位指令,循环(loop)和串处理指令中用作隐含的计数器. DX(data):数据寄存器,常用于数据传递。
15
物理与电子电气工程学院
1.通用寄存器
SP(Stack Pointer):堆栈指针,与SS配合使用,可指向目 前的堆栈位置; BP(Base Pointer):堆栈上的数据指针,可用作SS的一个
流水线技术
性能提高
片内缓存
8
物理与电子电气工程学院
2.2 8086的功能结构
通用 寄存 器
AH BH CH DH AL BL CL DL SP BP SI DI
16位
地址 位
16位
输入/输出 控制电路
存 储 器 接 口
ALU
标志寄存器
执行部分 控制电路
mov al,10000001B add al,1 结果: (al)=10000010B
24
物理与电子电气工程学院
3. FLAGS寄存器
(4) CF(Carry Flag)进位标志位
flag的第0位是CF。 一般情况下,在进行无符号数运算的时候,它记 录了运算结果的最高有效位向更高位的进位值, 或从更高位的借位值。
IA-32结构微处理器与8086

第1章 概述 第2章 IA-32 结构微处理器与 8086 2.3 8086微处理器的执行环境
2.3.2 基本的程序执行寄存器:
通用寄存器 段寄存器 程序状态和标志寄存器 IP寄存器
汇编助记符:
16位寄存器的汇编助记符为 AX~DX、SI、DI、BP 8位寄存器的汇编助记符为 AH、AL、BH、BL、CH、CL、DH、DL AH、AL是AX的高/低8位,设:AX=5678H 则: AH=56H,AL=78H 反之,当89HAH,90HAL后 则: AX=8990H
2.段寄存器:
D15 D0
CS SS DS ES FS GS
代码段寄存器 堆栈段寄存器 数据段寄存器 附加数据段(附加段)寄存器 附加数据段(附加段)寄存器 附加数据段(附加段)寄存器
3.标志寄存器(F): 为16位,包含一组状态标志、一个控制标志一个系统 标志;
(1)状态标志:CF(进位标志)、AF(辅助进位标志)、 OF(溢出标志)、 SF(符号标志)、 PF(奇偶标注)、 ZF(零标志)
在实模式下,段寄存器存放相应逻辑段的段基址
逻辑段 代码段 堆栈段 数据段 附加段 段基址存放在 偏移地址存放在 CS IP SS SP DS 根据不同的寻址方式 ES/FS/GS 选择BX、SI、DI
代码段:CS*24+IP=指令单元的物理地址 一条指令的一个字节取出后,IP自动加1,指向 下一字节。 堆栈段:SS*24+SP=栈顶单元的物理地址 数据段:DS*24+偏移地址=数据单元的物理地址
2.存储器的分段管理: 8086对存储器采用分段管理,一个单元的物 理地址由两部分组成,写成: 段基址∶偏移地 址。 10000H 一 设某单元物理地址为12345H, 个 则: 逻 12345H= 1000H *24+ 2345H 辑 段基址 偏移地址 12345H 段 逻辑地址
第02章 2_IA-32结构微处理器与8086

(4)复位/中断控制( RESET,INTR,NMI) RESET是复位信号输入,它为高电平时强制 8086微处理器从已知的初始状态开始执行程序。 复位后8086微处理器总是从地址为FFFF0H的存 储单元开始执行指令。 INTR是可屏蔽中断请求输入;高电平时表示有 外部中断请求。 NMI是非屏蔽中断请求输入 。
第2章 IA-32结构微处理器和8086
标志寄存器FLAGS
第2章 IA-32结构微处理器和8086
举例
思考题:以下的几个 位十六进制数相加 位十六进制数相加, 思考题:以下的几个4位十六进制数相加,会使得 8088状态寄存器的以下几位为什么值? 状态寄存器的以下几位为什么值? 状态寄存器的以下几位为什么值 C000H 4008H 8000H + 8000H + C000H + 4008H 0000H 8000H 8010H 1 0 1 1 0 1 0 1 1 0 0 1 0 0 1 0 1 1 0808H + C000H C808H 0 0 0 0 1 0
BUS
忙碌
忙碌
忙碌
忙碌
忙碌
忙碌
t0
t1
t2
t3
t4
t5
6个周期 执行了5条 指令
第2章 IA-32结构微处理器和8086
2.2 8086的功能结构 的功能结构
• 8086 CPU从功能上来说分成两大部 分:总线接口单元(Bus Interface Unit, BIU)和执行单元(Execution Unit, EU)。 • BIU负责8086 CPU与存储器之间的 信息传送。 • EU负责指令的执行。
ALU 标志 执行部件
总线接口部件
第2章 IA-32结构微处理器和8086
《微型计算机原理及应用》课件第 2 章 IA-32结构微处理器

2.3 8086微处理器的执行环 境
本节描述汇编语言程序员看到的8086 处理器的执行环境。它描述处理器如何 执行指令及如何存储和操作数据。执行 环境包括内存(地址空间)、通用数据 寄存器、段寄存器、标志寄存器 (EFLAGES)和指令指针寄存器等。
2.3.1 基本执行环境概要
在8086处理器上执行的程序或任务都 有一组执行指令的资源用于存储代码、 数据和状态信息。这些资源构成了8086 处理器的执行环境。 地址空间 8086处理器上运行的任一任务或程序 能寻址1MB(220)字节的线性地址空间。
二、执行部件EU
1. EU的功能:
负责指令的执令。译码指令并利用 内部寄存器和ALU来处理数据。
2. 结构组成
四个通用寄存器AX,BX,CX,DX。 四个专用寄存器: 基数指针寄存器BP,堆栈指针寄存器SP, 源变址寄存器SI,目的变址寄存器DI。
标志寄存器FR。 算术逻辑单元ALU。
这些通用寄存器中的前四个,即AX、 BX、CX、DX通常称为数据寄存器,用以 存放操作数。后四个,即SI、DI、BP、 SP通常称为指针寄存器。虽然它们也可 以存放操作数,但主要用作地址指针。 数据寄存器AX、BX、CX和DX又可以分别 作为AH、BH、CH和DH(高字节)以及 AL、BL、CL和DL(低字节)8位寄存器 引用,如图2-5所示。
8086处理器的基本执行环境如图2-4所示。
2.3.2 基本的程序执行寄存器
处理器为了应用程序编程提供了如图2-4所示的14个基本程序 执行寄存器。 这些寄存器能分组如下: 通用寄存器 这八个寄存器能用于存放操作数和指针。 段寄存器 这些寄存器最多能保存四个段选择子。 FLAGS寄存器 FLAGS寄存器报告正在执行的程序的状 态,并允许有限地(应用程序级)控制 处理器。 IP寄存器 IP寄存器包合下一条要执行的指令的16位指针。
第二章 IA-32结构微处理器

控制总线
通用 寄存器组
地址 寄存器组
地址总线
内部数据总线
数据总线
暂存器
累加器
ALU
1.算术逻辑单元(运算器) 2.寄存器组 3.指令处理单元(控制器)
2.1.2 8088微处理器的功能结构
从程序员和使用者的角度看到的结构 ,又 称编程结构。 8088的内部结构从功能上分成两个单元
1. 总线接口单元BIU(Bus Interface Unit) 负责CPU对存储器和外设进行访问,即负责与 存储器及I/O接口之间的数据传送操作 2. 执行单元EU(Execution Unit) 负责指令的译码、执行和数据的运算
第二章
IA-32结构微处理器
第2章:IA-32结构微处理器教学重点
8088/8086微处理器结构
1.基本结构 2.功能结构 3.寄存器结构 4.存储器结构
2.1 8086/8088微处理器
8086/8088微处理器是Intel公司推出的第三代CPU芯片,它们的内部结构基本 相同,都采用16位结构进行操作及存储器寻址,但外部性能有所差异,两种 处理器都封装在相同的40脚双列直插组件(DIP)中。 8086微处理器的一般性能特点: 1、16位的内部结构,16位双向数据信号线; 2、20位地址信号线,可寻址1M字节存储单元; 3、较强的指令系统; 4、利用第16位的地址总线来进行I/O端口寻址,可寻址64K个I/O端口; 5、中断功能强,可处理内部软件中断和外部中断,中断源可达256个; 6、单一的+5V电源,单相时钟5MHz。
控制标志--可由程序根据需要用指令设置, 用于控制处理器执行指令的方式
DF IF TF
标志寄存器FLAGS
15 12 11 10 9 8 7 6 5 4 3 2 1 0
第 2 章 IA-32结构微处理器

2.1.1 Intel 8086微处理器
从历史的观点看,IA-32结构微处理器 同时包括16位微处理器和32位微处理器。 目前,对于许多操作系统和十分广泛的应用 程序,32位IA-32结构是最流行的计算机结 构。 IA-32结构的最重要的成就之一,是在 从1978年开始的那些处理器上建立的目标 程序仍然能够在IA-32结构系列的最新的处 理器上执行。
5. EU控制电路:它是控制、定时与状态逻辑电路,接收
从BIU中指令队列取来的指令,经过指令译码形成各种定时控
制信号,对EU的各个部件实现特定的定时操作。
8088CPU内部结构与8086基本相似,两者的执行单元EU完
全相同,其指令系统,寻址方式及程序设计方法都相同,所以
两种CPU完全兼容。区别仅在于总线接口单元BIU,归纳起来 主要有以下几个方面的差异:
3.20位地址加法器 8086/8088CPU在对存储单元进行访问以读取指令或读/写 操作数时,必须在地址总线上提供20位的地址信息,以便选中
对应的存储单元。那么,CPU是如何产生20位地址的呢?
CPU提供的用来对存储单元进行访问的20位地址是由BIU
中的地址加法器产生的。
存储器中每个存储单元的地址可有以下两种表示方式: 逻辑地址:其表达形式为“段地址:段内偏移地址”。段 内偏移地址又称为“有效地址EA(Effective Address)。在读指令
1. 8086/8088 CPU的内部结构
执行部件EU 16 寄存器阵列 ALU及 标志寄存器 控制电路 数据及操作数 地址加法器 总线控 制电路 指令流队列 指令码 多路复用 地址/数据总线 指令译码器 8086:16位 8088:8位 段寄存器及指 令指针 总线接口部件BIU
IA-32结构微处理器

OF DF IF TF SF ZF
AF
PF
CF
EFLAGS寄存器包含以下标志: (1) 状态标志 EFLAGS寄存器的状态标志(位0、2、4、6、7 和位 11)指示算术指令,例如ADD、SUB、MUL 和DIV 指令的结果的一些特征。状态标志的功能如下: ① 进位标志CF(Carry Flag) 进位标志CF又简称为C(注: 以下各标志位用简 称表述)。当结果的最高位(字节操作时的D7或字操 作时的D15、双字操作的D31)产生一个进位或借位, 则C=1,否则C=0。这个标志主要用于多字节数的 加、减法运算。移位和循环指令也能够把存储器和寄 存器中的最高位(左移时)或者最低位(右移时)放入进 位标志C中。
条件指令Jcc(在条件码cc为真时,发生 转移)、SETcc(在条件码cc为真时,设 置)、LOOPcc 和CMOVcc(条件传 送),用一个或多个状态标志作为条件 码,并且在转移、设置字节或结束循环时 测试它们。 条件可以分成以下两大类: 根据单个标志位所形成的条件; 根据若干个标志位的逻辑运算所形成的条 件。
本节描述汇编语言程序员看到的IA-32 结构微处理器的执行环境,它描述处理器 如何执行指令以及如何存储和操作数据。 执行环境包括内存(地址空间)、通用数 据寄存器、段寄存器、标志寄存器和指令 指针寄存器等。
2.3.1 操作模式
IA-32结构微处理器支持三种操作 模式:实地址模式、保护模式和系统 管理模式。操作模式确定哪些指令和 结构特性是可以访问的。
(1) 实地址模式
纯16位无保护执行环境。实模式将整 个物理内存看成分段的区域,程序代码和 数据位于不同区域,系统程序和用户程 序没有区别对待,而且每一个指针都是 指向“实在”的物理地址。在系统上电或复 位(reset)后,处理器总是处在实地址 模式。
chapter2 Intel 80x86 系列微处理器简介

Intel Pentium Pro处理器是基于P6微结构的第一个处理器。P6处理器 系统随后 的成员是Intel Pentium II、Intel Pentium II Xeon(至强)、 Intel Celeron(赛扬)、Intel Pentium III 和Intel Pentium III Xeon( 至强)处理器。
18 18
第2章 IA-32结构微处理器
奔腾 II和奔腾 III
Intel Pentium II 处理器把 MMX 技术加至 P6 系列处理器,并具 有新的包装和若干硬件增强。第一级数据和指令 caches 每个扩展至 16 K 字节,支持二级 cache 的尺寸为 256 K 字节、512 K 字节和1 M 字节。
第2章 IA-32结构微处理器
Intel 80x86 系列微处理器简介 认识典型的CPU微处理器 ●了解80x86 系列微处理器。 ●了解典型的CPU芯片。 ●熟悉Intel系列微处理器。
1 1
第2章 IA-32结构微处理器
典型的CPU微处理器外观图 从1971年Intel公司推出的4位微处理器Intel4004以来,经 过30多年的发展,CPU已经从4位发展到目前正在使用的 64位。发展过程中一些典型的CPU芯片如图所示。
1985年10月Intel公司推出了32位微处理器Intel 80386。 1989年4月Intel公司推出了32位微处理器Intel 80486。 1993年3月Intel公司推出了32位微处理器Intel Pentium(也称 80586 )。 1995年11月推出32位微处理器Intel Pentium Pro(也称为80686)。 1997年1月Intel公司推出了32位微处理器Intel Pentium with MMX。 1997年5月Intel公司推出了32位微处理器Intel Pentium Ⅱ。
18 18
第2章 IA-32结构微处理器
奔腾 II和奔腾 III
Intel Pentium II 处理器把 MMX 技术加至 P6 系列处理器,并具 有新的包装和若干硬件增强。第一级数据和指令 caches 每个扩展至 16 K 字节,支持二级 cache 的尺寸为 256 K 字节、512 K 字节和1 M 字节。
第2章 IA-32结构微处理器
Intel 80x86 系列微处理器简介 认识典型的CPU微处理器 ●了解80x86 系列微处理器。 ●了解典型的CPU芯片。 ●熟悉Intel系列微处理器。
1 1
第2章 IA-32结构微处理器
典型的CPU微处理器外观图 从1971年Intel公司推出的4位微处理器Intel4004以来,经 过30多年的发展,CPU已经从4位发展到目前正在使用的 64位。发展过程中一些典型的CPU芯片如图所示。
1985年10月Intel公司推出了32位微处理器Intel 80386。 1989年4月Intel公司推出了32位微处理器Intel 80486。 1993年3月Intel公司推出了32位微处理器Intel Pentium(也称 80586 )。 1995年11月推出32位微处理器Intel Pentium Pro(也称为80686)。 1997年1月Intel公司推出了32位微处理器Intel Pentium with MMX。 1997年5月Intel公司推出了32位微处理器Intel Pentium Ⅱ。
第2章 IA-32结构微处理器

5-5
微处理器的发展趋势
复杂还是简单:另一个角度看问题
微处理器内部结构越来越复杂:不论是RISC还是CISC 通用微处理器在某些领域不能“通用”:如超级计算机 IBM BlueGene:使用PowerPC440(一个结构简单、性能并 不高的CPU Core),进行浮点SIMD扩展,采用双核结构 (只有700MHz),构成了世界上最快的计算机系统 由IBM、Sony和Toshiba三家联合开发的游戏机用CPU,包 括惊人的9个核心(一个Power核心+8个计算核心),工 作频率在3.2GHz以上,还可应用在其它领域 这两种微处理器(尽管一定程度上是专用的CPU),说明简 单也可以高效,取决于体系结构和应用目标 不是主流、但很重要的高性能微处理器发展趋势:更加简单 但数量更多的核心,面向一定范围的应用
2.4.2 Cache 将主存储器中急需执行或处理的很小一部分代码 或数据调入Cache中,然后,微处理器直接与这种高 速的Cache进行指令调入和数据交换,这样,就比访 问主存储器快得多,基本能够实现与微处理器的同步。 当微处理器要从主存储器中读取指令或数据时, 首先检查要访问的内容是否在Cache中,若在,则从
4.指令指针
指令指针(EIP)寄存器包含下一条要执行的指令在当前码 段中的偏移。通常,它是顺序增加的,从一条指令边界至下一条 指令,但在执行JMP、Jcc、CALL、RET和IRET等指令时,它 可以向前或向后移动若干条指令。 8086的指令指针IP是EIP的低16位。由于在8086中地址指针 是16位的,故指令指针也是16位的。其功能相同。
2.5.4 基本的程序执行寄存器
处理器为了通用系统和应用程序编程提供了16个
基本程序执行寄存器,如图2-20所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2章
IA-32结构微处理器与8086
2015-5-15
1
2.1 2.2
IA-32微处理器是8086的延伸 8086的功能15
2
2.1 IA-32 微处理器是8086的延伸
IA-32结构微处理器的增长基本上按摩尔定律发 展,已经经历许多代。 但从使用者(包括程序员)的角度来看,它是以 8086处理器为基础,是一个兼容的微处理器系 列,是8086在功能上和性能上的延伸。
图2-2
2015-5-15
8位微处理器的执行顺序
23
8086CPU中,取指部分BIU与执行指令部分EU 是分开的,取指和执行可以重叠进行。 在一条指令的执行过程中,可取出下一条(或 多条)指令,在指令流队列中排队。在一条指 令执行完以后可立即执行下一条指令。
图2-3
2015-5-15
8086的执行顺序
35
2)SI、DI、BP、SP 16位指针寄存器,只能以字为单位使用 可存放操作数 主要用作地址指针。
2015-5-15
36
指针寄存器的专用目的 SP(Stack Pointer)堆栈指针寄存器
与SS寄存器联用指示栈顶的偏移地址 与SS寄存器联用确定堆栈段中的某一存储单元的地址 常用于串操作。与DS联用确定数据段中某一存储单元的地址,可自 动增减量
2015-5-15
10
6. 流SIMD扩展(SSE)
自Pentium III处理器开始,在IA-32微处理器 中引进了流SIMD(单指令多数据)扩展(SSE) 技术。 SSE扩展把由Intel MMX引进的SIMD执行模式 扩展为新的128位XMM寄存器和能在包装的单 精度浮点数上执行SIMD操作。
BP(Base Pointer Register)基址指针寄存器
SI(Source Index Register)源变址寄存器
DI(Destination Index Register)目的变址寄存 器
同SI
2015-5-15
37
2.段寄存器 16位寄存器 专门存放逻辑段的起始地址 CS(Code Segment)代码段 DS(Data Segment)数据段 SS(Stack Segment)堆栈段 ES(Extra Segment)附加段
2.1.2 8086性能的提高
1. 利用流水线技术提高操作的并行性
提高性能两方面 利用超大规模集成电路的工艺与制造技术提高 芯片的主频。即减少一个时钟周期的时间。 缩短执行指令的时钟周期数。
2015-5-15
13
在8086中,利用流水线把取指令与执行指令重 叠,减少了等待取指令的时间,从而使大部分指 令的执行为四个时钟周期。 80386利用芯片内由6个能并行操作的功能部件 组成,从而使执行一条指令缩短为两个时钟周期。 80486将80386处理器的指令译码和执行部件 扩展成五级流水线,进一步增强了其并行处理能 力,在五级流水线中最多可有五条指令被同时执 行,每级都能在一个时钟周期内执行一条指令, 80486微处理器最快能够在每个CPU时钟周期 内执行一条指令。
2015-5-15
图2-1
8086的功能结构
21
8086CPU从功能上分成两大部分 总线接口单元BIU(Bus Interface Unit) 负责8086CPU与存储器之间的信息传送。
从内存的指定单元取出指令,送至指令流队列中排队。 从内存的指定区域取出执行指令时所需的操作数,传送 给EU部分去执行。
30
2015-5-15
8086的寄存器组
15
8 7
0
2015-5-15
31
1、通用寄存器 八个16位通用寄存器 AX、BX、CX、DX SI、DI、BP、SP
用途 逻辑和算术操作的操作数 用于地址计算的操作数 内存指针
32
2015-5-15
1)AX、BX、CX、DX 16位数据寄存器 存放操作数 可以字节(8位)的形式访问 AH、BH、CH、DH AL、BL、CL、DL
16
2015-5-15
在处理器芯片中实现了缓存。
目前,通常在处理器芯片上有指令和数据分开的 一级缓存与指令与数据混合的二级缓存。且缓存 的容量越来越大。从而进一步提高了处理器的性 能。
2015-5-15
17
8086是IA-32系列处理器的基础。 任一种IA-32处理器芯片在上电后,就是处在 8086的实模式。根据需要,用指令进入各种操 作模式。 学习IA-32处理器必须学习掌握8086,也只能 从8086入手。
处理器的执行环境:指汇编语言程序员看到的处 理器如何执行指令及如何存储和操作数据。 执行环境包括 内存(地址空间) 通用数据寄存器 段寄存器 标志寄存器(EFLAGES) 指令指针寄存器等
26
2015-5-15
2.3.1
基本执行环境概要
8086处理器的执行环境:在8086处理器上执行 的程序或任务所需要的一组执行指令的资源,用 于存储代码、数据和状态信息。
2015-5-15
38
使用分段存储模式时,每一个段寄存器用不同的 段选择子加载,每个段寄存器指向线性地址空间 中的不同的段。
2015-5-15
27
1、地址空间 20) 8086处理器上运行的任一任务或程序能寻址1MB(2 字节的线性地址空间。 2、基本程序执行寄存器 八个通用寄存器 四个段寄存器 标志寄存器FLAGS IP(指令指针)寄存器 3、堆栈(stack) 为支持过程或子程序调用并在过程或子程序之间传递参数 堆栈定位在内存中 4、I/O端口 支持数据在处理器和输入输出(I/O)端口之间的传送。
19
2015-5-15
2.2
8086的功能结构
8086 Intel系列的16位微处理器 16根数据线 20根地址线 可处理8位或16位数据 寻址1M字节的存储单元和64K的I/O端口。 8088是准16位微处理器,内部结构与8086相 同,但外部数据总线只有8条。
20
2015-5-15
2015-5-15 28
2.3.2
基本的程序执行寄存器
基本程序执行寄存器:为了应用程序编程所提供, 组成执行通用指令的基本执行环境。 通用指令 执行字节、字整型数的基本整数算术运算 处理程序流程控制 在字节串上操作并寻址存储器
2015-5-15
29
寄存器分组如下 1、通用寄存器 八个,用于存放操作数和指针。 2、段寄存器 最多能保存四个段选择子。 3、FLAGS(程序状态和控制)寄存器 报告正在执行的程序的状态,并允许有限 地(应用程序级)控制处理器。 4、IP(指令指针)寄存器 下一条要执行的指令的16位指针。
2015-5-15
18
从指令,从编程来说,几乎没有用汇编语言来使 用浮点指令、MMX指令与XMM指令的,都是通 过高级语言来使用这些指令的。
绝大部分程序员(除了编写操作系统代码的外), 面对IA-32处理器的指令,实际上是面对8086 指令。
因此,本书从8086入手来学习与掌握IA-32处 理器。
4
2015-5-15
1985年,Intel公司推出了第一个32位的微处 理器 -- 80386,开创了微处理器的32位时代。 32位地址能寻址4GB物理地址。
2015-5-15
5
2. 从实模式至保护模式
1981年,IBM公司刚推出IBM-PC时,主频是 5MHz,内存是64KB-128KB,没有硬盘,只 有单面单密度的软盘,到了PC/XT,才有 10MB硬盘。在这样的硬件资源下,采用的操 作系统是PC-DOS(MS-DOS)。这是单用户、 单任务的磁盘操作系统。操作系统本身没有程 序隔离、没有保护。这是DOS遭受病毒泛滥的 内因。
6
2015-5-15
随着PC机的大量普及,随着硬件性能的迅速提 高。要求有能保护操作系统核心软件的多任务操 作系统。为使这样的操作系统能在微型计算机系 统中应用与普及,要求微处理器本身为这样的操 作系统提供支持。 从80286开始,在80386中真正完善保护模式。 在保护模式下,程序运行于四个特权级。这样, 可以实现操作系统核心程序与应用程序的严格的 隔离。保护模式支持多任务机制,任务之间完全 隔离。
2015-5-15
33
数据寄存器的专用目的 AX(Accumulator)
累加器、I/O指令使用AX与外设传送信息
BX(Base)
常用作基址寄存器
循环、串指令中的计数器 与AX组合存放双字,存放I/O的端口地址
CX(Count)
DX(Data)
2015-5-15
34
2015-5-15
2015-5-15
11
奔腾4处理器又进一步扩展为流SIMD扩展2 (SSE2): 用144条新指令扩展Intel MMX技术和SSE扩 展,它包括支持: 128位SIMD整数算术操作。 128位SIMD双精度浮点操作。 128 位指令设计以支持媒体和科学应用。
2015-5-15
12
8
2015-5-15
4. 浮点支持
工程应用、图形处理、科学计算等要求浮点支持 (实数运算)。 自80486芯片开始,在IA-32微处理器中集成了 x87(及其增强)浮点单元。
IA-32结构微处理器与8086
2015-5-15
1
2.1 2.2
IA-32微处理器是8086的延伸 8086的功能15
2
2.1 IA-32 微处理器是8086的延伸
IA-32结构微处理器的增长基本上按摩尔定律发 展,已经经历许多代。 但从使用者(包括程序员)的角度来看,它是以 8086处理器为基础,是一个兼容的微处理器系 列,是8086在功能上和性能上的延伸。
图2-2
2015-5-15
8位微处理器的执行顺序
23
8086CPU中,取指部分BIU与执行指令部分EU 是分开的,取指和执行可以重叠进行。 在一条指令的执行过程中,可取出下一条(或 多条)指令,在指令流队列中排队。在一条指 令执行完以后可立即执行下一条指令。
图2-3
2015-5-15
8086的执行顺序
35
2)SI、DI、BP、SP 16位指针寄存器,只能以字为单位使用 可存放操作数 主要用作地址指针。
2015-5-15
36
指针寄存器的专用目的 SP(Stack Pointer)堆栈指针寄存器
与SS寄存器联用指示栈顶的偏移地址 与SS寄存器联用确定堆栈段中的某一存储单元的地址 常用于串操作。与DS联用确定数据段中某一存储单元的地址,可自 动增减量
2015-5-15
10
6. 流SIMD扩展(SSE)
自Pentium III处理器开始,在IA-32微处理器 中引进了流SIMD(单指令多数据)扩展(SSE) 技术。 SSE扩展把由Intel MMX引进的SIMD执行模式 扩展为新的128位XMM寄存器和能在包装的单 精度浮点数上执行SIMD操作。
BP(Base Pointer Register)基址指针寄存器
SI(Source Index Register)源变址寄存器
DI(Destination Index Register)目的变址寄存 器
同SI
2015-5-15
37
2.段寄存器 16位寄存器 专门存放逻辑段的起始地址 CS(Code Segment)代码段 DS(Data Segment)数据段 SS(Stack Segment)堆栈段 ES(Extra Segment)附加段
2.1.2 8086性能的提高
1. 利用流水线技术提高操作的并行性
提高性能两方面 利用超大规模集成电路的工艺与制造技术提高 芯片的主频。即减少一个时钟周期的时间。 缩短执行指令的时钟周期数。
2015-5-15
13
在8086中,利用流水线把取指令与执行指令重 叠,减少了等待取指令的时间,从而使大部分指 令的执行为四个时钟周期。 80386利用芯片内由6个能并行操作的功能部件 组成,从而使执行一条指令缩短为两个时钟周期。 80486将80386处理器的指令译码和执行部件 扩展成五级流水线,进一步增强了其并行处理能 力,在五级流水线中最多可有五条指令被同时执 行,每级都能在一个时钟周期内执行一条指令, 80486微处理器最快能够在每个CPU时钟周期 内执行一条指令。
2015-5-15
图2-1
8086的功能结构
21
8086CPU从功能上分成两大部分 总线接口单元BIU(Bus Interface Unit) 负责8086CPU与存储器之间的信息传送。
从内存的指定单元取出指令,送至指令流队列中排队。 从内存的指定区域取出执行指令时所需的操作数,传送 给EU部分去执行。
30
2015-5-15
8086的寄存器组
15
8 7
0
2015-5-15
31
1、通用寄存器 八个16位通用寄存器 AX、BX、CX、DX SI、DI、BP、SP
用途 逻辑和算术操作的操作数 用于地址计算的操作数 内存指针
32
2015-5-15
1)AX、BX、CX、DX 16位数据寄存器 存放操作数 可以字节(8位)的形式访问 AH、BH、CH、DH AL、BL、CL、DL
16
2015-5-15
在处理器芯片中实现了缓存。
目前,通常在处理器芯片上有指令和数据分开的 一级缓存与指令与数据混合的二级缓存。且缓存 的容量越来越大。从而进一步提高了处理器的性 能。
2015-5-15
17
8086是IA-32系列处理器的基础。 任一种IA-32处理器芯片在上电后,就是处在 8086的实模式。根据需要,用指令进入各种操 作模式。 学习IA-32处理器必须学习掌握8086,也只能 从8086入手。
处理器的执行环境:指汇编语言程序员看到的处 理器如何执行指令及如何存储和操作数据。 执行环境包括 内存(地址空间) 通用数据寄存器 段寄存器 标志寄存器(EFLAGES) 指令指针寄存器等
26
2015-5-15
2.3.1
基本执行环境概要
8086处理器的执行环境:在8086处理器上执行 的程序或任务所需要的一组执行指令的资源,用 于存储代码、数据和状态信息。
2015-5-15
38
使用分段存储模式时,每一个段寄存器用不同的 段选择子加载,每个段寄存器指向线性地址空间 中的不同的段。
2015-5-15
27
1、地址空间 20) 8086处理器上运行的任一任务或程序能寻址1MB(2 字节的线性地址空间。 2、基本程序执行寄存器 八个通用寄存器 四个段寄存器 标志寄存器FLAGS IP(指令指针)寄存器 3、堆栈(stack) 为支持过程或子程序调用并在过程或子程序之间传递参数 堆栈定位在内存中 4、I/O端口 支持数据在处理器和输入输出(I/O)端口之间的传送。
19
2015-5-15
2.2
8086的功能结构
8086 Intel系列的16位微处理器 16根数据线 20根地址线 可处理8位或16位数据 寻址1M字节的存储单元和64K的I/O端口。 8088是准16位微处理器,内部结构与8086相 同,但外部数据总线只有8条。
20
2015-5-15
2015-5-15 28
2.3.2
基本的程序执行寄存器
基本程序执行寄存器:为了应用程序编程所提供, 组成执行通用指令的基本执行环境。 通用指令 执行字节、字整型数的基本整数算术运算 处理程序流程控制 在字节串上操作并寻址存储器
2015-5-15
29
寄存器分组如下 1、通用寄存器 八个,用于存放操作数和指针。 2、段寄存器 最多能保存四个段选择子。 3、FLAGS(程序状态和控制)寄存器 报告正在执行的程序的状态,并允许有限 地(应用程序级)控制处理器。 4、IP(指令指针)寄存器 下一条要执行的指令的16位指针。
2015-5-15
18
从指令,从编程来说,几乎没有用汇编语言来使 用浮点指令、MMX指令与XMM指令的,都是通 过高级语言来使用这些指令的。
绝大部分程序员(除了编写操作系统代码的外), 面对IA-32处理器的指令,实际上是面对8086 指令。
因此,本书从8086入手来学习与掌握IA-32处 理器。
4
2015-5-15
1985年,Intel公司推出了第一个32位的微处 理器 -- 80386,开创了微处理器的32位时代。 32位地址能寻址4GB物理地址。
2015-5-15
5
2. 从实模式至保护模式
1981年,IBM公司刚推出IBM-PC时,主频是 5MHz,内存是64KB-128KB,没有硬盘,只 有单面单密度的软盘,到了PC/XT,才有 10MB硬盘。在这样的硬件资源下,采用的操 作系统是PC-DOS(MS-DOS)。这是单用户、 单任务的磁盘操作系统。操作系统本身没有程 序隔离、没有保护。这是DOS遭受病毒泛滥的 内因。
6
2015-5-15
随着PC机的大量普及,随着硬件性能的迅速提 高。要求有能保护操作系统核心软件的多任务操 作系统。为使这样的操作系统能在微型计算机系 统中应用与普及,要求微处理器本身为这样的操 作系统提供支持。 从80286开始,在80386中真正完善保护模式。 在保护模式下,程序运行于四个特权级。这样, 可以实现操作系统核心程序与应用程序的严格的 隔离。保护模式支持多任务机制,任务之间完全 隔离。
2015-5-15
33
数据寄存器的专用目的 AX(Accumulator)
累加器、I/O指令使用AX与外设传送信息
BX(Base)
常用作基址寄存器
循环、串指令中的计数器 与AX组合存放双字,存放I/O的端口地址
CX(Count)
DX(Data)
2015-5-15
34
2015-5-15
2015-5-15
11
奔腾4处理器又进一步扩展为流SIMD扩展2 (SSE2): 用144条新指令扩展Intel MMX技术和SSE扩 展,它包括支持: 128位SIMD整数算术操作。 128位SIMD双精度浮点操作。 128 位指令设计以支持媒体和科学应用。
2015-5-15
12
8
2015-5-15
4. 浮点支持
工程应用、图形处理、科学计算等要求浮点支持 (实数运算)。 自80486芯片开始,在IA-32微处理器中集成了 x87(及其增强)浮点单元。