從BUF單元開始存有一字符串(長度<255),編程實現統計該字符串中的ASCII在42H~45H之間的字符個數,並將統計結果以二進制形式顯示在屏幕。
.486
DATA SEGMENT USE16
BUF DB 'ABCDEFGHIJKLMBVCDECDECDCDABCDEFG'
COUNT EQU $-BUF
DATA ENDS
CODE SEGMENT USE16
ASSUME CS:CODE,DS:DATA
BEG:
MOV AX,DATA
MOV DS,AX
MOV BL,0 ;計數
MOV SI,0
MOV CX,COUNT
AGA:
CMP BUF[SI],42H
JB LAST ;低於轉移
CMP BUF[SI],45H
JA LAST ;高於轉移
INC BL
LAST:
INC SI
LOOP AGA
MOV CX,8
M2:
TEST BL,80H
JNZ M3
MOV DL,'0'
MOV AH,02H
INT 21H
JMP M4
M3:
MOV DL,'1'
MOV AH,02H
INT 21H
M4:
SHL BL,1
LOOP M2
MOV AH,4CH
INT 21H
CODE ENDS
END BEG