История изменений
Исправление pv4, (текущая версия) :
А вот у меня кстати ещё вопрос по поводу передачи аргументов в регистрах. Насколько оно быстрее в реальных приложениях (именно прикладной код, а не какое-нибудь кодирование/раскодирование)?
Ведь если я передаю из функции a() в функцию b() аргумент в регистре ebx/rbx, то если функция b() захочет вызвать функцию c() с одним аргументом (передающимся, очевидно, в этом же регистре), ей придётся сохранить предыдущее значение ebx/rbx для дальнейшего использования внутри себя, и сохранить его либо в стеке (тогда никаких плюсов по сравнению с передачей через регистр и не будет), либо в другом регистре, скажем esi/rsi, но тогда ей также придётся думать, где сохранить этот самый esi/rsi.
Исходная версия pv4, :
А вот у меня кстати ещё вопрос по поводу передачу аргументов в регистрах. Насколько оно быстрее в реальных приложениях (именно прикладной код, а не какое-нибудь кодирование/раскодирование)?
Ведь если я передаю из функции a() в функцию b() аргумент в регистре ebx/rbx, то если функция b() захочет вызвать функцию c() с одним аргументом (передающимся, очевидно, в этом же регистре), ей придётся сохранить предыдущее значение ebx/rbx для дальнейшего использования внутри себя, и сохранить его либо в стеке (тогда никаких плюсов по сравнению с передачей через регистр и не будет), либо в другом регистре, скажем esi/rsi, но тогда ей также придётся думать, где сохранить этот самый esi/rsi.