Converta os valores Decimais para Binário representado em Complemento-2, utilizando o menor número de bits possível em cada caso.
23_{10}= & -23_{10}=

Passo 1

O enunciado pede para converter os dois valores decimais abaixo para binário, usando representação em complemento de dois e com o menor número de bits possível em cada caso:
23_{10},\quad -23_{10}.
Informações relevantes: os dois números estão dados (um positivo e o seu negativo) e a representação pedida é “complemento-2” (two’s complement). A resolução deve devolver a forma binária final de cada um, com o menor número de bits que permita representá-los corretamente.

Passo 2

Vamos definir claramente a regra que usamos para escolher quantos bits são necessários (isso é crucial): para representação em complemento de dois com n bits, os números inteiros representáveis são todos os valores no intervalo
\{-2^{\,n-1},\; -2^{\,n-1}+1,\; \dots,\; 2^{\,n-1}-1\}.
Ou seja, o maior inteiro positivo representável é 2^{\,n-1}-1. Portanto, para caber um número positivo x (como 23) precisamos do menor n que satisfaça
2^{\,n-1}-1 \ge x.
Para um número negativo -x precisamos que
-2^{\,n-1} \le -x \quad\text{(equivalente a }\;2^{\,n-1}\ge x\text{)}.
Vou aplicar essa regra para achar o menor n que funciona para ambos os números.

Passo 3

Testando valores de n:
  • Para n=5: o maior positivo é 2^{\,4}-1 = 16-1 = 15. Isso é menor que 23, ou seja, 5 bits NÃO bastam.
  • Para n=6: o maior positivo é 2^{\,5}-1 = 32-1 = 31. Isso é maior que 23, logo 6 bits SÃO suficientes.
Conclusão: o menor número de bits que permite representar tanto 23 quanto -23 em complemento de dois é n=6. Portanto vamos trabalhar com representações em 6 bits.

Passo 4

Agora converto o valor positivo \,23_{10} para binário puro (magnitude), usando divisão sucessiva por 2 — método clássico que dá o binário do menor para o maior bit:
Fazendo divisões:
\begin{array}{l} 23 \div 2 = 11\\ \text{resto}\\\ 1\\\\ 11 \div 2 = 5\\ \text{resto}\\\ 1\\\\ 5 \div 2 = 2\\ \text{resto}\\\ 1\\\\ 2 \div 2 = 1\\ \text{resto}\\\ 0\\\\ 1 \div 2 = 0\\ \text{resto}\\\ 1 \end{array}
Lendo os restos de baixo para cima obtemos o binário sem zeros à esquerda:
23_{10} = 10111_{2}.
Como precisamos de 6 bits no total, acrescentamos zeros à esquerda até ter 6 dígitos:
23_{10} = 010111_{2}\quad(\text{em 6 bits}).
Observação didática: para números positivos em complemento de dois basta escrever o binário normal e preencher com zeros à esquerda até o número de bits desejado; o bit mais significativo (MSB) será 0.

Passo 5

Para obter a representação em complemento de dois de um número negativo -x (com n bits), um procedimento simples e seguro é:
  1. Escrever x em binário com n bits.
  2. Fazer o complemento bit a bit (trocar 0 por 1 e 1 por 0).
  3. Somar 1 ao resultado (adição binária de +1).
Esse processo é equivalente a calcular o valor sem sinal 2^{\,n}-x, que é como o valor negativo fica codificado em complemento de dois.

Passo 6

Aplico esse procedimento para -23 usando os 6 bits que encontramos.
Partimos de 23 em 6 bits:
23_{10} = 010111_{2}.
  1. Inversão dos bits:
010111 \longrightarrow 101000.
  1. Somar 1:
101000 + 000001 = 101001.
Logo a representação em complemento de dois de -23 em 6 bits é \,101001_{2}.

Passo 7

Verificação rápida (confirmação da conta, sempre bom na prova):
Interpreto 101001_{2} como número em complemento de dois com 6 bits. O MSB tem peso -2^{5}=-32; os outros bits têm pesos 2^{4},2^{3},\dots,2^{0}. Então
101001_{2} = -32 + 0\cdot16 + 1\cdot8 + 0\cdot4 + 0\cdot2 + 1\cdot1 = -32 + 9 = -23.
Confirma que está certo.

Passo 8

Resumo prático para você decorar o procedimento e usar na prova:
  • Ache o menor n tal que 2^{\,n-1}-1 \ge valor positivo que você quer representar.
  • Converta o valor positivo em binário e zeropad até n bits.
  • Para o negativo, inverta os bits e some 1.
    Se der tempo, faça a verificação interpretando o resultado como valor com peso negativo para o MSB.

Resposta

23_{10} = 010111_{2}
-23_{10} = 101001_{2}

Exercícios relacionados