Loading... # 第一个程序 汇编语言程序从写出到执行: * 编写汇编程序 * 对源程序进行编译:编译程序对源程序编译,产生目标文件;再用连接程序对目标文件进行连接,生成可在操作系统中直接运行的可执行文件 * 执行可执行文件中的程序 ## 源程序 ~~~assembly assume cs:codesg codesg segment mov ax, 0123H mov bx, 0456H add ax, bx add ax, ax mov ax, 4c00H int 21H codesg ends end ~~~ 两种指令:汇编指令和伪指令 伪指令: 1. 段名 segment 段名 ends:定义一个段,segment说明一个段开始,ends说明一个段结束 2. end:一个汇编程序的结束标记,编译器碰到这里就停止编译,**注意与ends区分** 3. assume:假设某一段寄存器和程序中的某个用segment……ends定义的段相关联,一般用来将有特定用途的段和相关的段寄存器关联起来 ![E9A710D74E609903DCEDE18B3065FC8D.png](http://xherlock.top/usr/uploads/2022/03/3798071632.png) `标号`:如本例中的codesg,一个标号指代了一个地址,codesg作为一个段的名称,这个段名称最终将被编译、连接程序处理为一段的段地址 ``` mov ax, 4c00H int 21H ``` 上述汇编代码实现程序返回(将CPU的控制权交还给使它得以运行的程序) ## 简化法编译、连接源程序 编译 ![image-20220314215400763.png](http://xherlock.top/usr/uploads/2022/03/4288077121.png) 连接 ![image-20220314215440280.png](http://xherlock.top/usr/uploads/2022/03/259408154.png) 执行(但是不输出结果) ![image-20220314215545544.png](http://xherlock.top/usr/uploads/2022/03/1809371453.png) 跟踪不搞了,太老旧了 最后修改:2022 年 03 月 14 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 0 如果觉得我的文章对你有用,请随意赞赏