В сборке x86 нет единой инструкции для этого. Вы должны найти доступный регистр, использовать его для хранения адреса массива, полученного из -4(%ebp)
, найти другой регистр для хранения индекса 0(%esp)
, и только тогда станет возможным доступ к интересующей вас ячейке в (и в более RISC-подобных сборках вам все равно нужно добавить эти два регистра вместе, прежде чем вы сможете получить доступ к памяти).
Предполагается, что регистры доступны, что-то вроде:
movl -4(%ebp), %ebx
movl 0(%esp), %ecx
movl %eax, 0(%ebx,%ecx,4)
должно работать.