Всем привет! Скажите пожалуйста, какие ригистры юзают апи функции?? Знаю, что точно это eax и ecx. Спасибо!
Levmetall все которые требуются, требование сохранять относится только EBX ESI EDI (наскока мне известно)
Rockphorr, учите матчасть Levmetall, функции юзают любые регистры. но как сказанно выше, содержимое некоторых регистров должно быть сохранено и востановленно при выходе из функции. эти регистры ebx, esi, edi, ebp, а в __stdcall ещё и esp.
СПАСИБО ООООГРОМММНООЕЕЕ!!!!!!!!!!!!!!!!!!!!!!!!!!!! Теперь буду знать какие регистры сохранять вручную. А то один раз создал цикл, и не сохранил его в стеке, апи функция изменила ecx. И в итоге цикл начал выполняться оччень много. И пошел збой проги.
я не заморачиваюсь с сохранением регистров. все это легко сделать с помощью pusha/popa, а если нужно вернуть результат, возвращаю в его в eax (после popa). зы было замечено падение в некоторых случаях использования команд поднятия/снятия битов регистра флажков (например для repne scasb). в этом случае я применял pushf/popf и усе ровненько робит.