;简单的显示 How do you do, 类似于我们以前学c的"hello world"程序
;...........................................
;数据段
DATA SEGMENT
STR DB "How do you do?$"; 字符串以需 $ 结尾. 将这段字符串的头指针叫做STR
DATA ENDS
;堆栈段
STACK SEGMENT STACK
DB 200 DUP(?) ;定义200个字节空间,但不赋值,类似声明我们c中的数组,(?)是指不赋值,但声明空间
; DB:字节(类似于c中的int声明). DUP:理解为重复的意思
STACK ENDS
;代码段
CODE SEGMENT
ASSUME DS:DATA, SS:STACK, CS:CODE ;告诉程序,DATA是数据段DS,STACK是堆栈段SS,CODE是
;代码段
START: MOV AX, DATA ;这里通过AX是让DS的指针指向DATA段,即段地址设为为DS
MOV DS, AX ;因为段寄存器不能直接互相赋值
LEA DX, STR ;取STR的偏移地址, 即将DX指向STR的头指针, 而段地址已经设为为DS
MOV AH, 9 ;9号功能调用,DS:DX = 串地址,字符需以$结尾
INT 21H
MOV AH, 4CH ;4c号功能调用, 结束程序
INT 21H
CODE ENDS
END START
;.............................................
初学汇编--Hello Wrod
最新推荐文章于 2024-04-02 17:50:58 发布