Ассемблерная рамка и массивы стековых языков

Я пытаюсь создать программу на ассемблере, которая копирует массив X в кадр стека и отображает кадр стека на экране перед выходом из процедуры. Это то, что я написал до сих пор, и оно только дает мне ошибки, поскольку не компилируется в Microsoft C ++ Visual Studio.

ExitProcess PROTO,  dwExitCode:DWORD
calSumP PROTO,baseP:ptr dword, sumP:ptr dword, incre:dword, count:dword

.data

X   sdword   10, -10, 20, -20, 30, -30, 40, -40

.code

begin:
invoke calSumP,addr X, addr X, type X, lengthof X
invoke exitProcess,0

calSumP
proc,baseP:ptr dword, sumP:ptr dword, incre:dword, count:dword
local array1[8]:dword

mov esi,[ebp+8]
mov esi,[ebp+12]
mov esi,[ebp+16]
mov esi,[ebp+20]
mov esi,[ebp+24]
mov esi,[ebp+28]
mov esi,[ebp+32]
mov esi,[ebp+36]
mov eax,0
nextP:
add eax,[esi]
loop    nextP
ret
calSumP endp

invoke  ExitProcess,0
end     begin

Это правильный способ добавить массив в стек? Как бы я отобразил его содержимое?

0

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]