前言
第二次汇编语言实验课先回顾了上节课的内容,然后再编写新程序
一、编写程序
题目:输入一个字符,先输出回车换行后再输出该字符
DATAS SEGMENT
DATAS ENDS
STACKS SEGMENT
STRING DB 'H','$';此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;此处输入代码段代码
MOV AH,01H
INT 21H
MOV STRING,AL
MOV AH,02H
MOV DL,0DH
INT 21H
MOV AH,02H
MOV DL,0AH
INT 21H
MOV AL,STRING
MOV DL,AL
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
END START
二、程序解读
1.输入单字符
MOV AH,01H
INT 21H
MOV STRING,AL
2.回车
MOV AH,02H
MOV DL,0DH
INT 21H
0DH是回车的ASCII码是16进制数,此处应该注意的是需要的是16进制数,而不是10进制数。
3.换行
MOV AH,02H
MOV DL,0AH
INT 21H
0AH是换行的ASCII码
4.输出单字符
MOV AL,STRING
MOV DL,AL
MOV AH,2
INT 21H
5.变量
变量定义为变量申请固定长度为单位的存储空间,还可以将相对应的存储单元初始化。
变量定义伪指令时最常用的汇编语言说明性语句,它的汇编语言格式为:
变量名 变量定义伪指令 初始表
变量定义以后就有两种属性:
地址属性——指首个变量所在存储单元的逻辑地址,含有段基地址和偏移地址。
类型属性——指变量定义的数据单位,有字节量、字量、双字量、3字量、4字量。
总结
本次实验课的实验内容不难解决,再次复习了上节课的基础知识点,以及了解到如何控制单个字符的输入和输出以及回车换行等操作。对汇编语言有了进一步的认识。