Я хотел бы сохранить два 4-битных целых числа (1,4,7 .....) в один байт.
У меня есть 2 целых числа a=0001 и b=1111, яхотел бы сохранить это целое число в один байт в памяти.
a=0001
b=1111
Может кто-нибудь помочь мне с этим?
Вам нужно сдвинуть один из них на четыре бита, затем использовать двоичное ИЛИ.
unsigned char number = (a << 4) | b;
И чтобы вернуть их обратно, замаскируйте один с помощью 1111b и сдвиньте другой обратно:
a = number >> 4; b = number & 15;