微处理器的性能指标
(1)字长:CPU一次能够处理的二进制位数
(2)主频:代表CPU的运算速度
(3)核心数:指物理上,也就是硬件上存在着几个核心。比如,双核就是包括2个相对独立的CPU核心单元组,四核就包含4个相对独立的CPU核心单元组。
(4)缓存大小:用于减少处理器访问内存所需平均时间的部件。在金字塔式存储体系中它位于自顶向下的第二层,仅次于CPU寄存器。其容量远小于内存,但速度却可以接近处理器的频率。
8086的编程结构
首先看总线接口部件(负责与存储器、I/O端口传送数据):
(一)4个段地址寄存器(用于存放段地址的寄存器):
(1)CS:16位的代码段寄存器(记录代码在内存中的首地址)
(2)DS:16位的数据段寄存器
(3)ES:16位的附加段寄存器(数据段的补充)
(4)SS:16位的堆栈段寄存器
(二)16位的指令指针寄存器IP
(三)20位的地址加法器
(四)6字节的指令队列缓冲器(从存储器、I/O端口得到指令,传给执行部件)
重点:
1、代码地址(20位)=(CS<<4)+IP
2、数据地址(20位)=(DS<<4)+SP/BP
……
然后是执行部件:
(一)四个通用寄存器(主要为了存放计算结果)
(1)AX(AH、AL):累加器
(2)BX(BH、BL):基址寄存器
(3)CX(CH、CL):计数寄存器
(4)DX(DH、DL):数据寄存器
(二)指针和变址寄存器(专用寄存器)
SP、BP、DI、SI:可以和段寄存器相结合形成地址
(三)标志寄存器(16位,仅用9位)
状态标志(6位,红):
OF(overflow):溢出标志
SF(sign):符号标志
ZF(zero):零标志
AF(auxiliary carry):辅助进位标志(主要用于BCD码)
PF(parity):奇偶标志(低8位中所含1的个数)
CF(carry):进位标志
控制标志(3位,蓝)
DF:方向标志(0时串操作过程中地址不断增值)
IF:中断允许标志(控制可屏蔽中断)
TF:单步标志
8086总线周期
T1:发地址信息
T2:总线的高四位输出状态信息
T3:高四位 状态信息;第十六位 数据信息
可能插入Tw
T4:结束
8086的引脚信号和功能
AD0~AD19:数据线与地址线复用
BHE:高8位数据总线允许(决定传输的数据是一个字还是一个字节)
NMI:非屏蔽中断引脚,输入
INTR:可屏蔽中断请求信号,输入
RD :读信号,输出
WR:写信号,输出
(这两个引脚都是通知内存/IO,往外传输)
CLK:时钟,输入(要求占空比为33%)
RESET:复位信号,输入(至少维持4个周期的高电平,所有寄存器清零,而CS设置为FFFFH,复位信号变为低电平时,CPU从FFFF0H开始执行程序,此位置包含跳转指令,调到的位置由主板决定)
READY:“准备好”信号,输入(由所访问的存储器或者IO设备发来的响应信号,直到READY为高电平,才进入T4,完成数据传送过程)
TEST :测试信号,输入
MN/MX :最小和最大模式控制信号,输入
最小模式
引脚图:
ALE:地址锁存信号,输出
DEN:数据允许信号 ,输出(使能)
DT/R :数据收发信号,输出(高电平数据发送)
M/IO :存储器/输入/输出控制信号,输出
HOLD:总线保持请求信号,输入
HLDA:总线保持响应,输出
内存中的分布
1M-1 | 1M-2 |
---|---|
…… | …… |
5 | 4 |
3 | 2 |
1 | 0 |
解释:CPU无法从奇地址读一个字,需要分两次读,但可以从偶地址读一个字;读一个字节则都是一次读