汇编原程序到exe程序执行

利用notepad++编写源文件.asm,生成obj文件。在编译文件去执行

p4-1.asm文件

assume cs:codesg

codesg segment

start  mov ax,0123h

          mov bx,0456h

          add ax,bx

          add ax,ax

          mov ax,4c00h

          int 21h

codesg ends

end


masm

目标文件(*.obj)是我们对源程序进行编译要得到的最终结果。

列表文件(*.LST)是编译器将源文件编译为目标文件的过程中产生的中间结果。

交叉引用文件(*.CRF)同列表文件一样,是编译器将源程序编译位目标文件过程中产生的中间结果。

对源程序的编译结束,编译器输出的最后两行告诉我们这个源程序没有警告



link p4-1.obj文件


link

link完之后,生成了一个exe文件(可执行文件)


可执行文件(exe)是我们对一个程序进行连接要得到最终结果

映像文件(.MAP)是连接程序将目标文件连接为执行文件过程中产生的中间结果

库文件(.LIB)里包含了一些可调用的子程序,如果我们的程序中调用了某一个库文件中的子程序,就需要在连接的时候,将这个库文件和我们目标文件连接到一起,生成可执行文件。

no stack segment 一个”没有栈段”的警告错误,可以不理会这个错误。

link完成过程,我们用debug p4-1.exe去调式程序


debug p4-1.exe

其他方式执行

    继续命令p类似t命令,逐条执行指令、显示结果、但遇到子程序、中断时,直接执行,然后现实结果。

    运行命令g,从指定地址处开始运行程序,直到遇到断点或者程序正常结束。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容