如有错误,望批评指正
8086CPU分为指令执行单元(EU),总线接口单元(BIU),上图左右侧
数据寄存器(AX,BX,CX,DX)
数据寄存器用来存放参与运算的操作数和运算结果,寄存器分为两部分XH存放高字段,XL存放低字段,此外各寄存器还有专门用途
AX累加器(Accumulator),乘除法时有专门用途
BX基址寄存器(Base),存放偏移地址(默认使用DS段寄存器)
CX计数寄存器(Count),控制循环程序的执行次数
DX数据寄存器(Data),乘除法及I/O操作时有特殊用途(emmmm重名了)
指针寄存器(SP,BP)和变址寄存器(SI,DI)
用来存放偏移地址
(emmmBX也是存放偏移地址,区别?)
SP堆栈指针寄存器(Stack Pointer)
BP基址指针寄存器(Base Pointer)
SI源变址寄存器(Source Index)
DI目的变址寄存器(Destination Index)
这些都是通用寄存器的话,也具有存放数据的基本功能,和BX的区别目前就想到BX能够存16位,而这几个只能8位
物理地址=段寄存器值*16+偏移地址
就写到这吧,睡了睡了…
2020-05-20
ALE是地址锁存输出信号,ALE实现地址总线与数据总线分离,高电平有效,有效时AD15至AD0,A19/S6至A16/S3输出20位地址信息
8086最大/最小模式,最大模式下有总线控制器8288协助(小弟hhhh)
A0与BHE决定选择哪个存储体
地址是奇/偶就选择奇/偶存储体
A0=0,地址为偶存储体
A0=1,BHE=0,总线高字节有效,选择奇存储体
三种周期及关系