第四讲 汇编程序
4.1 汇编程序框架
data SEGMENT ''数据段,编程者可以把数据都放到这个段里
.数据部分
''数据格式是: 标识符 db/dw 数据。
data ENDS''数据段结束处。
edata SEGMENT ''附加数据段,编程者可以把数据都放到这个段里
.附加数据部分
edata ENDS''附加数据段结束处。
code SEGMENT''代码段,实际的程序都是放这个段里。
ASSUME CS:code,DS:data,ES:edata ''告诉编译程序,data段是数据段DS,code段是代码段CS
start:MOV AX,data ''前面的start表示一个标识位,后面用到该位,如果用不到,就可以不加
MOV DS,AX ''这一句与上一行共同组成把data赋值给DS。段寄存器.
MOV AX,edata
MOV ES,AX ''与前一句共同组成edata->ES
.程序部分
MOV AX,4C00h''程序退出,该句内存由下一行决定。退出时,要求ah必须是4c。
INT 21h
code ENDS''代码段结束。
END start''整个程序结束,并且程序执行时由start那个位置开始执行。
上面就是一个程序的框架结构。在这个结构中,有三个段,DS,ES,CS。这三个段分别存数据,附加数据,代码段。
4.2 编写我们的Hello,world思路。
开始编写我们的第一个程序。
程序要求:显示一个“Hello,Mr.286.”怎么样?
思路:
1 要显示一个字符串,根据前面我让你们记的七八个指令够吗?答案是:不仅够,而且还用不完。
首先定义一下总可以吧。
hellostr db ''Hello,Mr.286.