【无标题】

第一个程序

4.1一个源程序从写出到执行的过程

*使用文本编译器,用汇编语言编写汇编源程序

*

 

 

对源程序进行编译连接

*使用汇编语言编译程序对源程序文件中的源程序进行编译,产生目标文件

*用连接程序对目标文件进行连接,生成可在操作系统中直接运行的可执行文件

可执行文件

*可执行文件包含两部分:1.程序和数据 2.相关的描述信息

执行可执行文件中的程序

*机器码和数据(依照描述信息)→载入内存并初始化→CPU执行

源程序

汇编指令

*有对应机器码的指令,由CPU执行

伪指令

*没有对应机器码的指令,由编译器执行

*segment和ends是一对成对使用的伪指令,用来定义一个段(必要的)

*segment-段开始 ends-段结束

*段必须有名称:段名 segment

定义一个段

*一个汇编程序是由多个段组成的

*一个有意义的汇编程序至少有一个段,这个段来存放代码

end

*结束整个编译(不是段结束)

*不要搞乱end和ends

assume

*假设segment...ends定义段与某一段寄存器相关连

源程序中的程序

*汇编源程序:伪指令

汇编指令

源程序经编译连接后变为机器码:

4.2源程序

 

标号

*一个标号指代了一个地址

*codesg:放在segment前面,作为段的名称,这个段名称最终被处理为一个段的段地址

程序的结构

  • 定义一个段

  • 实现处理任务

  • 程序结束

  • 段与段寄存器关联

程序的返回

*DOS系统是个单任务系统

EX: P1和P2不能同时运行,需要通过转交控制权单独运行

*程序返回应该在程序末尾添加返回的程序段

 

语法错误和逻辑错误

*语法错误:程序在编译时被编译器发现的错误

*逻辑错误:程序在编译时不能表现出来的,在运行时发生的错误

编译和链接

*连接的作用:1.将大的源程序分为多个源程序文件夹编译,每个源程序编译成为目标文件夹后再用连接程序将他们连接到一起,生成一个可执行文件

2.调用库文件中的子程序.

3.将编译后的源程序连接为最终的可执行信息

可执行文件中的程序装入内存并运行的原理

*1.exe运行过程

 

*操作系统外壳(shell)

*DOS中commend.com为DOS的shell

*汇编程序从写出到运行的过程

 

*Debug可以观察程序运行过程(利用中断指令)

EXE文件中的程序加载过程

 

PSP占用100H=256个字节

*用U命令查看其他指令

*用T命令但不执行程序中的每一条指令,并观察每条指令的执行结果

*到了int,用P命令执行

*程序结束后返回Debug中,Q命令退出Debug

#####

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值