Für diese Problematik habe ich mal ein präprozessor-makro geschrieben, welches wie folgt aussieht. (Es ist jedoch nur für 8-Bit Werte(unsigned char))

Code:
#define CATHREL_BIN8(a,b,c,d,e,f,g,h) ((a)*128+(b)*64+(c)*32+(d)*16+(e)*8+(f)*4+(g)*2+(h))
und angewandt kann es dann so werden:
Code:
  unsigned char y;
  y = CATHREL_BIN8(1,1,1,0,1,0,1,0);