Alguns sistemas computacionais costumam representar números...

Próximas questões
Com base no mesmo assunto
Q886687 Arquitetura de Computadores

Alguns sistemas computacionais costumam representar números negativos em complemento a 2, o que facilita as operações de subtração, já que é possível implementá-las como uma soma ao complemento.


Em um sistema que representa números com 8 bits e usa o complemento a 2, a operação 0A + F8, em que os números estão representados em hexadecimal, gera como resultado

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: D - 2

Para resolver essa questão, é necessário entender a representação de números em sistema hexadecimal e o método de complemento a 2 para representar números negativos em sistemas binários. Vamos decifrar o processo passo a passo:

Primeiramente, é importante compreender que o sistema hexadecimal é uma base 16, o que significa que cada dígito pode tomar um valor de 0 a 15, utilizando as letras A até F para representar os valores de 10 a 15.

Em um sistema de 8 bits, os números são representados em dois conjuntos de quatro bits, onde cada conjunto de quatro bits representa um dígito hexadecimal. Portanto, o número 0A em hexadecimal pode ser representado como 0000 1010 em binário.

O número F8, por outro lado, é um pouco mais complexo. O dígito 'F' representa o valor 15 em decimal, que é 1111 em binário. O dígito '8' representa o valor 8 em decimal, o que corresponde a 1000 em binário. Juntos, eles formam o número binário 1111 1000. No sistema de complemento a 2, esse número representa um valor negativo, pois o bit mais significativo é 1.

Para encontrar o valor decimal de um número negativo em complemento a 2, invertemos todos os bits e somamos 1 ao resultado. No caso do número 1111 1000, a inversão dos bits nos dá 0000 0111, e adicionando 1 obtemos 0000 1000, que é 8 em decimal. Assim, o número original 1111 1000 em complemento a 2 representa -8 em decimal.

Agora, realizando a soma dos números em binário:

      0000 1010
    + 1111 1000
    ------------
      0000 0010

O resultado em binário é 0000 0010, que corresponde ao valor decimal 2. Portanto, a soma de 0A e F8 em hexadecimal resulta em 2, o que confirma a alternativa D como a correta.

Não ocorre erro de overflow pois o resultado está dentro do alcance dos números representáveis em um sistema de 8 bits usando o complemento a 2, que vai de -128 a +127. Isso nos permite concluir que a operação foi realizada de maneira correta e sem exceder os limites do sistema.

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

Vamos lá, utiliza-se o complemento a 2 para fazer a distinção em binário de números positivos e negativos. Nesse caso particular temos 0A + F8, sendo 0 o indicativo de sinal positivo e F como negativo, então na verdade temos (+10) + (-8) = +2.

0A = 0000 1010 (Número POSITIVO)

F8 = 1111 1000 (Número NEGATIVO). Qual o valor desse número positivo? Vamos descobrir:

 

1) Da direita para a esquerda reescreva o número até encontrar o primeiro 1, repita-o e inverta os bits a partir deste.

 

<------------------

0000 1000 = +8

 

Então, 1111 1000 é -8. Agora é só realizar o cálculo:

 

+ 0000 1010 (10)

-  0000 1000 (8)

==============

   0000  0010  = 2

 

 

Att,

Foco na missão!!!

O que eu não entendi é porque de ser negativo o 8

Clique para visualizar este comentário

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