数据寄存器 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 不保存结果的减法 |
|