Hola Muchachos, antes que nada gracias por el tiempo en leer mi post.
Como dice el titulo del foro estoy trabajando con un lenguaje de programacion de bajo nivel (Assembler) y uso un compilador llamado EMU 8086.
Lo que necesito hacer es lo siguiente:
Cargar una matriz de 4 filas por 10 columnas en memoria RAM. Dicha matriz
contiene en cada posición una letra del alfabeto, en forma desordenada,
pueden estar repetidas.
Leer números de 2 dígitos cada uno, dichos números representan posiciones
de la matriz.
Por ejemplo si se lee el número 3, y luego el numero 1 significa que se debe ir a la fila 3, columna 1.
Cada posición ingresada permite encontrar un carácter en la matriz. Con los
caracteres encontrados se formara una palabra, de izquierda a derecha.
Mostrar por pantalla la palabra formada.
Si les sirve tengo un código que suma dos matrices de números, quizas pueden tomar como base ese código.
Muchas gracias !!!
.STACK 100h
.DATA
matriz1 db 20,14,2,3,13,9,17,14,8,3,34,31,4,14,9,12
matriz2 db 5,9,41,6,3,8,9,12,8,45,10,34,5,2,34,6
tamano1 db 16
tamano2 db 4
.CODE
main proc
mov ax,
@DATA mov ds, ax
mov ax, 0
;loop
mov ch, 0
mov cl, tamano1
repetir:
dec cx
lea bx, [matriz1]
add bx, cx
mov al, [bx]
lea bx, [matriz2]
add bx, cx
mov bl, [bx]
add al, bl
mov ah, 0
push ax
cmp cx, 0
jnz repetir
mov ch, 0
mov cl, tamano1
repimp:
dec cx
pop ax
call imprimir
call impenter
cmp cx, 0
jnz repimp
mov ax, 4c00h
int 21h
impenter:
mov ax, cx
mov bl, tamano2
div bl
cmp ah, 0
jz impent
retenter:
ret
impent:
mov ah,02h
mov dl,13
int 21h
mov dl,10
int 21h
jmp retenter
imprimir:
mov bl, 10
div bl
add al,30h
add ah,30h
mov bx, ax
mov dl,bl
mov ah,02h
int 21h
mov dl,bh
int 21h
mov dl,32
int 21h
ret
mov ax, 4c00h
int 21h
main endp
END main