编程(Edit) -> .asm -> 编译(MASM) -> .obj -> 连接(LINK) -> .exe -> 加载(COMMAND) -> 内存中的程序 -> 运行(CPU)
👇下面以汇编语言 实验三为例(编程、编译、连接、跟踪)
编程(Edit)将程序保存位t1.asm文件
编译(MASM)
连接(link)
用Debug跟踪t1.exe的执行过程,写出每一步执行后,相关寄存器中的内容和栈顶的内容。
DS = 049E CS = 04AE (从256字节处向后的空间存放的是程序,CS的值为DS+10H)
PSP的头两个字节是CD20,用debug加载t1.exe,查看PSP的内容:
程序加载后,DS存放着程序所在内存区的段地址,这个内存区的偏移地址为0,则程序所在的内存区的地址为:DS:0。这个内存区的前256个字节中存放的是PSP,DOS用来和程序进行通信。
指令d: 列出预设地址内存处的128个字节的内容