物理地址:
8086有20位地址总线,而存储地址为16位,所以要内部合成20位物理地址。
物理地址=基础地址+偏移地址
基础地址:段地址20H,段地址16(D),更常用的说法是左移四位。
本质含义:某种约定的方式记录数据,比如有四位的字条:2826,也可以用3张三位数的字条记录 200,826,然后约定:实际数字=200*10+826
CS代码段寄存器,IP指令指针寄存器:提供CPU要执行的地址
8086工作流程:
1.CS,IP指向的内存单元读取指令,读取的指令进入指令缓冲器
2.IP=IP+所读取指令的长度,从而指向下一条指令
3.执行指令,跳转步骤1
修改CS、IP的内容:jmp 段地址:偏移地址
jmp 2AE3:3;执行后,CS=2AE3H IP=0003H,CPU从2AE33H读取指令
jmp 3:0B16 ;CS=0003H,IP=0B16H,00B46H
jmp 合法寄存器
jmp ax,;类似于mov IP,ax
例子:
debug
寄存器
字存储
CPU用16位寄存器存储一个字,高8位放高字节,低8位放低字节。内存单元是字节单元,一个字要两个连续地址的内存单元来存放,低位字节放在低地址单元,高位字节存放高地址单元中。
字单元:一个字型数据内存单元由两个地址连续的内存单元组成。
DS&[address]:
存放要访问数据的地址段,执行指令时候,8086CPU自动获取DS的数据作为内存单元的段数据。
例如:
MOV BX,1000H
MOV DS,BX
MOV AL,[0]
MOV/ADD:
MOV AX,8
MOV AX,BX
MOV AX,[0]
MOV [0],AX
MOV DS,AX
PUSH/POP
任意时刻SS:SP指向栈顶元素