Skip to content

Latest commit

 

History

History
60 lines (41 loc) · 1.2 KB

File metadata and controls

60 lines (41 loc) · 1.2 KB

Problema

3 - Qual o valor hexadecimal da variável a após a execução do seguinte código C#? E o valor em decimal? Justifica a tua resposta.

byte a = 0b1011_1100;
a ^= 0x0F;

Soluções

Solução 1

0b1011_1100 -> 1011 1100
0x0F	    -> 0000 1111
	     ^ ---------
               1011 0011  = 0xB3

11x161 + 3x160 =
= 176 + 3 = 179

Após passar os valores de hexadecimal para binário, aplica-se o operador XOR -> ^, como é pedido, obtendo o valor de a em hexadecimal 0xB3. De seguida efectua-se um cálculo para converter o valor hexadecimal para decimal obtendo o valor de 179.

Por Sara Gama.

Solução 2

0x0F em binário: 0000 1111

^ é o operador XOR

Logo:

    1011 1100
 ^  0000 1111

    1011 0011

1011 001 em hexadecimal: 0xB3.

Convertendo 1011 001 em decimal:

1x27 + 0x26 + 1x25 + 1x24 + 0x23 + 0x22 +1x21 + 1x20 = = 1x128 + 1x32 + 1X16 + 1x2 + 1x1 = = 179

Logo a = 145 em decimal, e a = 0xB3 em hexadecimal

Por Rafael Castro e Silva