es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

“La ordenación de burbuja utilizando ensamblador se ha quedado atascada después de la entrada de datos.”

Soy un traductor de español que traduce documentos de TI. Traduzca lo siguiente al español. No traduzca el código ni la salida en markdown.

Soy un completo novato en ASM y no entiendo qué error estoy cometiendo, bueno, porque no sé dónde podría estar equivocado, así que necesito ayuda, a continuación está el código que he intentado juntar usando recursos en línea.

.MODEL SMALL
.386
.DATA

ARRAY DB 100 DUP (?)
N DB (?)
DATA DB (?)
ORDER EQU 0; implica orden ascendente

MSG1 DB 13,10, ‘Ingrese el número de elementos en el arreglo (0-9): $’
MSG2 DB 13,10, ‘Ingrese los números: $’
MSG3 DB 13,10, ‘EL ARREGLO ORDENADO ES: $’

.CODE
.INICIO

;imprimir msg1
MOV DX, OFFSET MSG1
MOV AH, 09H
INT 21H

MOV EDX, 0H
MOV EAX, 0H
MOV SI, 0

;tomar el número de elementos
MOV AH, 01H
INT 21H
SUB AL, 30H
MOV N, AL
MOV AH, 0
MOV CX, AX; CX ahora contiene el tamaño del arreglo
MOV SI, 0H

;ingresar los elementos
ENTRADA:

MOV DX, OFFSET MSG2
MOV AH, 09H
INT 21H

MOV AH, 01H
INT 21H
SUB AL, 30H
CMP AL, 09H
JBE LABEL1
SUB AL, 07H
LABEL1:
MOV ARRAY[SI], AL
INC SI
LOOP INPUT

MOV AX, @ DATA
MOV DS, AX
MOV BX, CX
DEC BX

NXTPASS:
MOV CX, BX
MOV SI, 00H

NXTCOMP:
MOV AL, ARRAY[SI]
INC SI
CMP AL, ARRAY[SI]
IF ORDER EQ 0; ascendente
JB NEXT
ELSE; descendente
JA NEXT
ENDIF
XCHG AL, ARRAY[SI]
MOV ARRAY[SI-1], AL

NEXT:
LOOP NXTCOMP
DEC BX
JNZ NXTPASS
MOV DX, OFFSET MSG3
MOV AH, 09H
INT 21H
MOV BX, CX
MOV SI, 00H

OTRA VEZ:
MOV AL, ARRAY[SI]
ADD AL, ‘0’
MOV DL, AL
MOV AH, 02H
INT 21H
MOV AH, 02H
MOV DL, ‘ ‘
INT 21H
INC SI
DEC BX
JNZ AGAIN

MOV AH, 4CH
INT 21H
FIN

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Sería de ayuda si la persona que busca ayuda pudiera proporcionar más información acerca del error que está encontrando. Sin un mensaje de error específico, es difícil identificar dónde se encuentra el problema en el código. Además, sería útil conocer el resultado deseado del programa y cualquier funcionalidad deseada.

Comments are closed.