SASM立即关闭(NASM Windows 10)

时间:2018-05-02 23:33:28

标签: assembly nasm sasm

我正在使用SASM,在其中使用NASM。每当我打开运行我的简单NASM文件时,它就会在眨眼之间关闭。这是我的代码:

%include "io64.inc"

section .text
global CMAIN
CMAIN:
    mov eax,4

    xor rax, rax
    ret

1 个答案:

答案 0 :(得分:1)

它也关闭,因为所有程序在运行完毕后都会关闭。您可以在执行结束时添加无限循环以阻止其关闭。做这样的事情:

%include "io64.h"

section .text
global CMAIN
CMAIN:
    mov eax, 4

 endLoop:
    pause              ; don't overheat your CPU as much while busy-waiting
    jmp endLoop

   ; never reached unless you use a debugger to get out of the infinite loop
    xor rax, rax
    ret

这将导致程序在endLoop处循环,因此它永远不会完成并关闭。

使系统调用进入休眠状态将是使程序永不退出的更为省电的方法。等待键盘输入是系统上C ++程序中的另一种常见方法,默认情况下,等待在完成后会关闭的新窗口中运行该程序。

或在程序内部设置一个断点。