编程、编译、链接

编程

工具文本编辑器
结果文本文件 .asm

编译

工具微软汇编编译器 MASM.EXE
结果目标文件 .obj

链接

工具微软链接器 LINK.EXE
结果可执行文件 .exe
image.png
image.png


源程序和程序的区别?

源程序-n源文件的所有内容。既包括能够被计算机执行的指令,也有被编译器执行的指令(伪指令)。
程序-n只包括最终被计算机执行的指令。
我的想法源代码中所有代码并不是所有的指令都会被计算机执行。有些指令只是为了给编译器执行。

可执行文件是如何运行的?

shell-n操作系统暴露给用户或者应用程序的应用程序,和其他应用程序一样,操作系统提供API供用户、应用程序操作计算机。
CLI-shell-n基于command-line interface的shell,就是windows中的cmd.exe。
GUI-shell-n基于graphical user interface的shell,就是我们常使用的Windows的图形界面。
可执行文件必须在操作系统提供的shell环境中执行。当shell中输入执行可执行文件,shell就会将文件载入内存,然后设置CS:IP指针。CPU运行程序,程序运行结束后,转交CPU控制权给shell。