0

每当我在过程中执行具有数组的代码时,我都会崩溃,而且我不确定自己做错了什么。我之前已经成功地做到了这一点,但是我的新实现使它失败并且很难崩溃。

这是设置整个事情的主要部分:

push OFFSET list
push OFFSET looper
push OFFSET count
push tester
push OFFSET error_2
push OFFSET error_1
call validate 

这是 validate 崩溃的部分:

mov eax, [ebp + 16];
mov edx, [ebp+28]
mov ecx, [ebp+20]
mov [edx + 4 * ecx], eax ; this is the line that it crashes on

这与我过去访问数组的方式基本相同......我做错了什么?

4

1 回答 1

0

为什么使用 EBP 寄存器?返回地址在 ESP 中,error_1 在 ESP+4 中,error_2 在 ESP+8 中,您的测试仪在 ESP+0C 中...

于 2013-09-03T04:43:52.303 回答