汇编语言中字符串的使用
发布网友
发布时间:2022-04-30 17:19
我来回答
共2个回答
热心网友
时间:2022-06-28 07:40
mov dl,[len1]
mov ah,02h
int 21h
----
呵呵,输出,不是这样简单的。
len1,是二进制数字,必须把它变成十进制的个位、十位..,
再把各位数,都变换成ASCII码,放到DL中,最后才能输出到显示屏。
热心网友
时间:2022-06-28 07:40
DATA SEGMENT
BUFFER DB 21,?,21 DUP(?)
DATA ENDS
DATAS SEGMENT
NUM DB 0
DATAS ENDS
CODE SEGMENT
ASSUME CS:DATA,DS:CODE,SS:DATAS
START:
MOV AX,DATA
MOV DS,AX
MOV BX,DATAS
MOV SS,BX
MOV DX,OFFSET BUFFER ;字符窜输入
MOV AH,0AH
INT 21H
MOV DL,0AH ;换行
MOV AH,02H
INT 21H
MOV AH,01H ;单字符输入 存在AL中
INT 21H
LEA SI,BUFFER ;确定CX的值即循环次数
INC SI
MOV CX,0
MOV CL,[SI]
INC SI
R: CMP [SI],AL
JNZ TONG
INC NUM
TONG: INC SI
LOOP R
MOV DL,0AH
MOV AH,02H
INT 21H
MOV DL,0DH ;回车
MOV DL,NUM
ADD DL,30H ;使转换为ASCII表示的数值
MOV AH,02H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START