题目:在屏幕上显示一段信息
简化段定义的源程序格式
.model small ;定义程序的存储模型,
.stack ;定义堆栈段
.data ;定义数据段
string db 'Hello world !',0dh ,0ah,'$' ;0dh是回车,0ah是换行
.code
.startup
mov dx,offset string ;指定字符串在数据段的偏移地址
mov ah,9
int 21h ;利用功能调用显示信息
.exit 0
end
说明:在堆栈段开辟了默认1024字节的堆栈空间
在代码段中,首先由.startup伪指令指明程序的起始执行点,同时该指令还为程序中的数据、代码和堆栈段连接相应的段寄存器。
由于MASM5.0/5.1中不支持.startup和.exit
所以,程序可修改为:
.model small
.stack
.data
string db 'Hello word!',0dh,0ah,'$'
.code
start:
mov ax,@data
mov ds,ax
mov dx,offset string
mov ah,09h
int 21h
mov ax,4c00h
int 21h
end start
完整段定义的源程序格式
stack segment stack
;db 1024 dup(?)
stack ends
data segment data
string db 'Hello world !',0dh,0ah,'$'
data ends
code segment 'code'
assume cs:code,ds:data,ss:stack
start:
mov ax,data
mov ds,ax
mov dx,offset string
mov ah,09h
int 21h
mov ax,4c00h
int 21h
code ends
end start