Я новичок в работе с битами и байтами в C ++, и я смотрю на ранее разработанный код, и мне нужна помощь в понимании того, что происходит с кодом. Существует байтовый массив, который заполняет его некоторыми данными, и я заметил, что данные были '&' с 0x0F (см. Код, приведенный ниже). Я не очень понимаю, что там происходит ... если кто-то может объяснить это, это будет очень полезно. Спасибо! * * 1001
//Message Definition
/*
Byte 1: Bit(s) 3:0 = Unused; set to zero
Bit(s) 7:4 = Message ID; set to 10
*/
/*
Byte 2: Bit(s) 3:0 = Unused; set to zero
Bit(s) 7:4 = Acknowledge Message ID; set to 11
*/
//Implementation
BYTE Msg_Arry[2];
int Msg_Id = 10;
int AckMsg_Id = 11;
Msg_Arry[0] = Msg_Id & 0x0F; //MsgID & Unused
Msg_Arry[1] = AckMsg_Id & 0x0F; //AckMsgID & Unused