shuru.asm

来自「本程序是汇编语言的一些基本功能的组合」· 汇编 代码 · 共 86 行

ASM
86
字号

CODE SEGMENT
MAIN PROC FAR 
 ASSUME CS:CODE
START:
 PUSH DS
 SUB AX,AX
 PUSH AX

 CALL DECIBIN

 CALL CRLF
 
 CALL BINIDEC
 RET
MAIN ENDP
;--------------------

DECIBIN   PROC   NEAR
      MOV BX,0
NEWCHAR:
      MOV AH,1
      INT 21H
      SUB AL,30H
     CMP AL,0
     JB  EXIT1
     CMP AL,9
     JNBE  EXIT1
    CBW  
  XCHG AX,BX
  MOV CX,10D
  MUL CX
  XCHG AX,BX
  ADD  BX,AX
  JMP  NEWCHAR
EXIT1:
  RET
DECIBIN   ENDP
;----------------
BINIDEC   PROC   NEAR
     PUSH  BX
     PUSH  CX
     PUSH  SI
     PUSH  DI
     MOV   DI,0
     MOV   CX,10000D
     CALL  DEC_DIV
     MOV   CX,1000D
     CALL  DEC_DIV
     MOV   CX,100D
     CALL  DEC_DIV
     MOV   CX,10D 
     CALL  DEC_DIV
     MOV   CX,1
     CALL  DEC_DIV
     POP   DI
     POP   SI
     POP   CX
     POP   BX
     RET
BINIDEC   ENDP
;---------------------
DEC_DIV   PROC   NEAR
     MOV  AX,BX
     MOV  DX,0
     DIV  CX
     MOV  BX,DX
     MOV  DL,AL
     ADD  DL,30H
     MOV  AH,2
     INT  21H
    RET
DEC_DIV   ENDP
;---------------------
CRLF   PROC   NEAR
     MOV  DL, 0DH
     MOV  AH, 2
     INT 21H
     MOV  DL, 0AH
     INT  21H
     RET
CRLF   ENDP
;---------------------
CODE ENDS
 END START

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?