求汇编程序和仿真图。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
DATA SEGMENT
DISPIN DB 'The input string is: ', '$'
DISPOUT DB 'The length is:', '$'
DISPX DB 0DH, 0AH, 'Error: the string is too long!',0DH,0AH,'$'
BLK DB 0DH, 0AH,0DH, 0AH,'$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS, AX
MOV CX,00H
LEA DX,DISPIN ;MOV DX, OFFSET DISP1
MOV AH, 09H
INT 21H
INPUT: MOV AH, 01H
INT 21H
CMP AL,0DH
JE DISP
INC CX
JMP INPUT
;..........输出显示部分........
DISP: CMP CX,100H
JB NEXT1
LEA DX, DISPX
MOV AH,09H
INT 21H
NEXT1: MOV DX, OFFSET DISPOUT
MOV AH, 09H
INT 21H
MOV DL,CL
MOV DH,CL
MOV CL,4
SHR DL,CL
;***
CMP DL,9H
JBE LP
ADD DL,7H
LP: ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,DH
AND DL,0FH
CMP DL,9H
JBE LP1
ADD DL,7H
LP1: ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,'H'
MOV AH,2
INT 21H
LEA DX, BLK
MOV AH,09H
INT 21H
JMP START
MOV AH, 4CH
INT 21H
CODE ENDS
END START