Download presentation
Presentation is loading. Please wait.
Published byDjaja Setiawan Modified 5年之前
1
第二章 80x86计算机组织 2.1 80x86微处理器 2.2 基于微处理器的计算机系统构成 2.3 中央处理机 2.4 存储器
2.5 外部设备
2
2.1 80x86微处理器 微处理器的发展概况 参见教材p15的图表 重要参数: 主频 数据总线宽度 地址总线宽度
机器字长: CPU中累加器的二进制位的个数
3
2.2基于微处理器的计算机系统构成 计算机系统包括硬件和软件两部分 2.2.1 硬件 2.2.2 软件
4
2.2.1 硬件 计算机硬件结构图
5
2.2.2 软件 计算机软件构成图
6
2.3 中央处理机 2.3.1 CPU的结构 x86寄存器组
7
2.3.1 CPU的结构 CS SS DS ES IP 内部通信寄存器 AH AL BH BL CH CL DH DL BP SP SI
DI ALU总线 地址形成 与 总线控制 8086/8088总线 暂存寄存器 EU控制逻辑 暂存寄存器 指令队列 暂存寄存器 执行单元(EU) 总线接口单元(BIU)
8
2.3.1 CPU的结构 算术逻辑部件 进行算术和逻辑运算 控制逻辑
负责从存储器取出指令,对指令进行译码分析,从存储器取出操作数,发出执行指令的所有命令,把结果存入存储器,以及控制总线和I/O设备 工作寄存器 存放计算过程中所需要或所得到的各种信息
9
2.3.1 CPU的结构 从内存取指令 从内存取指令 执行指令 从内存取指令 执行指令 执行指令 传统CPU执行指令的过程
10
x86寄存器组 80x86的寄存器分为4种类型: 1.通用寄存器 2.指针和变址寄存器 3.标志寄存器 4.段寄存器
11
1.通用寄存器 AX BX CX DX
12
2.指针与变址寄存器
13
3.标志寄存器 标志寄存器长度为16位,其中9个位有定义。
14
3.标志寄存器 CF, Carry Flag, 进位标志, 两数相加,最高位向前的进位; 或两数相减最高位向前的借位, 举例:
+ 1 - 1
15
3.标志寄存器 AF, Auxiliary Carry Flag, 辅助进位标志, 两数相加,第3位向前的进位; 或两数相减第3位向前的借位, 举例: + -
16
3.标志寄存器 PF, Parity Flag, 奇偶标志, 两数操作(算术或逻辑),结果的低8位中含有1的位数是偶还是奇. 举例:
AND 结果: PF=1
17
3.标志寄存器 ZF, Zero Flag, 零标志, 操作结果的为0则ZF为1. 举例: 1111 1111 0000 0001
+ 操作结果为0, ZF=1 进位1
18
3.标志寄存器 SF, Sign Flag, 符号标志, 操作结果的符号位(即最高位的状态). 举例:
AND 结果: SF=1
19
3.标志寄存器 OF, Overflow Flag, 溢出标志, 算术操作,结果超过目标所能容纳的范围. 举例:
(+126) (+3) (-127) +
20
还有三个标志位: IF, DF, TF暂时不讲,等用到时再讲.
3.标志寄存器 还有三个标志位: IF, DF, TF暂时不讲,等用到时再讲. 标志位在汇编语言程序设计中非常重要,必须掌握好.
21
4.段寄存器
22
2.4存储器 2.4.1 存储单元的地址和内容(重点) 2.4.2 实模式存储器寻址(重点与难点) 2.4.3 保护模式存储器寻址(了解)
23
2.4.1 存储单元的地址和内容 存储单元的地址 1.存储单元: 2.物理地址:唯一标识每个存储单元的地址
24
2.4.1 存储单元的地址和内容 存储单元的内容 注意事项 一个存储单元中存放的信息 2号字节单元中的内容:(0002H)=12H
低字节存入低地址中,高字节存入高地址中。在存储器中以低字节地址作为存储单元的标识,一般以偶地址开始 思考: ((0002H))=?
25
2.4.2 实模式存储器寻址 实模式寻址只适用于8086/8088处理器 1. 存储器地址的分段 (1)分段的原因 2. 段寄存器
(2)分段的规则 (3)物理地址的计算方法 2. 段寄存器
26
(1)分段的原因 机器字长16位,地址总线宽度为20位,解决16位字长的机器里提供20位寻址的问题
27
(2)分段的规则 规则 从0地址开始,每16个字节为一小段,每个段的大小不能超过64KB,段必须从任一小段的首地址开始。 00000,00001,00002……0000E,0000F; 00010,00011,00012……0001E,0001F; …… FFFF0,FFFF1,FFFF2……FFFFE, FFFFF; 特征 第一列为每个小段的段首地址,最低位为0
28
(3)物理地址的计算方法 一个实际地址可以对应多个逻辑地址. CS=9482, IP=2350, 实际地址为:
举例: 一个实际地址可以对应多个逻辑地址.
29
(3)物理地址的计算方法 实模式存储器寻址示意图
30
2.段寄存器 00000H 堆栈段: SS(16位) 0000B→ 堆栈段(2 字节) 数据段: DS(16位) 0000B→
堆栈段(2 字节) 16 数据段: DS(16位) 0000B→ 数据段(2 字节) 16 附加段: ES(16位) 0000B→ 附加段(2 字节) 16 代码段: CS(16位) 0000B→ 代码段(2 字节) 16 FFFFFH
31
2.段寄存器 例:如果代码段中的程序占有8KB存储区,数据段占有2KB存储区,堆栈段只占有256个字节的存储区,那么内存的段区分配是怎样的呢? 见教材p29
32
2.4.3 保护模式存储器寻址 1.逻辑地址 2.描述符 描述段的大小,段在存储器中的位置以及控制和状态信息。由基地址、界限、访问权和附加字段组成
33
2.5 外部设备 外部设备与主机的通信是通过外设接口进行的 ,每个接口包括一组寄存器,这些用途主要有三种 1.数据寄存器 2.状态寄存器
3.命令寄存器
Similar presentations