(一)中央处理机CPU的组成
CPU除了高速缓冲存储器之外党的组成:
(1)算术逻辑部件(arithmetic logic unit,ALU):进行算术还和逻辑运算
(2)控制逻辑:负责对全机的控制工作,包括从存储器取出指令,对指令进行译码分析,从存储器取得操作数,发出执行指令的所有命令,把结果存入存储器,以及对总线及IO的传输控制
(3)工作寄存器:用来存放计算过程中所需要的或所得到的各种信息,包括操作数地址、操作数及运算的中间结果。
(二)80x86寄存器组
寄存器可分为程序可见的寄存器和程序不可见的寄存器两大类。所谓程序可见的寄存器是指在汇编与语言程序设计中用到的寄存器,他们可以用指令来指定。而程序不可见的寄存器则是指一般应用程序设计中不用而用系统所用的寄存器。
以下主要介绍程序可见寄存器
1.通用寄存器
(1)数据寄存器
名称 | 功能 | 常用功能描述 |
AX(accumulator) | 累加器 | 1.在乘除指令中存放操作数;2.所有I/O指令都是用这一寄存器与外部设备传送信息 |
BX(base) | 通用寄存器 | 计算存储器地址时,常用作基址存储器 |
CX(count) | 通用寄存器 | 保存计数值 |
DX(data) | 通用寄存器 | 和AX组合 存放长字长数,DX用于存放高位字 |
(2)指针或变址寄存器
名称 | 功能 | 具体功能描述 |
SP(stack pointer) | 堆栈指针寄存器 | 指示段顶的偏移地址 |
BP(base pointer) | 基址指针寄存器 | 堆栈区中的一个基地址以便访问堆栈中的信息 |
SI(source index) | 源变址寄存器 | 一般与DS连用确定数据段中某一存储单元地址 |
DI(destination index) | 目的变址寄存器 | 一般与DS连用确定数据段中某一存储单元地址 |
2.专用寄存器
8086/8088和80286的专用寄存器包括IP、SP和FLAGS
(1)IP(instruction pointer):指令指针寄存器,用来存放代码段中的偏移地址
(2)SP:详细介绍见上文表格
(3)FLAGS
类别 | 标志 |
条件码标志 | OF(overflow,溢出标志) |
SF(sign flag,符号标志) | |
ZF(zero flag,零标志) | |
CF(carry flag,进位标志) | |
AF(auxiliary carry flag,辅助进位标志) | |
PF(parity flag,奇偶标志) | |
方向标志 | DF(direction flag) |
系统标志 | TF(trap flag,陷阱标志) |
IF(interrupt flag,中断标志) |
3.段寄存器
段寄存器也属于一种专用寄存器,它们专门用于存储器寻址,用来直接或间接地存放段地址
中文含义 | 名称 |
代码段 | code segment,CS |
数据段 | data segment,DS |
堆栈段 | stack segment,SS |
附加段 | extra segment,ES |