eip------------程序指针``指向当前`运行的代码,在OD中`有显示
ebp-----------寄存器``在堆栈``使用
esp-----------堆栈指针``
jmp-----------无条件跳转指令
nop-----------汇编指令``程序遇到该指令`什么也不做``运行下一条指令
ES:BX(SI,DI) 提供附加段内单元地址 .
AX,CX,BX和CX寄存器多用于运算和暂存中间计算结果
,但又专用于某些指令(...MOV CL,04 SHL AX,CL
JNE,JNZ均为一条指令的两种助记符表示方法?那为什么用两个?
悬赏分:0 - 解决时间:2008-1-13 15:10
说明:
1. 指令JNE与JNZ等价,它们是根据标志位ZF进行转移的指令
2. JNE,JNZ均为一条指令的两种助记符表示方法
根据前一句的指令用啊,是有逻辑关系的。比如
cmp al,dl
jne lp1
是比较两个数是否相等,相等跳转
test al,bl
jnz lp1 不相等跳转。
这要根据你的跳转指令来说了
你的跳转指令与zf值有关的话,它就会影响到程序的执行走向
如:
mov al,73h
mov dl,77h
cmp al,dl 两数比较会置标志位
jge lp 大于等于跳转到lp处,小于继续执行
你使用参数-R就可以查看
例如:AX=0000 BX=0000 CX=010A DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000
DS=18E4 ES=18E4 SS=18E4 CS=18E4 IP=0100 NV UP DI PL NZ NA PO NC
18E4:0100 C70604023801 MOV WORD PTR[0204],0138 DS:0204=0000
其中“NV UP DI PL NZ NA PO NC”
分别代表标志位OF、DF、IF、SF、ZF、AF、PF、CF为1的情况
OF 溢出(是/否) OV OVerflow NV Not oVerflow
DF 方向(减量/增量) DN DowN UP UP
IF 中断(允许/关闭) EI Enable Interrupt DI Disable Interrupt
SF 符号(负/正) NG NeGative PL PLus
ZF 零(是/否) ZR ZeRo NZ Not Zero
AF 辅助进位(是/否) AC Auxiliary Carry NA Not Auxiliary
PF 奇偶(是/否) PE Parity Even PO Parity Odd
CF 进位(是/否) CY CarrY NC Not Carry