Enviado em 03/07/2022 - 15:46h
Tenho esse código, ele roda, mas tem um erro de semântica que não consigo encontrar. Alguém pode me ajudar?
.MODEL Small
.186
.STACK 100h
.DATA
Tam dw 10 ; int Tam=10;
array1 dw 0,1,2,3,4,5,6,7,8,9 ; int array1[10]={0,1,2,3,4,5,6,7,8,9}
array2 dw 10 dup(?) ; int array2[10]
.CODE
MAIN PROC
mov ax,@DATA
mov es,ax ; inicializa registro de segmento de dados
mov bx, Tam
dec bx; ; aponta para o ultimo elemento do array
moveLoop:
mov ax,array1[bx]
mov array2[bx],ax ; copia um elemento
sub bx, 1
jg moveLoop ; pula enquanto há elementos
mov ah,4ch
int 21h
MAIN ENDP
END MAIN
.MODEL Small
.186
.STACK 100h
.DATA
Tam dw 10 ; int Tam=10;
array1 dw 0,1,2,3,4,5,6,7,8,9 ; int array1[10]={0,1,2,3,4,5,6,7,8,9}
array2 dw 10 dup(?) ; int array2[10]
.CODE
MAIN PROC
mov ax,@DATA
mov es,ax ; inicializa registro de segmento de dados
mov bx, Tam
dec bx; ; aponta para o ultimo elemento do array
moveLoop:
mov ax,array1[bx]
mov array2[bx],ax ; copia um elemento
sub bx, 1
jg moveLoop ; pula enquanto há elementos
mov ah,4ch
int 21h
MAIN ENDP
END MAIN