Site hosted by Angelfire.com: Build your free website today!

******ESTE PROGRAMA ORGANIZA DATOS CON EL METODO DE BURBUJA*********

 

TITLE PRAC6_1               

.MODEL SMALL                

.STACK 100h

.DATA                        

        MSG1    DB      'INTRODUZCA DIGITOS Y ENTER PARA TERMINAR: $'      

        ARREGLO DB      100 DUP(0)     

.CODE

 MAIN   PROC

        MOV     AX,@DATA                 

        MOV     DS,AX                    

        MOV     SI,0

        LEA     DX, MSG1

        MOV     AH,9                     

        INT     21h                       

        XOR     CX,CX

        MOV     CL,13

        MOV     CH,0

        XOR     BX,BX

        XOR     DX,DX                    

        MOV     BX,1

        MOV     AH,1

PIDE_DATO:

        CMP     DL,CL

        JE      ORDENA

        INT     21h

        CMP     AL,CL

        JE      ORDENA

        MOV     ARREGLO[SI],AL

        INC     SI

        JMP     PIDE_DATO

ORDENA:

        MOV     BP,SI

CONTINUA:

        CMP     SI,0

        JE      FIN

        CMP     SI,1

        JE      IMPRIME

        MOV     DL,1

        MOV     CX,BP

        MOV     SI,0

BURBUJA:

        CMP     DL,0

        JE      IMPRIME

        MOV     DL,0

        MOV     BL,ARREGLO[SI]

        MOV     BH,ARREGLO[SI+1]

        CMP     BL,BH

        JBE     OTRO

        MOV     AL,ARREGLO[SI]

        MOV     ARREGLO[SI],BH

        MOV     ARREGLO[SI+1],AL

        INC     SI

        MOV     DL,1

        DEC     CL

        CMP     CL,1

        JE      CONTINUA

        JMP     BURBUJA

 OTRO:

        INC     SI

        DEC     CL

        CMP     CL,0

        JE      ORDENA

        JMP     BURBUJA

IMPRIME:

        MOV     AH,2

        MOV     DL,10

        INT     21h

        MOV     AH,2

        MOV     DL,13

        INT     21h

        MOV     CX,BP

        MOV     SI,0

 CICLO:

        CMP     CL,0

        JE      FIN

        MOV     DL,ARREGLO[SI]

        INT     21h

        INC     SI

        DEC     CL

        JMP     CICLO

 FIN:

        MOV     AH,4CH                    

        INT     21h                      

 MAIN   ENDP                     

        END MAIN