在数组STRING定义一字符串,以下段落是主程序的一部分,其目的是统计字符串中“X”的个数,请写出子程序的代码。
︰
LEA BX,STRING
MOV KEY,ˋXˊ
CALL SEARCH
︰
【正确答案】:SEARCH PROC
MOV CL,0
NEXT: MOV AL,[BX]
CMP AL,ˋ$ˊ
JE EXIT
CMP AL,KEY
JNE DONE
INC CL
DONE: INC BX
JMP NEXT
EXIT: RET
SEARCH ENDP
【题目解析】:把0存入CL,把BX指向的字符存入AL,比较AL和ˋ$ˊ,如果相等,进入EXIT,退出子程序,表示统计完毕,因为ˋ$ˊ表示所有字符的后一个地址。如果不等,就把AL与KEY相比,如果不等,跳转到DONE处,让BX指向下一个字符,跳转到NEXT处继续比较。如果相等,则让CL加1,再让BX指向下一个字符,跳转到NEXT处继续比较。都比较完了,CL中存放的就是ˋXˊ字符的个数。
在数组STRING定义一字符串,以下段落是主程序的一部分,其目的是统计字符串中“X”的个数,请写出子程序的代码。︰LEA BX
- 2024-09-08 13:24:08
- 汇编语言程序设计(02321)