算术运算与数制转换-水平移位.asm

来自「实现了算术运算功能」· 汇编 代码 · 共 92 行

ASM
92
字号
DATAREA   SEGMENT
  X   DB   0
DATAREA   ENDS

MYPROG  SEGMENT
       ASSUME  CS:MYPROG,DS:DATAREA
START: MOV   AX,DATAREA
       MOV   DS,AX

       MOV   BX,0
       MOV   CX,4
       MOV   AH,01H
 LP1:  INT   21H
       SUB   AL,30H
       CMP   AL,09H
       JLE   P1
       sub   AL,07H
   P1: SHL   BX,1
       SHL   BX,1
       SHL   BX,1
       SHL   BX,1
       ADD   BL,AL
       LOOP  LP1

       
       INT   21H
       MOV   X,AL
       
       MOV   DX,0
       MOV   CX,4
 LP2:  INT   21H
       SUB   AL,30H
       CMP   AL,09H
       JLE   P2
       SUB   AL,07H
   P2: SHL   DX,1
       SHL   DX,1
       SHL   DX,1
       SHL   DX,1
       ADD   DL,AL
       LOOP  LP2
        
       MOV   AL,X
       CMP   AL,2BH
       JLE   P3
       SUB   BX,DX
       JMP   P4
    P3:ADD   BX,DX

    P4:MOV   DX,BX
       MOV   CL,13
       SHR   DX,CL
       ADD   DL,30H 
       MOV   AH,02H      
       INT   21H

       MOV   DX,BX
       MOV   CL,12
       SHR   DX,CL
       AND   DL,07H
       ADD   DL,30H
       INT   21H
       MOV   DX,BX
       MOV   CL,9
       SHR   DX,CL
       AND   DL,07H
       ADD   DL,30H
       INT   21H
       MOV   DX,BX
       MOV   CL,6
       SHR   DX,CL
       AND   DL,07H
       ADD   DL,30H
       INT   21H
       MOV   DX,BX
       MOV   CL,3
       SHR   DX,CL
       AND   DL,07H
       ADD   DL,30H
       INT   21H
       MOV   DX,BX
       AND   DL,07H
       ADD   DL,30H
       INT   21H

       MOV   AH,4CH
       INT   21H

MYPROG   ENDS

       END   START

⌨️ 快捷键说明

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