169 похожих чатов

Скажите пожалуйста, какой практический смысл сохранять регистр в стек. Зачем

это вообще надо ?

10 ответов

28 просмотров

от контеста зависит. просто так это делать смысла нет

обычно делают это перед тем как регистр испортят. чтобы потом можно было восттановить значение, взяв из стека

push ebx ; сохраняем значение ; как-то изменяем ebx pop ebx ; восстанавливаем прошлое значние

Александр
А зачем его портить

порой это не от тебя зависит если ты вызываешь что то системное

Александр
А зачем его портить

Регистры - большой дефицит. Обычно их не хватает. Приходится сохранять и потом восстанавливать.

Александр- Автор вопроса
Rustem Gimadutdinov
push ebx ; сохраняем значение ; как-то изменяем eb...

С обычными регистрами понятно. А зачем это для флага.

Александр
С обычными регистрами понятно. А зачем это для фла...

Регистр флагов - подавно, он вообще единственный.

Александр- Автор вопроса
Alexander Morozov
Регистр флагов - подавно, он вообще единственный.

Тоесть нам нужен регистр, так как их не хватает. Мы регистр записываем в стек. Потом используем его как хотим. И когда он освобождается, мы его восстанавливаем из стека ?

Александр
Тоесть нам нужен регистр, так как их не хватает. М...

Именно так. А компиляторы языков высокого уровня при входе в процедуру вообще сразу сохраняют определенный список регистров, чтобы все было единообразно.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта