超高分求汇编语言程序修改

来源:百度知道 编辑:UC知道 时间:2024/05/15 09:36:13
程序已经给出, 只是请求各位高手帮忙, 因为运行后会应该出现“INPUT THE HOLD TEMP”,”INPUT THE ALARM TIMP””INPUT THE VOLT” 3个需要输入数据的东西。但是这个程序有缺点, 就是“INPUT THE HOLD TEMP”,没有显示,第二个,INPUT THE ALARM TIMP, 比如输入920完成后按enter只是显示后两个数字20, 第三个INPUT THE VOLT输入只可以输入两位数, 如果要输入900, 那么只能接受90,无法输入多位数。。。。请大家帮忙, 我现在只能悬赏100 , 回答后我再继续增加分数, 谢谢各位高手。 程序语言如下:
NAME sheji
; *****定义数据段****
DATA SEGMENT PARA 'DATA'
V DB 00H,00H,05H,00H,00H
DB 15H,0C3H,04H,00H,00H
DB 29H,00H,05H,0FBH,0FFH
DB 3EH,0C3H,04H,05H,00H
DB 54H,8BH,04H,12H,00H
DB 69H,0C3H,04H,00H,00H
DB 7FH,8BH,04H,16H,00H
DB 95H,8BH,04H,16H,00H
DB 0AAH,0C3H,04H,0F7H,0FFH
DB 0BEH,00H,05H,0CEH,0FFH
DB 0D2H,00H,05H,0CEH,0FFH
DB 0F6H,00H,05H,0CEH,0FFH
DB 0F9H,43H,05H,92H,0FFH
DB 0FFH,00H,05H,0D3H,0FFH
TH DB'INPUT THE HOLD TEMP:',0AH,0DH,'$'
TA DB'INPUT THE ALARM TIMP:',0AH,0DH,'$'
V1 DB'INPUT THE VOLT:',0AH,0DH,'$'
BY DB'

能将这个程序的功能说明一下吗?,我将程序前部分修改了一下,可以显示INPUT THE HOLD TEMP,第三个输入伏特值本来就是两位数。但后面的功能我没看明白,不知道怎么改。
STAR PROC FAR
PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
MOV ES,AX
MOV AX,STACK
MOV SS,AX
MOV SP,TOP
;****显示TH字符串****
MOV DX,OFFSET TH
MOV AH,09H
INT 21H
;****输入保持温度*****
CALL INDA;输入四位十进制数
PUSH BX
;
MOV DX,OFFSET C4
MOV AH,09H
INT 21H
;******输出TA字符串******
MOV DX,OFFSET TA
MOV AH,09H
INT 21H
;******输入报警温度******
CALL INDA;输入四位十进制数
PUSH BX
;
LEA DX,C4
MOV AH,09H
INT 21H
;*******输入电压值*****
MOV DX,OFFSET V1
MOV AH,09H
INT 21H;
LEA SI,V2
MOV CX,2;循环两次,每次输入一个数范围为0~9或A~F,只能输入两位数
INV1: MOV AH,1
INT 21H
CMP AL,40H
JC COM2
SUB AL,7H
; ******ASCII码转数字******
COM2: SUB AL,30H
MOV [SI],AL
INC SI
LOOP INV1
COM3: LEA SI,V