编写统计AX中1、0个数的源程序。1的个数存入CH,0的个数存入CL。
CODE SEGMENT
ASSUME CS:CODE
START: MOV CX, 0
MOV DX,17
AA1: SUB DX, 1
JZ AA3
SHL AX, 1
JNC AA2
INC CH
JMP AA1
AA2: INC CL
JMP AA1
AA3: MOV AH,4CH
INT 21H
CODE ENDS
END START
编写比较两个字符串STRING1和STRING2所含字符是否完全相同的源程序,若相同则显示“MATCH”,若不相同则显示“NO MATCH”。
程序:
DATA SEGMENT
R1 DB 'MATCH',0AH,0DH
R2 DB 'NO MATCH',0AH,0DH
STRING1 DB 'XXXXX'
N1 EQU $-STRING1
STRING2 DB 'YYYYY'
N2 EQU $-STRING2
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV AX,N1
CMP AX,N2
JNZ AA1
ADD AX,1
LEA SI,STRING1
LEA DI,STRING2
AA2: MOV BL,[SI]
MOV BH,[DI]
INC SI
INC DI
SUB AX,1
JZ AA3
CMP

这篇博客包含三个汇编语言程序实例:统计AX寄存器中1和0的个数,比较两个字符串内容是否相同,以及将四位十六进制数转换成二进制并显示。通过这些实例,读者可以深入理解汇编语言的基本操作和逻辑处理。
最低0.47元/天 解锁文章
486

被折叠的 条评论
为什么被折叠?



