popf和pushf的作用
题目要求是在string字符串中查找空格字符,串长度为N。然后有以下两种方法
(1)用条件转移: JZ
MOV CX, N
MOV AX, SEG string
MOV DS, AX
LEA BX, string
MOV AL,20H
next: CMP AL,[BX]
JZ find
INC BX
DEC CX
JNZ next
未找到处理
JMP exit
find: 找到处理
exit: 结束出口
(2)用循环指令:LOOP NZ next
MOV CX, N
MOV AX, SEG string
MOV DS, AX
LEA BX, string
MOV AL,20H
next: CMP AL, [BX]
PUSH F
INC BX
POP F
LOOP NZ next
JZ find
未找到处理
JMP exit
find: 找到处理
exit: 结束出口
我想问下第二种方法中POPF和 PUSHF为什么要加?不加有什么用?
同时请高手讲一下这两条指令的功能,讲的通俗一点,谢谢!
[解决办法]
POPF出栈标志字->AX
PUSHF入栈标志字
PUSHF是保存测试的标志位
INC BX指令影响标志位
POPF是出栈测试的标志位
因此必须加。