Сейчас на форуме: (+4 невидимых)

 eXeL@B —› Вопросы новичков —› Передача параметров
Посл.ответ Сообщение

Ранг: 0.8 (гость)
Активность: 0=0
Статус: Участник

Создано: 22 мая 2006 17:03
· Личное сообщение · #1

Где можно найти информацию, как передаются параметры функций? Например смотрю я в IDA листинг, вижу такое:
call __Int2Str
А вот где находится параметр, который используется этой функцией, и куда возвращается результат, понять не могу По-моему результат находится в AX, но не уверен точно...




Ранг: 216.9 (наставник), 85thx
Активность: 0.310.15
Статус: Участник
X-Literator

Создано: 22 мая 2006 21:59
· Личное сообщение · #2

Если это станд. API - функция , просто в гугле поищи справочник по API-функциям.
А параметры часто в стек пихаются, вот что я тебе скажу. А, в AX, наверно, число передается для переконвертации в символ (типа "(char *) a"

-----
Харе курить веники и нюхать клей, к вам едет из Америки бог Шива, и он еврей.




Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 23 мая 2006 09:00
· Личное сообщение · #3

__fastcall - первый и второй параметры передаются в паре регистров ECX и EDX, остальные - через стек справа налево, вызываемая функция "правит" стек. Соглашения Борланда (который уже давно Inprise ;) для всяческих Inprise Delphi и C++ Builder'ов.
=============================
ralfeus пишет:
Например смотрю я в IDA листинг

Мог бы нам больше одной команды написать, чтобы мы тоже могли подумать, а не из пальца инфу высасывать


 eXeL@B —› Вопросы новичков —› Передача параметров
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати