数据寄存器
Ax,cx,dx,bxA
1字节(3BH)=8位
Ax=ABCDH
AX分为高八位(AH),低八位(AL)
nop空指令
EIP指向cpu所取得指令
Mov ax,19
Mov ah,70
Add ax,bx,
Add al,1
Sub ax,1
物理地址
存储器里唯一的字节地址,
8086 16位cpu,20位地址总线
物理地址=段地址*10h+偏移
Cs(内存分的段):1000H,IP:0022
物理地址:1000H*10H+0022H
ds和[address]
Mov ax,[1000h]
Mov ax,[bx]
Mov ax,word ptr ds:[1000H]
栈
Push
Pop
Push ax
Push 1000h
Pop bx
Pop ax,
Ss&sp
跳转指令
Jmp
Jmp short pywin32-.00416000
Mov ip,xxxx
函数指令
Call 指令
将当前Ip或者cs和ip压栈
转移
相当于push ip,
Jmp 函数地址
&
Push cs
Push IP
jmp函数地址
RET指令
IP=[ss*10h+sp]
Sp=sp+2
Cs+[ss*10h+sp]
Sp=sp+2
等价于
Pop ip,
Pop cs,
Adc 带进位的加
sbb带借位的减
Cmp 不保存结果的减法