刚刚开始学习汇编,结合网上的资料,写一下自己的理解
;完整段的Hello World程序 DATAS SEGMENT STRING DB 'Hello World!',13,10,'$' ;定义一个字符串,名称是STRING,其值是字符串首字符的地址。 ;DB表示的是字符串中每个字符的都是一个字节,每往后加1的时候,地址偏移量加1. ;13是回车,10是换行,'$'是字符串结束符 DATAS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS ;假设每个段寄存器获得段地址的位置,相当于C中的函数声明 START: MOV AX,DATAS MOV DS,AX ;将段地址借助AX间接装入到DS中 ;因为最后显示字符串的是DS(段地址):DX(偏移地址)=串地址 LEA DX,STRING ;将偏移地址装入DX中 MOV AH,9 ;将09命令(显示字符串)装入AH中 INT 21H ;DOS系统调用AH中的命令 MOV AH,4CH ;结束本程序,返回DOS操作系统 INT 21H ;DOS系统调用放入AH中的命令 CODES ENDS END START