执行1.exe程序
发现它执行完后立即返回,没有任何输出。
由于我们的程序只是在寄存器中进行了简单的加法操作,没有操作显存,所以不会显示任何东西。
执行流程分析
1. 如果在DOS中执行1.exe时,是正在运行的command.com(我们这里是DOSBox),将1.exe中的程序加载入内存
2. command设置CPU的CS:IP指向程序的第一条指令(即程序的入口,即下方start伪指令处),从而使程序得以运行。
assume cs:abc
abc segment
start: mov ax,2
add ax,ax
add ax,ax
mov ax,4c00H
int 21H
abc ends
end start
3. 程序运行结束后,返回到command中,CPU继续运行command
汇编程序从写出到执行的过程
编程->1.asm->编译->1.obj->连接->1.exe->加载->内存中的程序->运行
(Edit) (masm) (link) (command) (CPU)