реклама на сайте
подробности

 
 
> Битовые поля
Ivan_Kov
сообщение Feb 6 2007, 12:07
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 174
Регистрация: 30-10-06
Из: г. Курск
Пользователь №: 21 787



Рассматривая примеры программ в Embedded (для ARM) обратил внимание, что нигде не встречается работа с регистрами микроконтроллеров с использованием битовых полей. Интересно, почему так?
Помнится еще студентами ставили эксперимент, сравнивая скорость работы через битовые поля и использование масок со сдвигами. Пришли к выводу что битовые поля как-то побыстрее.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Doka
сообщение Feb 6 2007, 12:21
Сообщение #2


Electrical Engineer
******

Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778



скорее дело в удобстве использования: описал один раз как макром SETBIT & CLRBIT - и юзай откуда хочешь.. А битовые поля каждый раз описывать надо.

а насчет скорости утверждение спорное: все сдвиги-то просчитываются препроцессором _до_ компиляции. выходит что из операций остается только логическое и(/или) с _константой_ и сохранение результата в ту же ячейку памяти.
а в случае битовых полей - тут уже надо смотреть что там компилятор нагенерит - но очень сомнительно, что получится быстрее чем с масками и сдвигами


--------------------
Блог iDoka.ru
CV linkedin.com/in/iDoka
Sources github.com/iDoka


Never stop thinking...........................
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 14:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.01365 секунд с 7
ELECTRONIX ©2004-2016