Size: a a a

Ассемблер

2021 September 19

P

ProMiNick in Ассемблер
Max Azatian это уже и упомянул
источник

E

Entusiast in Ассемблер
Я не понял ответа

- x86 / x86_64 ?
- Именно по этому принципу

Что это значит? Значит x86?
источник

E

Entusiast in Ассемблер
Ну ещё эта инструкция помогает оптимизировать конвейер.

Конечно, это ж ещё разные случаи бывают, когда эта инструкция может понадобится. Но кого волнуют детали
источник

P

ProMiNick in Ассемблер
в x86 ничего, в x64 очищает биты 32-63 регистра rax
источник

E

Entusiast in Ассемблер
Согласен. Сразу бы уточнить все детали

Только не пойму, о чём тут спорить. Вроде ответов немного. Вот если бы вопрос касался "как работает эта инструкция \ что эта инструкция делает изнутри" - тогда бы пошла тема на 2 дня
источник

楽園松本 in Ассемблер
@cedor что такое ip?
источник

.

./meow.sh in Ассемблер
он вас испугался
источник

БЗ

Богдан Зараник... in Ассемблер
Значит, будет удален.)
источник

AP

Andrey P in Ассемблер
Коллеги, в ткните куда почитать, Можно ли поменять флаги какой-то коммандой? Например, ZF?
источник

AP

Andrey P in Ассемблер
Ну в смысле не используя вычитание. Напрямик флаги поменять
источник

MA

Max Azatian in Ассемблер
push <флаги>
popf
источник

AP

Andrey P in Ассемблер
спасибо. а в случае ZF например это как будет выглядеть. Если один конкретный флаг надо поменять
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
поменять флаг значит поменять бит отвечающий за ZF. сохраняем в стек регистр флагов, меняем нужный бит/флаг, восстанавливаем флаг из стека в флаговый регистр
источник

AP

Andrey P in Ассемблер
в стеке меняем? ну идея да
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
да, регистр флагов не имеет интстуукций для прямого воздействия
источник

AP

Andrey P in Ассемблер
спасибо
источник

楽園松本 in Ассемблер
Так делать можно. Но это плохая практика -- менять флаги. Путь к неконтролируемому поведению программы.
источник

E

Entusiast in Ассемблер
Плохая практика - менять флаги, смена которых непредусмотрена.
А вот вообще менять флаги - нормально. Например, DF
источник

E

Entusiast in Ассемблер
Наверное, проще сказать - "Плохая практика - менять системные флаги. Управляющие - можно"

Хотя, нет. CF же не управляющий, а менять его тоже можно
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
почему неконтролируемому? у нас же ведь есть инстукции которые работают так или иначе в зависимости от флага, то есть есть тот механизм который основывается на работу флагов. другое дело что это не целесообразно, ведь всегда можно завести переменную, регистр для отработки того или иного случая
источник