|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.03.2013, 11:53 | #1 |
Пользователь
Регистрация: 09.02.2012
Сообщений: 42
|
Модель вызова подпрограмм в ассемблере
Здравствуйте. Всем доброго времени суток. У меня неожиданно возник вопрос о том, как выбор модели вызова подпрограмм в ассемблере влияет на быстродействие. Как вы уже знаете есть стандартный тип это stdcall. Но вызвать подпрограмму можно также по разному. На пример функция MessageBox
PHP код:
PHP код:
P.S Сильно не ругайте я просто новичок... И ещё: в этой теме я рассмотрел лишь одну модель вызова и это stdcall. |
11.03.2013, 12:04 | #2 |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
скомпилируйте оба варианта и посмотрите в отладчике. сразу отпадут все вопросы)
Правильно поставленная задача - три четверти решения.
|
11.03.2013, 13:02 | #3 |
C/C++, Asm
Участник клуба
Регистрация: 02.03.2010
Сообщений: 1,323
|
второй случай больше смахивает использование макроса INVOKE.
никакой разницы конечно же нет. в первом случае все сами честно записали, во втором случае за вас это сделал компилятор (преобразовал INVOKE в последовательность PUSH и CALL) |
11.03.2013, 15:44 | #4 |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
эхх.. испортили воспитательный процесс оно же пока сам не попробуешь - до конца верить будешь, что все по-другому...
Правильно поставленная задача - три четверти решения.
|
11.03.2013, 19:08 | #5 |
Пользователь
Регистрация: 09.02.2012
Сообщений: 42
|
Всем спасибо за ответы. Кстати вашим советом "скомпилировать и посмотреть в отладчике" я не пренебрег, действительно почти тоже самое, за исключением одной строки после вызова функции wsprintf но я знаю из-за чего.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Инструкции работы со стеком и организации подпрограмм на ассемблере IA-32 | StarMoon | Помощь студентам | 1 | 09.05.2012 17:36 |
Инструкции работы со стеком и организации подпрограмм на ассемблере IA-32 | StarMoon | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 09.05.2012 17:25 |
Отмена вызова метода | peplenko | Общие вопросы C/C++ | 2 | 12.04.2011 13:52 |