как поменять местами элементы 2 массивов разных типов одинаковой длины? - PullRequest
0 голосов
/ 06 февраля 2020

Не уверен, что мне нужен третий массив для временного хранения значений, чтобы поменять местами содержимое arrayA и arrayB. Я впервые учусь на ассемблере, поэтому, пожалуйста, будьте проще.

.386
.model flat,stdcall ; memory system
.stack 4096 ; declare stack memory size 4kb
ExitProcess proto,dwExitCode:dword
.data

arrayA byte 01d, 04d, 02d ; 8bits
arrayB word 02d, 05d, 05d ; 16bits

.code
main proc

mov EAX, 0
    mov EBX, 0
    mov ECX, 3
    mov EDX, 0

    L1:
        movzx bx, arrayA[ebx]
        mov ax, arrayB[ebx]

        xchg arrayA[ebx], al 
        xchg arrayB[ebx], bx

        inc ebx
        loop L1


    invoke ExitProcess,0
main endp
end main
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...