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

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

Нашел я таки макросы, выкладываю тут, может кому пригодятся

Отправлено Yaumen 18 марта 2009, г. 17:50
В ответ на: Какой префикс для записи числа в двоичном формате? "0b" почему-то...{+} отправлено пользователем Yaumen 18 марта 2009, г. 16:38

Вариант 1.
#define bin(a,s,d,f,g,h,j,k) ((a<<7)|(s<<6)|(d<<5)|(f<<4)|(g<<3)|(h<<2)|(j<<1)|k)

Вариант 2. (Мой выбор!!!)
#define BIN__N(x) (x) | x>>3 | x>>6 | x>>9
#define BIN__B(x) (x) & 0xf | (x)>>12 & 0xf0
#define BIN8(v) (BIN__B(BIN__N(0x##v)))
#define BIN16(x1, x2) ((BIN8( x1 ) << 8) + BIN8( x2 ))

Examples:
x = BIN8(10110101);
BIN16(10110101,10100101);



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

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

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

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

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