Size: a a a

🎄Embedded Group

2021 January 22

P

Ponytale 🇷🇺 in 🎄Embedded Group
банальщина кокаято
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
Leonid Zaliubovskii
Как правильно сказал @sadkobogatiygost , все зависит от компилятора и процессора. В некоторых случаях есть в системе команд некотырых процессов команды для работы с битовыми полями. Другие реализуют это через сдвиг

В целом, примерно одинаково
я до сих пор не понял сути этих команд и зачем они
источник

LZ

Leonid Zaliubovskii in 🎄Embedded Group
Ponytale 🇷🇺
я до сих пор не понял сути этих команд и зачем они
А что именно не понятно то
источник

Г

Георгий Торопов... in 🎄Embedded Group
Leonid Zaliubovskii
Как правильно сказал @sadkobogatiygost , все зависит от компилятора и процессора. В некоторых случаях есть в системе команд некотырых процессов команды для работы с битовыми полями. Другие реализуют это через сдвиг

В целом, примерно одинаково
если оно к архитектуре привязано, переносимости кода не будет
источник

LZ

Leonid Zaliubovskii in 🎄Embedded Group
Это ассемблер Арма.
источник

AK

Andrew K in 🎄Embedded Group
Ponytale 🇷🇺
я до сих пор не понял сути этих команд и зачем они
можно одной командой очистить часть регистра
источник

LZ

Leonid Zaliubovskii in 🎄Embedded Group
Георгий Торопов
если оно к архитектуре привязано, переносимости кода не будет
Ну собственно я и писал что привязано, и зависит от endianes. По сути, в зависимости от архитектуры ядра и компилятора это будет или сдвиг или спец команды для работы с полями. Наподобие тез что я привел.
источник

AI

Andrey Io in 🎄Embedded Group
Andrew K
можно одной командой очистить часть регистра
Речь про asm? Просто ежже &= ~(маска) в сях. Я хз во сколько инструкций оно разворачивается. Если маска константная, то, наверное, даже в одну.
источник

AI

Andrey Io in 🎄Embedded Group
Без магии
источник

AK

Andrew K in 🎄Embedded Group
про асм, даже если и константа то в пяток примерно
источник

AI

Andrey Io in 🎄Embedded Group
Никогда не проверял, надо будет не забыть посмотреть
источник

A

Alexander in 🎄Embedded Group
Andrey Io
Речь про asm? Просто ежже &= ~(маска) в сях. Я хз во сколько инструкций оно разворачивается. Если маска константная, то, наверное, даже в одну.
3 операции обычно.
Чтение-модифицирование-запись
(В чем-то а ля Cortex)
источник

Г

Георгий Торопов... in 🎄Embedded Group
да насрать как сделано, лишь бы работало как надо
источник

A

Alexander in 🎄Embedded Group
Георгий Торопов
да насрать как сделано, лишь бы работало как надо
Когда проект большой чтобы он работал как надо надо делать норм.
источник

LZ

Leonid Zaliubovskii in 🎄Embedded Group
Andrey Io
Речь про asm? Просто ежже &= ~(маска) в сях. Я хз во сколько инструкций оно разворачивается. Если маска константная, то, наверное, даже в одну.
Учитывая что армы это RMW архитектура, как и большинство - то нужно считать, модифицировать(маска там, биты установки/сброса) и записать обратно. А порой, ещё смещение посчитать, если это поле в структуре. То да, это будет 5 и большое инструкций
источник

LZ

Leonid Zaliubovskii in 🎄Embedded Group
Alexander
Когда проект большой чтобы он работал как надо надо делать норм.
Вот вот. Имел опыта черпания говна ложкой похоже тоже 😂
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
Leonid Zaliubovskii
А что именно не понятно то
теоретически непонятно зачем в процике далеть манимпулирование битикам
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
за пределами and, or, not (или другого полного базиса лог. функций) и сдвигов
источник

LZ

Leonid Zaliubovskii in 🎄Embedded Group
Георгий Торопов
да насрать как сделано, лишь бы работало как надо
Хоббийное, да вполне. Ибо для души и ради процесса. А в комерчиских проектах, если позволяет время - лучше делать хорошо, меньше времени потом на поддержку и отладку уйдет. Меньше овертаймить
источник

P

Ponytale 🇷🇺 in 🎄Embedded Group
Andrew K
можно одной командой очистить часть регистра
and делает то же самое
источник