文章目录
基础不会,啥都白费;基础不牢,地动山摇。
汇编在基础中的地位举足轻重,学习汇编,可以帮助我们从CPU角度出发,理解程序,写出更好的 高级语言 程序。可以帮助我们理解程序的运行机制,知道原理,解决一些隐蔽的BUG。
学习步骤: 看视频,看书,做笔记,理解为主。习题独立完成,全对,才能进入下一章的学习。
视频: 小甲鱼
教材: 《汇编语言(王爽)》(三版)
日期: 2020-07-01
进度:31/77
四、第一个程序:22/77
- 编写源程序文件
- 编译链接可执行文件
- 执行可执行文件中的程序
可执行文件:
- 程序(汇编指令翻译成的机器码) + 数据(源程序中定义的数据)
- 描述信息(如,程序有多大、要占用多少内存空间)
1. 源程序结构
源程序: 源程序文件中的所有程序,皆称为源程序
程序: 源程序中最终 由计算机执行,处理的指令或数据。
汇编源程序由伪指令 和汇编指令 构成
汇编指令: 用来翻译成机器码
伪指令: 给编译器执行的,让编译器执行相关编译工作。
;
在汇编中表示注释
段名 segment
和段名 ends
是一对,定义一个段,这个段用来存放代码。(ends
后面的s
表示的是segment而不是复数的意思)
标号:
XXX segment
里的XXX就是标号。它是一个段的名称 ,最终会被编译,连接成为一个段的段地址(就类似C中的指针)
end
用来标识程序的结束assume
假设寄存器和程序中的某一个XXX segment ... XXX ends
段相关联,很像给寄存器取别名
注意: 至少要有一个段(代码段)
下图展示了汇编指令 到可执行文件 的过程
2. 程序返回
DOS是一个单任务系统:
- 一个程序p2想要运行,必须得有一个正在运行的p1,把它从可执行文件加载入内存,并将CPU的控制权交给p2,p2才能运行。
- p2运行时,p1暂停运行。p2运行完毕&#x