作者:陈世佳 编写时间:2018-4-17
方法如下:
步骤一:了解中断指令
中断指令:INT 21H
功能号:01H
功能描述:从输入设备中接收一个值(使用ACSII编码接收数据)。
接收入口:接收到的值将被保存于AL中。
入口参数:AH=01H
出口参数:无
步骤二:了解循环指令
L5: ;定义循环名称及循环开始位置
//代码
LOOP L5 ;CX减一,判断CX是否为零,不为零继续执行循环
步骤三:编写代码
data SEGMENT ;定义字符串
hello DB 'Hello World$'
hello2 DB 'See you!$'
newline DB 13,10,'$' ;定义换行字符串
data ENDS
code SEGMENT
ASSUME CS:CODE,DS:DATA
start:
MOV AX,data
MOV DS,AX
MOV AH,01H ;给AH设置参数01H
INT 21h ;执行AH中设置的01H号功能:输入一个值到AL中
SUB AL,48 ;将获取的值减48,ASCII中'0'的数值为48
MOV CL,AL ;将AL赋值给CL
MOV AH,09H ;给AH设置参数09H
L5: LEA DX,newline ;将DX指向字符串newline
INT 21h ;执行AH中的09H号功能,输出字符串newline
LEA DX,hello ;将DX指向字符串hello
INT 21h ;执行AH中的09H号功能,输出字符串hello
LOOP L5 ;CX减一,判断CX是否为零,若CX不为零,则继续循环
MOV AX,4C00H ;给AX设置参数4C00H
INT 21h ;执行AH中的4C00H号功能结束程序
code ENDS
END start
步骤四:运行即可
步骤五:若不明白,可查看用汇编语言编写程序输"Hello World!"