Em sistemas embarcados, é comum que programadores tenham de...

Próximas questões
Com base no mesmo assunto
Q2319343 Programação
Em sistemas embarcados, é comum que programadores tenham de trabalhar com linguagens de baixo nível, incluindo a necessidade de fazer operações com números inteiros em representação binária.
Considerando-se apenas 8-bits em um processador hipotético, como seria a representação em complemento de 2 do número -5?
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é a C - 11111011.

Para entendermos o porquê, vamos primeiro abordar o conceito de representação de números negativos em binário utilizando o método do complemento de 2. Quando trabalhamos com sistemas embarcados, frequentemente lidamos com operações em nível de bits e representações binárias, e entender a representação de números negativos é fundamental.

O complemento de 2 é utilizado para representar números negativos de uma forma que a adição binária possa ser aplicada normalmente, sem a necessidade de mudar o hardware para lidar com a subtração. Para encontrar o complemento de 2 de um número, seguimos estes passos:

  1. Escrever a representação binária do valor absoluto do número.
  2. Inverter todos os bits (trocar 0 por 1 e 1 por 0).
  3. Adicionar 1 ao resultado da inversão.

No caso do número -5, seguimos os passos:

  1. O valor absoluto de -5 é 5, que em binário de 8 bits é 00000101.
  2. Invertemos os bits: 11111010.
  3. Adicionamos 1 ao resultado: 11111010 + 1 = 11111011.

Portanto, a representação em complemento de 2 do número -5 é 11111011, que corresponde à alternativa correta C. Esta representação permite que a aritmética binária funcione corretamente em um processador, facilitando assim a implementação de operações matemáticas com números negativos.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

1º - Represente o valor absoluto do número em binário >> 00000101

2º - Inverta todos os bits (troque 0 por 1 e vice-versa) >> 11111010

3º - Some 1 ao resultado obtido >> 11111011

Gabarito C

Deus nos defenderá

antes de tudo, precisamos saber como colocar um número em binário, como seria o 5 em binário?

  1. Divida 5 por 2. O quociente é 2 e o resto é 1. Escreva o resto: 1.
  2. Divida 2 por 2. O quociente é 1 e o resto é 0. Escreva o resto: 0.
  3. Divida 1 por 2. O quociente é 0 e o resto é 1. Escreva o resto: 1.

5 em binário = 101

  • Ou seja, meio que você não termina a divisão da maneira correta, no resto que parar, você deixa.
  • como já sabemos o valor de 5 em binário, agora é passar o 5 binário para 8 bits, 8 bits seria literalmente 8 zeros, exemplo:
  • 8 bits = 0000 0000
  • 16 bits = 0000 0000 0000 0000
  • 32 bits = 0000 0000 0000 0000 0000 0000 0000 0000.
  • e assim por diante….

agora, só adicionar o 5 binário em 8 bits, como pede a questão

  • 5 em binário = 101
  • 8 bits de 5 binário = 0000 0101
  • Agora usando o Complemento de dois para achar negativos binários, é só inverter, quem é 0 vira 1 e quem é 1 vira 0:
  • 1111 1011

gabarito letra C.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo