组装x86:尽管数量增加,但jle仍跳

时间:2018-08-17 19:48:34

标签: assembly x86-16

我制作了一个简单的程序,如果符合逻辑,它将打印pass;否则,将失败。

我正在检查0aah <0ah,这是不合逻辑的,因此应该打印失败。但是,这是通过仪式。可能是什么原因?

.model small
.stack 100h

.data
prompt1 db 13,10,"fail$"
prompt2 db 13,10,"pass$"
testing db 0aah

.code
start:
mov ax,@data
mov ds,ax

cmp testing,0ah     ; 0aah <= 0ah?
jle shouldnotjump   ; Should not happen as not true

lea dx, prompt1     ; Print fail
mov ah,9h
int 21h

mov ax,4c00h
int 21h

shouldnotjump:

lea dx, prompt2     ; Print pass
mov ah,9h
int 21h

mov ax,4c00h
int 21h

0 个答案:

没有答案