该汇编代码是否有问题?

问题描述 投票:0回答:1

此代码是使用Turbo汇编程序进行汇编的,但是当我尝试在DOSBox中运行它时,它冻结并且DOSBox消失。这有什么问题吗?

TITLE SAMPLE PROGRAM
.MODEL SMALL
.STACK 64
.DATA
.CODE
MYCODE PROC
    MOV AX,04
    MOV BX,0212
    CMP AX, BX
    JG action1
    JLE action2
action1:
    ADD AL, 30
    JMP exit
action2:
    ADD BL, 20
    JMP exit
exit:
    MOV AX, 4CH
    INT 21H
MYCODE ENDP
END MYCODE
assembly runtime-error tasm dosbox
1个回答
1
投票

Exit to DOS是通过将AH设置为4CH并调用int 21h来完成的。通过写入MOV AX,4CH,您将仅设置AL。在AL中,您可以设置退出代码。

任何一个:

mov ah,4CH
int 21h

mov AX,4C00H ; or change 00 to any exit code you want.
int 21h
© www.soinside.com 2019 - 2024. All rights reserved.