assembly 检查ZF是否为0或1?

tjjdgumg  于 2023-01-17  发布在  其他
关注(0)|答案(1)|浏览(139)

我使用了int 16h中断,我想检查击键是否可用。
因此,我想检查Zero Flag的值是什么-我该怎么做?

bprjcwpo

bprjcwpo1#

如您所见,当没有可用的击键时为hereZF=1,当有可用的击键时为ZF=0
使用JZ

mov ax, 0100h
    int 16h
    jz no_key
    ; Handle case if there is a key press here
    ; AH will contain the scan code; AL will contain the ASCII code

no_key:
    ; Handle case if there is no key press here

使用JNZ

mov ax, 0100h
    int 16h
    jnz key_pressed
    ; Handle case if there is no key press here

key_pressed:
    ; Handle case if there is a key pressed here
    ; AH contains the scan code; AL contains the ASCII code

相关问题