⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 5.txt

📁 汇编实现字符的输入输出
💻 TXT
字号:
DSeg          SEGMENT
    keybuf    DB        6
    keynum    DB        ?
    keychar   DB        6 DUP(?)
    messege1  DB       'please input a decimal integer <=65535:$' ,0dh,0ah
    messege2  DB       'you input integer is:$',0dh,0ah
    buf       DB        6 DUP(?)
    buf1      DB        7 DUP(?),0dh,0ah,'$'
DSeg          ENDS
code          SEGMENT
    ASSUME    DS:DSeg,CS:code
    start:
          MOV       AX,DSeg
          MOV       DS,AX  
         LEA       DX,messege1
         MOV       AH,9
        INT       21h
        CALL      crlf
        MOV       DX,OFFSET keybuf
        MOV       AH,10
        INT       21h
        CALL      DtoB
        CALL      btoh
        CALL      display
         MOV      AH,4ch
        INT       21h
   dtob PROC  NEAR
      LEA       SI,keychar
    MOV       CX,keynum
    XOR       CH,CH
    MOV       AX,0
 lp:         
    MOV       BL,[SI]
    SUB       BL,30h
    PUSH      CX
    MOV       CX,10
    MUL       CX
    POP       CX
    XOR       BH,BH
    ADD       AX,BX
    INC       SI
    LOOP      lp
    RET
    dtob ENDP
 btoh PROC NEAR
   XOR      BX,BX
              LEA      SI,buf
              MOV      CH,4
     lp1:     MOV      CL,4
              ROL      AX,CL
              MOV      BL,AL
              AND      BL,0fh
              ADD      BL,30h
              CMP      BL,3ah
              JL       lp2
              ADD      BL,7h
     lp2:     MOV      [SI],BL
              INC      SI
              DEC      CH
              JNZ      lp1
              MOV      BL,'H'
              MOV      [SI],BL
              INC      SI
    RET
    btoh ENDP
 display PROC NEAR
    MOV      CX,SI
              LEA      AX,buf
              SUB      CX,AX
              LEA      DI,buf1
              LEA      SI,buf
       lp3:   MOV      BL,[SI]
              MOV      [DI],BL
              INC       SI
              INC       DI
              LOOP      lp3
              CALL      crlf
              LEA       DX,messege2
              MOV       AH,9
              INT       21h
              CALL      crlf
              LEA       DX,buf1
              MOV       AH,9
              INT       21h
              RET 
   display ENDP
 crlf        PROC      NEAR
              PUSH      DX
              PUSH      AX
              MOV       DL,0Dh
              MOV       AH,2
              INT       21h
              MOV       DL,0ah
              MOV       AH,2
              INT       21h
              POP       AX
              POP       DX
              RET
  crlf        ENDP
        code         ENDS
    END       start

⌨️ 快捷键说明

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