Ciências da computação dia 13

No 13 dia continuamos vendo bases numéricas, dessa vez entrando em

subtração e a base hexadecimal

Hexadecimal

na base hexadecimal temos 16 dígitos → 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

sendo

A → 10

B → 11

C → 12

D → 13

E → 14

F → 15

Soma e conversão para decimal

para a soma com hexa fazemos:

exemplo:

5C + 4D

C + D → 12 + 13 → 25

25--16(numero da base) → 9

desce o 9 e sobe 1 pois a base estourou

5 + 4 + 1(que subiu) → 10 → A

sendo assim a resposta é

A9

que convertendo para decimal

A * (16¹) + 9 * (16⁰)

10 * 16 + 9 * 1 = 169

Outra maneira de converter hexa para decimal

outra maneira de converter é a mesma para binário, dessa vez trocando a multiplicação por 2 para 16

A9

10 * 16 = 160

160 + 9 = 169

5CA

5 * 16 = 80

80 + 12 = 92

92 * 16 = 1472

1472 + 10 = 1482

conversão decimal para hexa

faça o mesmo algoritmo de divisões sucessivas nesse caso dividindo por 16

120 / 16 = 7 resto (8)

7 / 16 = 0 resto (7)

78(hexa) = 120(decimal)

conversão binário para hexadecimal

sabendo que cada digito de hexa utiliza quatro bits divida o binário em blocos de 4, começando do menos significativo para o mais significativo, preenchendo com zeros caso o ultimo bloco não possua 4 dígitos

110001001

0001 1000 1001

agora transforme

1 8 9 (hexa) = 110001001(binário)

obs:

no caso de números com vírgula faça o mesmo para a parte inteira, mas na parte fracionada comece do mais significativo e complete com os zeros no lado direito do número

10001,01101

0001 0001, 0110 1000

agora converta

11, 68

obs2

números na base 8(octal, dígitos de 0--7) possuem 3 bits

subtração de binários

para fazer a subtração quando 1--1, 0--0 o resultado será 0 caso 1--0 o resultado será 1, mas quando isso não for possível você pode fazer o mesmo que você faz normalmente com números na base decimal, no entanto, ao invés de passar 1 você passa 2

101--10

1--0 = 0

0--1 → empresta 2 → 2--0--1 = 1

1 (emprestou para o do lado) ficou 0

resultado:

10

outra maneira interessante de se fazer é a seguinte

toda vez que você precisar emprestar um valor, você soma a base com o valor de cima e faz a subtração e o valor do lado você subtrai 1 e faz a subtração total, exemplo em decimal:

25--19

5--9 → empresta a base → 10 + 5→ 15 → 15--9 =6

2--1 → emprestou → 2--1 → 1--1 = 0

resultado

06

agora em binário

1001--0011

1--1 = 0

0--1 → empresta a base 2- 0--1 → 1

0--0 → emprestou ficou 1 → 0-1--0 → empresa 2 → 2--0--1--0 → 1

1--0 →emprestou ficou 1 → 1--1- 0 → 0

resposta 0110