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

📄 e411_01.asm

📁 汇编的大作业源代码 包括基本和进阶的汇编语言的运用 对初学者很有帮助 内有更详细说明
💻 ASM
字号:
STACK1      SEGMENT PARA STACK          
STACK_AREA  DW      100H DUP(?)
STACK_BTM   EQU     $ - STACK_AREA
STACK1      ENDS

DATA1       SEGMENT                                 
TABLE_LEN   DW       20                             
TABLE       DB       20,30,40,10,70,0,1,8,6,15
            DB       41H,26,42H,50,60,0FH,2,3,10H,8
RESULT      DB       5 DUP(?),20H,'$'
NEW_LINE    DB       0DH,0AH,'$'
DATA1       ENDS

CODE1       SEGMENT                                  
               ASSUME  CS:CODE1,DS:DATA1,SS:STACK1   
MAIN       PROC    FAR
            MOV     AX,STACK1                 
            MOV     SS,AX
            MOV     SP,STACK_BTM
            MOV     AX,DATA1
            MOV     DS,AX
            
PART1:      MOV     CX,TABLE_LEN                             ;输出未排序
            MOV     SI,OFFSET TABLE
LP1:        PUSH    CX
            MOV     CX,5
            MOV     DI,OFFSET RESULT+4
            MOV     AL,[SI]
            XOR     AH,AH
            MOV     BX,10
LP1_1:      XOR     DX,DX
            DIV     BX
            OR      DL,30H
            MOV     [DI],DL
            DEC     DI
            LOOP    LP1_1
            
            MOV     DX,OFFSET RESULT
            MOV     AH,9
            INT     21H
            INC     SI
            POP     CX
            LOOP    LP1
            
            MOV     DX,OFFSET NEW_LINE
            MOV     AH,9
            INT     21H
           
PART2:      XOR     CX,CX
            XOR     BX,BX
            MOV     BX,1                                      ;排序
            MOV     CX,TABLE_LEN
            DEC     CX
            MOV     SI,OFFSET TABLE
LP2:        MOV     AL,[SI]
            CMP     AL,[SI+1]
            JAE     LP2_1          
            XCHG    AL,[SI+1]
            MOV     [SI],AL
            MOV     BX,0
LP2_1:      ADD     SI,1
            LOOP    LP2
            CMP     BX,1
            JZ      PART3                
            JMP     SHORT PART2
            
PART3:      MOV     CX,TABLE_LEN                             ;输出未排序
            MOV     SI,OFFSET TABLE
LP3:        PUSH    CX
            MOV     CX,5
            MOV     DI,OFFSET RESULT+4
            MOV     AL,[SI]
            XOR     AH,AH
            MOV     BX,10
LP3_1:      XOR     DX,DX
            DIV     BX
            OR      DL,30H
            MOV     [DI],DL
            DEC     DI
            LOOP    LP3_1
            
            MOV     DX,OFFSET RESULT
            MOV     AH,9
            INT     21H
            INC     SI
            POP     CX
            LOOP    LP3
            
            MOV     DX,OFFSET NEW_LINE
            MOV     AH,9
            INT     21H
           
EXIT:       MOV     AX,4C00H
            INT     21H
MAIN        ENDP
CODE1      ENDS            
           END     MAIN     

⌨️ 快捷键说明

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