Supondo números binários sem sinal, realize as seguintes subtrações:
1100_{2}-1001_{2}

Passo 1

O enunciado pede para subtrair dois números binários sem sinal. As informações dadas são:
  • Minuendo: \,1100_2.
  • Subtraendo: \,1001_2.
    O que se pede é o resultado da operação \,1100_2 - 1001_2.

Passo 2

Relembrando as regras básicas da subtração em base binária (úteis para fazer isso passo a passo):
  • \,0-0=0.
  • \,1-0=1.
  • \,1-1=0.
  • \,0-1 não dá diretamente; é preciso “emprestar” 1 da coluna à esquerda. Em base binária, emprestar 1 equivale a adicionar \,2_{10} = 10_2 à casa atual. Por exemplo, se a casa atual for \,0 e emprestarmos, ela passa a valer \,10_2 (ou seja, 2 em decimal), e então podemos subtrair.

Passo 3

Alinhar os números em colunas (bit a bit), sempre da direita para a esquerda:
\begin{array}{r} \,1100_2\\\\ -\,1001_2\\\ \hline \end{array}
Vou numerar as colunas da direita para a esquerda como \,b_0,b_1,b_2,b_3 para organizar os passos.

Passo 4

Fazer a subtração coluna a coluna, da direita para a esquerda:
Coluna \,b_0 (bits mais à direita): calcular \,0-1.
  • Como \,0-1 não é possível sem empréstimo, precisamos emprestar da coluna \,b_1.
  • Mas em \,b_1 temos \,0, então esse bit também precisa emprestar de \,b_2.
  • Em \,b_2 temos \,1, então podemos reduzir \,b_2 de \,1 para \,0; ao fazer isso, \,b_1 recebe \,10_2 (ou seja, passa a valer 2 em decimal). Agora \,b_1 pode emprestar \,1 (que vale 2 na coluna imediatamente à direita) para \,b_0.
  • Após esse processo de empréstimo em cadeia, os valores temporários das colunas superiores ficam (em valores decimais para clareza): \,b_3=1,\;b_2=0,\;b_1=1,\;b_0=2 — em binário isso corresponde a \,1,\;0,\;1,\;10_2.
    Agora calcule \,b_0: 2-1=1. Então o bit resultado em \,b_0 é \,1.
Coluna \,b_1: depois do empréstimo ficou \,1 no minuendo; subtrai-se o bit do subtraendo que é \,0.
  • \,1-0=1. Então o bit resultado em \,b_1 é \,1.
Coluna \,b_2: após o empréstimo ficou \,0 no minuendo; subtrai-se o bit do subtraendo que é \,0.
  • \,0-0=0. Então o bit resultado em \,b_2 é \,0.
Coluna \,b_3: \,1-1=0. Então o bit resultado em \,b_3 é \,0.
Juntando os bits resultantes (de \,b_3 até \,b_0) obtemos \,0011_2.

Passo 5

Verificação rápida convertendo para decimal (é uma boa prática para checar erros):
  • \,1100_2 = 1\cdot2^3 + 1\cdot2^2 + 0\cdot2^1 + 0\cdot2^0 = 8 + 4 + 0 + 0 = 12_{10}.
  • \,1001_2 = 1\cdot2^3 + 0\cdot2^2 + 0\cdot2^1 + 1\cdot2^0 = 8 + 0 + 0 + 1 = 9_{10}.
  • \,12_{10} - 9_{10} = 3_{10}.
  • \,3_{10} em binário é \,11_2, que com quatro bits é \,0011_2. Confere com o resultado obtido.

Resposta

\,0011_2

Exercícios relacionados