Converta os valores Decimais para Binário com Sinal, representados em Complemento-1 (
) e Complemento-2 (
) de 6 bits.
Passo 1
O que o enunciado pede: converter o número decimal
para as representações binárias com sinal em complemento-1 (C-1) e complemento-2 (C-2), usando exatamente
bits.
Informações dadas e relevantes: e o comprimento da palavra é
bits.
Informações dadas e relevantes:
Passo 2
Primeira checagem importante — cabe representar
com
bits?
Para complemento-2, a faixa de valores representáveis com bits é
Para complemento-2, a faixa de valores representáveis com
Com
temos
Logo
está dentro da faixa
e é representável em
bits.
Em complemento-1 a faixa usual é até
, isto é
até
, então também cabe.
Em complemento-1 a faixa usual é
Passo 3
Converter o valor absoluto
para binário com
bits. Vou usar os pesos das posições em 6 bits:
.
Verifico quais pesos somam :
Verifico quais pesos somam
Portanto os bits (na ordem
) são:
Escrevendo isso como um número binário de
bits:
Passo 4
Construir o complemento-1 (C-1) de
. Regra do complemento-1 para números negativos: pegar a representação do valor positivo e inverter cada bit (trocar
por
e
por
). Partimos de
. Invertendo bit a bit:
Resultado:
Interpretação rápida: o bit mais significativo é
(sinal negativo) e os outros bits representam o complemento-1 da magnitude.
Passo 5
Construir o complemento-2 (C-2) de
. Dois métodos equivalentes; uso o clássico: inverter os bits da magnitude e somar
. Começamos com a magnitude
. Invertendo obtemos
(mesmo resultado do passo anterior). Agora somamos
:
Faço a soma bit a bit da direita para a esquerda, explicando as operações e os “vai um”:
-
com vai . - Próxima coluna:
(bit) + vai = com vai . - Próxima coluna:
+ vai = com vai . - Próxima coluna:
+ vai = sem vai. - As colunas restantes copiam:
e .
Fazendo as contas completas:
Resultado:
Observação: não houve overflow porque estamos em
bits e o número é representável.
Passo 6
Verificação rápida (pra você confiar no procedimento): reconverter ambas as representações para decimal e checar que dão
.
Verificação do C-2 (
):
- Como MSB é
, é negativo. Para achar o valor absoluto: inverter e somar . - Invertendo
obtenho . Somando dá , que é . Logo o valor é . Confere.
Verificação do C-1 (
):
- Invertendo os bits de
obtenho , que é . Em complemento-1 isso corresponde a . (Lembre que complemento-1 tem também representação de zero positivo e zero negativo, mas aqui não é o caso.)