Informática, perguntado por gabrielborgath, 1 ano atrás

como calcular : (10012A.00B)16 - (FDCAD.EBD9)16

Soluções para a tarefa

Respondido por bokomoko
0
Tem duas formas de fazer. A mais usual é converter os números para decimal (base 10), fazer a operaçao  de subtração e depois converter de volta para hexadecimal (base 16).

a outra forma é fazer direto em base 16 usando a tabela de resultados de subtração abaixo.

Na horizontal fica o minuendo (o algarismo do qual vamos subtrair)
Na vertical fica o subtraendo (o algarismo que será subtraido)

Observe que a diagonal inferior (abaixo da diagonal com 0's) estão os resultados em que "vai um" para o próximo algarismo.

O algoritmo de subtração usando a tabela então é o seguinte
0 - zerar o "vai um"
1 - começando da direita para a esquerda ...
2 - Pegue o próximo algarismo do minuendo,  busque na horizontal
3 - pegue o algarismo correspondente do subtraendo,some ao vai um  e procure na vertical
4 - a intersecao dos dois é o algarismo do resultado
5 - se a intersecao ficar abaixo da diagonal (se for vermelho) entao vaium = 1
6 - repita o passo 2 até varrer todos os algarismos

Então vejamos o caso e alinhando os algarismos
1 0 0 1  2  A .  0 0 B
   F D C A  D . E B D 9

Observe, o minuendo é maior que o subtraendo pois tem mais algarismos na parte inteira. Ao mesmo tempo a parte fracionária tem um algarismo a menos. vamos preencher com 0's pois 0 a esquerda da parte inteira não muda o resultado assim como 0 a direita da parte fracionária não muda o resultado. Exemplo 019 = 19... e 82.340 = 82.34

Fazendo os ajustes temos

1 0 0 1  2  A .  0 0 B  0
0 F D C A  D . E B D 9

Então vamos fazer
0 - 9                     dá 7 - vai um
B - (D+1) = B - E dá D, vai um
0 - (B+1) = 0 - C dá  4, vai um
0 - (E+1) = 0 - F dá 1, vai um
ponto fracionário
A - (D+1) = A - E dá C, vai um
2 - (A+1) = 2 - B dá 7, vai um
1 - (C+1) = 1 - D dá 4, vai um
0 - (D+1) = 0 - E dá 2, vai um
0 - (F+1) = opa .. aqui temos a seguinte situação (F+1) = 0 e vai um
0 - (F+1) = 0 - 0 dá 0 e vai um
1 - (0+1) = 0 

Aí pegamos os resultados de baixo para cima assim
00247C,14D7

Anexos:

bokomoko: Você pode usar a calculadora do windows no modo programador para fazer a conta
Perguntas interessantes