
请详细解释下汇编语言 下面这段程序(包括每行的意义) 5
STACKSEGMENTSTACKDW64DUP(?)STACKENDSDATASEGMENTTABLEDB31H,30H,30H,00HDATAENDSCODESEGM...
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
DATA SEGMENT
TABLE DB 31H,30H,30H,00H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AL,80H
OUT 63H,AL
MOV AL,0FFH
OUT 60H,AL
A1: MOV AX,DATA
MOV DS,AX
OUT 00H,AL
CALL DALLY
IN AL,00H
MOV CH,64H
MUL CH
MOV CH,0FFH
DIV CH
CMP AL,63H
JG A8
MOV CL,00H
CMP AL,0AH
JAE A2
JMP A3
A2: SUB AL,0AH
INC CL
CMP AL,09H
JG A2
A3: MOV CH,AL
CMP CL,08H
JG A6
CMP CL,00H
JG A5
JMP A4
A4: MOV AL,0F0H
OUT 60H,AL
JMP A7
A5: MOV AL,0FFH
OUT 60H,AL
JMP A7
A6: MOV AL,0FH
OUT 60H,AL
JMP A7
A7: MOV AH,01H
MOV AL,CL
ADD AL,30H
INT 10H
MOV AH,01H
MOV AL,CH
ADD AL,30H
INT 10H
JMP A9
A8: MOV AL,0FH
OUT 60H,AL
MOV BX,OFFSET TABLE
MOV AH,06H
INT 10H
A9: CALL DALLY
MOV AX,010D
INT 10H
JMP A1
DALLY: PUSH CX
PUSH AX
MOV CX,0040H
A10: MOV AX,056CH
A11: DEC AX
JNZ A11
LOOP A10
POP AX
POP CX
RET
CODE ENDS
END START
本来就没多少分 希望懂的人都来帮忙下 展开
DW 64 DUP(?)
STACK ENDS
DATA SEGMENT
TABLE DB 31H,30H,30H,00H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AL,80H
OUT 63H,AL
MOV AL,0FFH
OUT 60H,AL
A1: MOV AX,DATA
MOV DS,AX
OUT 00H,AL
CALL DALLY
IN AL,00H
MOV CH,64H
MUL CH
MOV CH,0FFH
DIV CH
CMP AL,63H
JG A8
MOV CL,00H
CMP AL,0AH
JAE A2
JMP A3
A2: SUB AL,0AH
INC CL
CMP AL,09H
JG A2
A3: MOV CH,AL
CMP CL,08H
JG A6
CMP CL,00H
JG A5
JMP A4
A4: MOV AL,0F0H
OUT 60H,AL
JMP A7
A5: MOV AL,0FFH
OUT 60H,AL
JMP A7
A6: MOV AL,0FH
OUT 60H,AL
JMP A7
A7: MOV AH,01H
MOV AL,CL
ADD AL,30H
INT 10H
MOV AH,01H
MOV AL,CH
ADD AL,30H
INT 10H
JMP A9
A8: MOV AL,0FH
OUT 60H,AL
MOV BX,OFFSET TABLE
MOV AH,06H
INT 10H
A9: CALL DALLY
MOV AX,010D
INT 10H
JMP A1
DALLY: PUSH CX
PUSH AX
MOV CX,0040H
A10: MOV AX,056CH
A11: DEC AX
JNZ A11
LOOP A10
POP AX
POP CX
RET
CODE ENDS
END START
本来就没多少分 希望懂的人都来帮忙下 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询