非专业人士,各位可以解答一下嘛

程序设计
要求编写程序比较两个最大长度为100个字符的字符串STR1和STR2是否相等,若相等则输出显示“All Right!”,否则输出显示“Error!”。
(1)第一步应分析要求,选择合适的结构设计流程图。
例如:本设计采用 结构。(注意选择的结构和下面自己编写的程序对应。)
(2)数据段已编写完成,请继续完成本功能的汇编程序。
DATA SEGMENT
STR1 DB 100 DUP(?)
STR2 DB 100 DUP(?)
INFO1 DB 'All Right!'
INFO2 DB 'Error!'
LEN DB 100
DATA ENDS

参考GPT

ASSUME CS:CODE, DS:DATA

DATA SEGMENT
STR1 DB 100 DUP(?)
STR2 DB 100 DUP(?)
INFO1 DB 'All Right!'
INFO2 DB 'Error!'
LEN DB 100
DATA ENDS

CODE SEGMENT
START:
    MOV AX, DATA
    MOV DS, AX

    ; 读入 STR1 和 STR2
    LEA DX, STR1
    MOV AH, 0Ah
    INT 21h

    LEA DX, STR2
    MOV AH, 0Ah
    INT 21h

    ; 比较 STR1 和 STR2 是否相等
    MOV CX, LEN
    MOV SI, 0
    MOV DI, 0
    CMP CX, SI
    JE EQUAL

COMPARE:
    MOV AL, STR1[SI]
    MOV BL, STR2[DI]
    CMP AL, BL
    JNE ERROR
    INC SI
    INC DI
    CMP CX, SI
    JE EQUAL
    JMP COMPARE

EQUAL:
    ; STR1 和 STR2 相等
    LEA DX, INFO1
    MOV AH, 09h
    INT 21h
    JMP END

ERROR:
    ; STR1 和 STR2 不相等
    LEA DX, INFO2
    MOV AH, 09h
    INT 21h

END:
    MOV AH, 4Ch
    INT 21h
CODE ENDS

END START

程序的思路是先读入 STR1 和 STR2,然后逐个比较它们的字符是否相等,直到比较完所有字符或者发现不相等的字符。如果比较完所有字符都相等,则输出 "All Right!",否则输出 "Error!"。