辽 宁 工 业 大 学 课 程 设 计 说 明 书 (论文)
MOV AX,OFFSET IN_MSG2 ; 提示输入第二个数据 CALL DISPMSG
CALL READSID ; 输入第二个数据 MOV CX,AX ; 保存到CX MOV y,CX CALL AGAIN
MOV AX,OFFSET OUT_MSG CALL DISPMSG MOV AX,CX CALL DISPSID
AGAIN PROC CMP BX,CX JNL FRONT XCHG BX,CX FRONT: XOR DX,DX MOV AX,BX DIV CX CMP DX,0 JZ EQUAL MOV BX,CX MOV CX,DX JMP FRONT EQUAL: RET AGAIN ENDP
DISPMSG PROC MOV DX,AX MOV AH,9 INT 21H
13
辽 宁 工 业 大 学 课 程 设 计 说 明 书 (论文)
RET
DISPMSG ENDP
READSID PROC MOV AH,1 INT 21H MOV DH,AL SUB DH,30H
MOV AH,1 INT 21H CMP AL,0DH JZ DONE1 SUB AL,30H SHL DH,1 MOV DL,DH SHL DH,1 SHL DH,1 ADD DH,DL ADD DH,AL DONE1: MOV CL,DH
MOV DX,OFFSET BUFF MOV AH,9 INT 21H MOV AL,CL XOR AH,AH RET
14
辽 宁 工 业 大 学 课 程 设 计 说 明 书 (论文)
READSID ENDP
DISPSID:
MOV BL,AL MOV BH,1 L1:MOV AL,BL XOR AH,AH DIV BH CMP AH,0 JNZ NEXT MOV AL,BH AAM MOV CX,AX ADD CH,30H MOV DL,CH MOV AH,2 INT 21H ADD CL,30H MOV DL,CL MOV AH,2 INT 21H
MOV DX,OFFSET BUFF MOV AH,9 INT 21H NEXT:INC BH CMP BL,BH JL DONE JMP L1 DONE:
15
辽 宁 工 业 大 学 课 程 设 计 说 明 书 (论文)
MOV AX,OFFSET PF; CALL DISPMSG call pfc pfc proc
work: mov al,byte ptr x
mul al
mov z,ax mov al,byte ptr y mul al
cmp z,ax
jb int1 sub z,ax
jmp int2
int1: sub ax,z mov z,ax mov c,'-' int2: mov cx,5h mov di,4h
mov bx,0ah
mov ax,z work2: mov dx,0 div bx
add dl,30h
mov s[di],dl
dec di
cmp ax,0h
jz w2exit
loop work2
16
辽 宁 工 业 大 学 课 程 设 计 说 明 书 (论文)
w2exit: mov al,c mov s[di],al mov dx,offset ctrl mov ah,09h int 21h
mov di,0
work3: inc di cmp s[di],0h jz work3 lea dx,s[di] mov ah,09h int 21h mov ah,4ch int 21h
ret
pfc endp
MOV AH,4CH INT 21H CODE ENDS END START
前面提到的代码不完整,因为格式原因 运行会出错,调试的时候请用本页的代码。
17
辽 宁 工 业 大 学 课 程 设 计 说 明 书 (论文)
18