Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Старинный рецепт(+)

Отправлено Lameг 08 декабря 2006 г. 11:16
В ответ на: Спасибо.... Как научить иар понимать битовые КОНСТАНТЫ? 0b00000001 - не понимает отправлено <font color=gray>PALзабылпароль</font> 08 декабря 2006 г. 10:37

Если скрипт позволит

/*------------
Чтобы можно было задавать константу в двоичном виде
Пример вызова
BIN8(11110101)
BIN16(11110101,11001100)
BIN32(11110101,11001100,11001111,01010101)
-------------*/
#define LongToBin(n) \
(\
((n >> 21) & 0x80) | \
((n >> 18) & 0x40) | \
((n >> 15) & 0x20) | \
((n >> 12) & 0x10) | \
((n >> 9) & 0x08) | \
((n >> 6) & 0x04) | \
((n >> 3) & 0x02) | \
((n ) & 0x01) \
)
#define __BIN(n) LongToBin(0x##n##l)
#define BIN8(n) __BIN(n)
#define BIN16(b1,b2) ((__BIN(b1) << 8) + __BIN(b2))
#define BIN32(b1,b2,b3,b4) ((__BIN(b1) << 24) + (__BIN(b2) << 16) + (__BIN(b3) << 8) + __BIN(b4))



Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа

Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
умножьте 2 на три:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru