Alguns sistemas computacionais costumam representar números...
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
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