16位结构的微处理器: 数据总线为16位
主存容量1 MB: 地址总线为20位
(为什么20位对应1MB:1MB = 1024*1024 bytes = 220bytes)
【三种工作模式】
- 实模式: 8086/8088的工作方式,即存储器分段方式
- 保护模式: 80286起 ,虚拟存储管理和多任务管理
- V86模式: 80386起, 同时模拟多个8086工作
【(程序可见的)寄存器】
- 通用寄存器:
数据寄存器:
ax:累加器,速度最快
bx:基址寄存器,指示存储器地址
cx :计数器,循环计数
dx:数据寄存器,存放乘除法结果,在I/o中存放端口地址(IO接口寄存器)
地址寄存器:
sp:堆栈指针寄存器,指向栈顶
bp:基址指针寄存器,指向栈中任意数据
si:源变址寄存器
di:目的变址寄存器
- 专用寄存器:
ip:指令指针寄存器
flags:标志寄存器
zf:零标志,0则置1
sf:符号标志,负号置1
cf:进位标志,有则置1,无符号数溢出判断
of:溢出标志,有则置1,有符号数溢出判断
af:辅助进位标志,低4位有进位则置1
pf:奇偶标志,1的个数为偶数则置1
tf:跟踪标志,单步执行则置1
if:中断允许标志,允许则置1
df:方向标志,si,di自减则置1
- 段寄存器
cs:代码段寄存器
ds:数据段寄存器
ss:堆栈段寄存器
es:附加段寄存器
寄存器归纳总结:
8位寄存器有8个:AL,AH,BL,BH,CL,CH,DL,DH
可以用来指示存储器地址的有10个: BX BP SI DI IP SP DS CS ES SS(没有DX)
既可以用来指示存储器地址又可以用来存放操作数的有5个:BX BP SI DI SP(简而言之,段寄存器和IP不能存放)
执行算数运算时,FLAGS有6个标志位受影响:ZF,SF,CF,OF,AF,PF
约定用于形成堆栈段物理地址的寄存器有:SS,BP,SP
作为指针使用的寄存器:SI,DI,BX,BP,SP
存放端口地址: DX;