( 0,2 pontos para a prova 1) Considere os seguintes números de 8 -bits no formato de complemento de dois: 11011010 e 00101101. Realize a adição, subtração e multiplicação dos dois números. Apresente o resultado em 8-bits para os casos da adição e subtração, e 16-bits para o caso da multiplicação.

Passo 1

Beleza, vamos dar uma olhada no que a questão está pedindo. Temos dois números de 8 bits representados no formato de complemento de dois: 11011010 e 00101101. Nosso objetivo é fazer três operações com eles: adição, subtração e multiplicação. Para a adição e subtração, vamos precisar mostrar o resultado usando 8 bits, e para a multiplicação, vamos usar 16 bits. Para resolver isso, precisamos entender como funciona o complemento de dois e como realizar operações binárias básicas.

Passo 2

Primeiro, vamos entender o que é o complemento de dois. No sistema binário, o complemento de dois é uma forma de representar números negativos. Para encontrar o complemento de dois de um número, você inverte todos os bits e adiciona 1 ao resultado. Isso nos permite realizar operações aritméticas facilmente, como se estivéssemos trabalhando com números decimais.

Passo 3

Vamos começar identificando os valores decimais desses dois números para facilitar as operações.
  • 11011010:
    • O primeiro bit é 1, então é um número negativo.
    • Para encontrar o valor, fazemos o complemento de dois:
      • Inverter os bits: 00100101
      • Adicionar 1: 00100101 + 1 = 00100110
    • Convertendo 00100110 para decimal: 2² + 2¹ + 2⁶ = 32 + 8 + 4 + 2 = 46
    • Então, 11011010 representa -38 (porque 256 - 218 = 38)
  • 00101101:
    • O primeiro bit é 0, então é um número positivo.
    • Convertendo diretamente para decimal: 32 + 8 + 4 + 1 = 45
    • Então, 00101101 representa 45

Passo 4

Agora, vamos realizar a adição dos dois números binários.
11011010
  • 00101101

Vamos somar bit a bit da direita para a esquerda, lembrando de levar o 1 quando a soma exceder 1.
  1 1 0 1 1 0 1 0
+ 0 0 1 0 1 1 0 1
-------------------
  1. 0 + 1 = 1
  2. 1 + 0 = 1
  3. 0 + 1 = 1
  4. 1 + 1 = 0 (com carry 1)
  5. 1 + 0 + 1 (carry) = 0 (com carry 1)
  6. 0 + 1 + 1 (carry) = 0 (com carry 1)
  7. 1 + 0 + 1 (carry) = 0 (com carry 1)
  8. 1 + 0 + 1 (carry) = 0 (com carry 1)
O resultado é 00010111 com um carry que ignoramos porque estamos trabalhando com 8 bits. Convertendo para decimal, 00010111 é 23.

Passo 5

Agora, vamos fazer a subtração: 11011010 menos 00101101.
Para facilitar, usamos a técnica do complemento de dois para subtrair.
Subtração: A - B = A + (-B)
Primeiro, encontramos o complemento de dois de 00101101:
  1. Inverter os bits: 11010010
  2. Adicionar 1: 11010010 + 1 = 11010011
Então, agora somamos 11011010 + 11010011:
  1 1 0 1 1 0 1 0
+ 1 1 0 1 0 0 1 1
-------------------
  1. 0 + 1 = 1
  2. 1 + 1 = 0 (com carry 1)
  3. 0 + 0 + 1 (carry) = 1
  4. 1 + 1 = 0 (com carry 1)
  5. 1 + 0 + 1 (carry) = 0 (com carry 1)
  6. 0 + 1 + 1 (carry) = 0 (com carry 1)
  7. 1 + 1 + 1 (carry) = 1 (com carry 1)
  8. 1 + 1 + 1 (carry) = 1 (com carry 1)
O resultado é 10100101 com um carry que ignoramos. Convertendo para decimal, 10100101 representa -91.

Passo 6

Por último, vamos fazer a multiplicação dos dois números binários. Como estamos multiplicando dois números de 8 bits, o resultado será em 16 bits.
Primeiro, convertemos os números para decimal:
  • 11011010 = -38
  • 00101101 = 45
Multiplicando: -38 * 45 = -1710
Agora, vamos representar -1710 em binário com 16 bits usando o complemento de dois.
  1. Representamos 1710 em binário: 0000011010101110
  2. Invertendo os bits: 1111100101010001
  3. Adicionando 1: 1111100101010010
Então, o resultado da multiplicação é 1111100101010010.

Resposta

  • Adição: 00010111
  • Subtração: 10100101
  • Multiplicação: 1111100101010010

Exercícios relacionados