Efetue as subtrações, utilizando o complemento de 2 :
Passo 1
O enunciado pede para efetuar a subtração usando complemento de 2. Os dados são:
- Minuendo:
. - Subtraendo:
.
A tarefa é calcularusando o procedimento do complemento de 2 e apresentar o resultado final.
Passo 2
Primeiro alinhamos os tamanhos em bits: o minuendo tem
bits (
), então escrevemos o subtraendo com
bits também, preenchendo com zeros à esquerda:
Isso é importante porque o complemento de 2 funciona em um número fixo de bits
; aqui escolhemos
.
Passo 3
Explicação didática do método (passo a passo conceitual):
- A subtração em complemento de 2 usa a identidade
- O número
é justamente o complemento de 2 de . Para calcular o complemento de 2 de com bits: inverte-se todos os bits de (obtendo o complemento de 1) e soma-se . - Depois soma-se esse complemento ao minuendo
. Se surgir um carry de saída (um transporte para além do bit mais significativo), esse carry é descartado e o resultado é positivo e válido em bits. Se não houver carry de saída, o resultado é negativo e obtém-se seu valor tomando o complemento de 2 do resultado e adicionando sinal negativo.
Vou aplicar isso passo a passo aos nossos números.
Passo 4
Calcular o complemento de 2 do subtraendo
:
- Inverter os bits (complemento de 1):
- Somar
:
Logo o complemento de 2 do subtraendo (em 8 bits) é
. Isso representa
no nosso exemplo.
Passo 5
Agora somamos o minuendo
com esse complemento:
Faço a adição bit a bit (da direita para a esquerda), anotando os transportes:
- LSB:
com transporte . - Próximo:
com transporte . - Próximo:
com transporte . - Próximo:
com transporte . - Próximo:
com transporte . - Próximo:
com transporte . - Próximo:
com transporte . - MSB:
com transporte de saída .
Escrevendo o resultado (ignorando por enquanto o transporte final), obtemos
e houve um transporte de saída igual a
.
Passo 6
Interpretação do transporte final: como houve um transporte de saída
, isso indica que a operação resultou num valor positivo representável em
bits. Pela regra do complemento de 2, descartamos esse transporte final e o resultado em
bits é o que ficou:
Passo 7
Verificação rápida em decimal (chequinho para ter certeza):
-
. -
. -
. -
.
Conferido: bate certinho.