Baixe o app para aproveitar ainda mais
Prévia do material em texto
Sistemas Embarcados 1 Operadores Bit-a-Bit (Lista de Exercí cios) Valor Está lista não compõem a nota bimestral. Quantidade de alunos A lista deve preferencialmente ser desenvolvida individualmente. Data de entrega e defesa Não é necessário a entrega da lista. Exercícios 1. Quais as vantagens e diferenças de utilização de operadores bit-a-bit em relação a operadores “normais”? 2. Determine as funções de cada uma das operações bit-a-bit: 3. Qual o valor das variáveis ao final dos códigos apresentados abaixo: void func1() { uint32_t a = 0x10, b = 0b10, c, d; c = a << b; c |= a; b = a | (c >> 2); d = 0x00100000 | (0x04000000 & (~0x000E0000)); } void func2() { uint32_t a = 0x10, b = 0b10, c, d; c = a >> b; c |= a; b = a | (c << 2); d = 0x02000000 | (0x00800000 & (~0x000E0000)) } Sistemas Embarcados 2 void func3() { uint32_t a = 0x10, b = 0b10, c; a = 0x02000000 | (0x04000000 & (~0x000E0000)); c = a >> (b << 3); a ^= (c | a); b = (a | (c << 2)) & 0xFF0FF0FF; if (((b >> 3) & 8) == 1) a = b | c; else a = b & c; } void func4() { uint32_t a = 0x10, b = 0b10, c; a = 0x02000000 | (0x04000000 & (~0x000E0000)); c = a >> (b << 3); a ^= (c | a); b = (a | (c >> 2)) & 0xFF0FF0FF; if (((b >> 2) & 8) == 8) a = b | c; else a = b & c; }
Compartilhar