未命名
2023-12-12
2. 8086
工作在最大模式下的信号
访问内存,用内存读,内存写信号,20根地址线全用,空间达到1M字节。访问接口时,只用到16根地址线,最大 64K 字节。
| 名称 | 方向特性 | 功能作用 |
|---|---|---|
| AD15~AD0 | I0,3s | 16位地址/数据复用引脚(8088的高8位仅是地址A5~A8,没有复用),HOLD期间为三态高阻 |
| A19/s6~A16/s3 | 0,3s | 高4位地址/状态复用引脚。访问内存时,A19~A0构成20位地址,可访问1MB 空间;8086的0端口空间只有64K,访问IO时,A19~A16为“0。作为状态信号S6=0指示CPU连在总线上:S5=IF:S4和S3指示当前使用的段寄存器(表2-3) |
| BHE/S7 | 0,3S | 高字节允许/状态复用引脚。在读写操作的T1(输出地址)周期,BHE有效时指示高8位数据总线上的数据有效,ADA=0指示低8位上数据有效,在T2~T4状态,BE/S7输出状态信息,S7在8086中没有定义 |
| RD | 0,3s | 读选通信号,低电平有效。 |
| WR | 0,3S | (最小模式时)写选通信号,低电平有效 |
通用寄存器:

| Reg | 特殊用途 |
|---|---|
| AX,AL | I/O 指令的数据寄存器;乘法指令存放==被乘数==或==积==(隐含),除法指令存放被除数或商(隐含) |
| AH | LAHF指令的目标寄存器(隐含) |
| AL | 数制转换或十进制运算指令和XLAT指令的累加器(隐含) |
| BX | 间接寻址的基址寄存器 XLAT指令的基址寄存器(隐含) |
| CX | 串操作和LOOP指令的计数器(隐含) |
| DX | 字乘法/除法指令存放==乘积高16位==或被除数高位或余数(隐含) 间接寻址的 I/O 端口地址 |
| SI | 串操作的源变址寄存器(隐含)、间接寻址的变址寄存器 |
| DI | 串操作的目标变址寄存器(隐含)、间接寻址的变址寄存器 |
| BP | 对堆栈区间接寻址的基址指针 |
| SP | 堆栈操作的堆栈顶部指针 |
标志寄存器
6个状态标志位
==CF,进位标志==。本次运算最高位有进位或借位发生,则CF=1。==STC(CLC)指令使CF=1(=0),==CMC指令使之取反。(用于无符号数)
PF,奇偶校验标志:低 8 位有偶数个 1 则 PF = 1
AF:辅助进位标志
低 4 位向高四位有进位或借位, AF = 1 (用于 BCD 计算)
ZF:全零标志
==运算结果为 0 时,ZF = 1;==
==SF:符号标志==
运算结果最高位为1,SF = 1 (表示负数)
==OF:溢出标志==
运算产生溢出 (两负数相加为正)(有符号数)时, OF =1
3 个控制标志位
- TF:单步标志
- IF:中断标志:IF = 1 允许,IF=0 禁止 CPU 响应可屏蔽中断 (INTR)
- DF:方向标志,串操作指令的地址变化方向