首页 理论教育 程序开始和结束伪指令

程序开始和结束伪指令

时间:2022-02-28 理论教育 版权反馈
【摘要】:如果程序中既无NAME伪指令又无TITLE伪指令,则汇编程序将用源文件名作为模块名,所以NAME伪指令和TITLE伪指令可用可不用,但一般经常使用TITLE伪指令,以便在列表文件中能打印出标题来。如果多个程序模块相连接,则只有主程序要使用标号,其他子程序模块则只要END而不必指出标号,下例为求两数之和的绝对值的程序。其中TITLE给出标题,用END START表示程序结束,汇编程序将在遇到END时结束汇编,则程序将从START开始执行。

3.2.5 程序开始和结束伪指令

在程序的开始可用NAME或TITLE为模块取名字,NAME的格式为:

格式:NAME 模块名

汇编程序将给出的模块名(Module_name)作为模块的名字。如果程序中没有NAME伪指令,则也可以使用TITLE伪指令,其格式为:

格式:TITLE text

TITLE伪指令可指定每一页上打印的标题。同时,如果程序中没有使用NAME伪指令,则将用text中的前6个字符作为模块名。text标题最多可用60个字符。

如果程序中既无NAME伪指令又无TITLE伪指令,则汇编程序将用源文件名作为模块名,所以NAME伪指令和TITLE伪指令可用可不用,但一般经常使用TITLE伪指令,以便在列表文件中能打印出标题来。

表示源程序结束的伪指令为END,它的格式为:

格式:END [标号]

其中标号(Label)指示程序开始执行的起始地址的标号。如果多个程序模块相连接,则只有主程序要使用标号,其他子程序模块则只要END而不必指出标号,下例为求两数之和的绝对值的程序。其中TITLE给出标题,用END START表示程序结束,汇编程序将在遇到END时结束汇编,则程序将从START开始执行。

【例3-31】 TITLE ABC ;模块名

DATA SEGMENT;定义数据段

OPER1 DW 12

OPER2DW 230

RESULT DW?

DATA ENDS ;数据段结尾

CODE SEGMENT ;定义代码段

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA ;程序从START开始

MOV DS,AX;给DS设置段地址

MOV AX,OPER1;一个加数送入AX

ADD AX,OPER2;两数相加

JG E STORE;≥0,转STORE

NEG AX;否则,求补取绝对值

STORE:MOV RESULT,AX;结果送RESULT单元

MOV AH,4CH

INT 21H;停止执行,返回DOS

CODE ENDS;代码段结尾

END START;结束汇编

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈