Multiplicação Hexa

20
ARITMÉTICA BINÁRIA São duas as operações executadas pelo computador: - A adição - A comparação Todas as outras operações são executadas por meio de adições. Assim, para a subtracção , acha-se o complemento do subtractivo e faz-se uma adição. A multiplicação é feita por adições sucessivas e a divisão por subtracções sucessivas. Complemento do sistema binário Denomina-se complemento verdadeiro e basta trocar os uns (1,1) por zeros (0,0) e vice-versa e adicionar um ao último da direita. Exemplo: 1 0 0 1 0 0 1 1 0 1 + 1 0 1 1 1 0 ADIÇÃO Para somar dois números binários, fazem-se as contas coluna a coluna, da direita para a esquerda, como de costume, fazendo o transporte de um (<e vai um>) quando for o caso. Para isso é necessário ter em conta as seguintes tabelas: Tabela do 0 Tabela do 1 0 + 0 = 0 1 + 0 = 1 0 + 1 = 1 1 + 1 = 10 ( 1 mais 1 é igual a 0 e vai 1 ) 1 + 1 + 1 = 11 ( 1 mais 1 mais 1 é igual a 1 e vai 1 )

Transcript of Multiplicação Hexa

Page 1: Multiplicação Hexa

ARITMÉTICA BINÁRIA

São duas as operações executadas pelo computador:

- A adição- A comparação

Todas as outras operações são executadas por meio de adições. Assim, para a subtracção, acha-se o complemento do subtractivo e faz-se uma adição. A multiplicação é feita por adições sucessivas e a divisão por subtracções sucessivas.

Complemento do sistema binário

Denomina-se complemento verdadeiro e basta trocar os uns (1,1) por zeros (0,0) e vice-versa e adicionar um ao último da direita.

Exemplo:

1 0 0 1 0 0 1 1 0 1+ 10 1 1 1 0

ADIÇÃO

Para somar dois números binários, fazem-se as contas coluna a coluna, da direita para a esquerda, como de costume, fazendo o transporte de um (<e vai um>) quando for o caso.

Para isso é necessário ter em conta as seguintes tabelas:

Tabela do 0 Tabela do 1

0 + 0 = 0 1 + 0 = 10 + 1 = 1 1 + 1 = 10 ( 1 mais 1 é igual a 0 e

vai 1 )1 + 1 + 1 = 11 ( 1 mais 1 mais 1 é igual

a 1 e vai 1 )

Page 2: Multiplicação Hexa

Exemplo:

1 0 1 + 1 1 1 0

1 ( 1 + 0 = 1 )

1 0 1 + 1 1 1 0

1 1 ( 0 + 1 = 1 )

1 0 1 + 1 1 1 0

0 1 1 ( 1 + 1 = 0, e vai 1 )

1 0 1 + 1 1 1 0

0 0 1 1 ( 1 + 1 que ia de trás = 0 e vai 1 )

1 0 1 + 1 1 1 0 1 0 0 1 1 ( 1 + 0 = 1 )

Vamos ver outras formas com outros exemplos.

• Somar os números 100100 e 10010

1 0 0 1 0 0 36+ 1 0 0 1 0 +181 1 0 1 1 0 54

De verificar que não houve transportes nas somas parciais.

Page 3: Multiplicação Hexa

• Somar os números 11001 e 10011

1 1 1 Transportes

1 1 0 0 1 25+ 1 0 0 1 1 +191 0 1 1 0 0 44

• Somar os números 101110 e 1110

1 1 1 Transportes

1 0 1 1 1 0 46+ 1 1 1 0 +141 1 1 1 0 0 60

• Somar os números 10101101 e 100010111

1 1 1 1 1 1 Transportes

1 0 1 0 1 1 0 1 173+ 1 0 0 0 1 0 1 1 1 +279 1 1 1 0 0 0 1 0 0 452

• Somar os números 10,1 e 11,01

1

1 0 , 1 2,5 + 1 1 , 0 1 + 3,25 1 0 1 , 1 1 5,75

Page 4: Multiplicação Hexa

SUBTRACÇÃO

Existem duas formas para fazer a subtracção binária:

1ª. Forma

Como o conjunto de símbolos contém apenas 2 dígitos, ao se efectuar a subtracção parcial entre 2 dígitos, um do diminuendo e outro do diminuidor, se o segundo ( diminuidor ) exceder o primeiro ( diminuendo ), subtrai-se uma unidade ao dígito imediatamente à esquerda no diminuendo ( se existir e o seu valor for 1 ), convertendo-o a 0. Em seguida, substituímos o diminuendo por 2, que corresponde à equivalência 1*2, da unidade extraída. Se o dígito imediatamente à esquerda for 0, procura-se nos dígitos consecutivos, levando em conta que o seu valor é multiplicado por 2 a cada deslocamento à direita.

Vamos considerar as seguintes tabelas:

Tabela do 1 Tabela do 0

1 - 0 = 1 0 - 0 = 01 - 1 = 0 0 - 1 não cabe

Exemplos:

• Subtrair os números 11101 e 111.

20 0 2

1 1 1 0 1 2 9- 0 0 1 1 1 - 7

1 0 1 1 0 2 2

• Subtrair os números 111111 e 101010.

1 1 1 1 1 1 6 3- 1 0 1 0 1 0 - 4 2

0 1 0 1 0 1 2 1•

Page 5: Multiplicação Hexa

• Subtrair os números 110100101 e 11101000.

2 1 2 10 0 2 0 2 21 1 0 1 0 0 1 0 1 4 2 1

- 0 1 1 1 0 1 0 0 0 - 2 3 20 1 0 1 1 1 1 0 1 1 8 9

• Subtrair os números 11,01 e 10,1.

0 21 1 , 0 1 3 , 2 5

- 1 0 , 1 0 - 2 , 5 00 0 , 1 1 0 , 7 5

2ª. Forma

Esta subtracção é feita pelo chamado método do complemento para dois.Vejamos um exemplo:

Diminuendo 1 1 1 0Diminuidor 0 1 0 1

1 . Inverte-se o diminuidor, isto é, trocam-se os zeros por uns, e os uns por zeros.

0 1 0 1

1 0 1 0

2 . Soma-se o diminuendo ao inverso do diminuidor.

1 1 1 0+ 1 0 1 01 1 0 0 0

Page 6: Multiplicação Hexa

3 . Soma-se <um> ao resultado.

1 1 0 0 0+ 11 1 0 0 1

4 . Despreza-se o transporte final.

1 1 0 0 1

A resposta é, então 1110 - 0101 = 1001

Outros exemplos:

• Subtrair os números 11011 e 10100.

1 0 1 0 0 2 0

0 1 0 1 1

1 1 0 1 1 2 7+ 0 1 0 1 11 0 0 1 1 0

+ 11 0 0 1 1 1 7

• Subtrair os números 101101 e 10.

0 0 0 0 1 0 2

1 1 1 1 0 1

1 0 1 1 0 1 4 5+ 1 1 1 1 0 11 1 0 1 0 1 0

+ 11 1 0 1 0 1 1 4 3

Page 7: Multiplicação Hexa

MULTIPLICAÇÃO

A multiplicação na base 2 - ou em qualquer outra base - pode fazer-se por adições sucessivas; para calcular A * B basta somar A a si própria B vezes.

Exemplo:

1 0 1 * 1 0 0 = ?

De recordar que 100(2) = 4(10)

então

11 11 0 1

1 1 0 1 100 vezes1 1 0 1+ 1 0 1

1 0 1 0 0

Uma forma, e a ideal, é fazer a operação semelhante à multiplicação decimal, excepto pelo facto da soma final dos produtos se fazer em binário. As tabelas de multiplicação são:

Tabela do 0 Tabela do 1

0 * 0 = 0 1 * 0 = 00 * 1 = 0 1 * 1 = 1

Page 8: Multiplicação Hexa

Exemplos:

• Multiplicar os números 1011 e 1101.

1 0 1 1 1 1* 1 1 0 1 1 3

1 0 1 10 0 0 0

1 0 1 1+ 1 0 1 11 0 0 0 1 1 1 1 1 4 3

• Multiplicar os números 1001 e 1101.

1 0 0 1 9* 1 1 0 1 1 3

1 0 0 10 0 0 0

1 0 0 1+ 1 0 0 1

1 1 1 0 1 0 1 1 1 7

• Multiplicar os números 1010101 e 101.

1 0 1 0 1 0 1 8 5* 1 0 1 5

1 0 1 0 1 0 10 0 0 0 0 0 0

+ 1 0 1 0 1 0 11 1 0 1 0 1 0 0 1 4 2 5

Page 9: Multiplicação Hexa

• Multiplicar os números 110101 e 1101.

1 1 0 1 0 1 5 3* 1 1 0 1 1 3

1 1 0 1 0 10 0 0 0 0 0

1 1 0 1 0 1+ 1 1 0 1 0 11 0 1 0 1 1 0 0 0 1 6 8 9

• Multiplicar os números 11010 e 101010.

1 0 1 0 1 0 4 2* 1 1 0 1 0 2 60 0 0 0 0 0

1 0 1 0 1 00 0 0 0 0 0

1 0 1 0 1 0+ 1 0 1 0 1 01 0 0 0 1 0 0 0 1 0 0 1 0 9 2

DIVISÃO

Analogicamente, a divisão pode ser feita por subtracções sucessivas, até obtermos uma diferença igual a zero.

Exemplo:

1 0 0 0 01 0 0 0

= ?

1 0 0 0 0- 1 0 0 00 1 0 0 0 1 vez- 1 0 0 00 0 0 0 0 2 vezes

O resultado é 2(10), isto é, 10(2)

Page 10: Multiplicação Hexa

Mas esta divisão pode ser feita de maneira idêntica à divisão decimal, excepto pelo facto das multiplicações e subtracções internas ao processo serem feitas em binário.

Exemplo:

• Dividir 11011 e 101.

1 1 0 1 1 = 2 71 0 1 = 5

1 1 0 1 1 1 0 1- 1 0 1 1 0 1

0 0 1 1 1- 1 0 1 o quociente é 1 0 1

0 1 0 e o resto é 1 0

• Dividir 1010101 e 101.

1 0 1 0 1 0 1 = 8 51 0 1 = 5

1 0 1 0 1 0 1 1 0 1- 1 0 1 1 0 0 0 1

0 0 0 0 1 0 1- 1 0 1

0 0 0

A prova é:

1 0 0 0 1 quociente* 1 0 1 divisor

1 0 0 0 10 0 0 0 0

+ 1 0 0 0 11 0 1 0 1 0 1 dividendo

Page 11: Multiplicação Hexa

• Dividir 100010 e 110.

1 0 0 0 1 0 = 3 41 1 0 = 6

1 0 0 0 1 0 1 1 0- 1 1 0 1 0 10 0 1 0 1 0

- 1 1 01 0 0

A prova é:

1 1 0 quociente* 1 0 1 divisor

1 1 00 0 0

+ 1 1 01 1 1 1 0

+ 1 0 0 resto1 0 0 0 1 0 dividendo

• Dividir 10001000100 e 101010.

1 0 0 0 1 0 0 0 1 0 0 = 1 0 9 21 0 1 0 1 0 = 4 2

1 0 0 0 1 0 0 0 1 0 0 1 0 1 0 1 0- 1 0 1 0 1 0 1 1 0 1 0

0 1 1 0 1 0 0- 1 0 1 0 1 0

0 0 1 0 1 0 1 0- 1 0 1 0 1 0

0 0 0 0 0 0 0

Page 12: Multiplicação Hexa

ARITMÉTICA HEXADECIMAL

ADIÇÃO

Nada como ver um exemplo para verificar como se soma em hexadecimal.

1º. Exemplo:

8 H+ 4 H… … … Como sabemos, em decimal, 8 + 4 = 12.

Em Hexadecimal, a quantidade «doze» érepresentada por «C», pelo que fica

8 H+ 4 H

C H

2º. Exemplo:

F H+ 3 H… … … Se convertermos para decimal, teremos

15 + 3 = 18.Reconvertendo o resultado para a base 16

F H+ 3 H1 2 H

De reparar que, tal como nos habituámos a fazer na Escola Primária, sempre que o resultado iguala ou ultrapassa a base, subtraímos esta ao resultado, e fazemos um transporte para a coluna seguinte («e vai um», neste caso).

15 + 3 = 18

18 é maior que a base (16), pelo que fazemos

18 - 16 = 2

Page 13: Multiplicação Hexa

e o resultado vem

FH+ 3H 2H ( e vai um )

FH+ 3H 12H

3º. Exemplo:

F 8 H+ A 3 4 H

Não é preciso converter os números F8H e A34H para decimal, somá-los e reconverter o resultado para a base 16. Podemos fazer a conta coluna a coluna, como já sabes. Então fica:

F 8 H F 8 H+ A 3 4 H + A 3 4 H

C H

F 8 H+ A 3 4 H e vai um

2 C H

F 8 H+ A 3 4 H

B 2 C H porque A + 1 = B

Page 14: Multiplicação Hexa

Exemplos:• Fazer a adição dos seguintes números hexadecimais:

906H e A1DH

9 0 6 H+ A 1 D H1 3 2 3 H

• Fazer a adição dos seguintes números hexadecimais:

AAABH e A9DH

A A A B H+ A 9 D HB 5 4 8 H

SUBTRACÇÃO

1º. Exemplo:

0H - 0H = _____1H - 0H = _____BH - AH = _____

completa

2º. Exemplo:

B B 0 1 H- A 1 0 0 H

1 A 0 1 H

Page 15: Multiplicação Hexa

3º. Exemplo:

2 7 H- 1 E H

Efectuamos a operação coluna a coluna.Na primeira coluna, o diminuidor (E) é superior ao diminuendo (7).

Então, adicionamos a base ao diminuendo, executamos a subtracção, e há transporte de uma unidade que somamos ao diminuidor da coluna seguinte.

2 7 H- 1 E H

9 H «e vai um»

1 (de transporte) e 1 (diminuidor da coluna da esquerda) = 2

2 (diminuendo) - 2 = 0 (resultado)

2 7 H- 1 E H

0 9 H

Exemplos:• Fazer a subtracção dos seguintes números hexadecimais:

E71H e 958H

E 7 1 H- 9 5 8 H

5 1 9 H

Page 16: Multiplicação Hexa

• Fazer a subtracção dos seguintes números hexadecimais:

22ABCH e 358FH

2 2 A B C H- 3 C F F H1 E D B D H

MULTIPLICAÇÃO

Esta operação pode fazer-se facilmente por meio da tabela de dupla entrada apresentada:

MULTIPLICAÇÃO HEXADECIMAL

1 2 3 4 5 6 7 8 9 A B C D E F1 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F2 02 04 06 08 0A 0C 0E 10 12 14 16 18 1A 1C 1E3 03 06 09 0C 0F 12 15 18 1B 1E 21 24 27 2A 2D4 04 08 0C 10 14 18 1C 20 24 28 2C 30 34 38 3C5 05 0A 0F 14 19 1E 23 28 2D 32 37 3C 41 46 4B6 06 0C 12 18 1E 24 2A 30 36 3C 42 48 4E 54 5A7 07 0E 15 1C 23 2A 31 38 3F 46 4D 54 5B 62 698 08 10 18 20 28 30 38 40 48 50 58 60 68 70 789 09 12 1B 24 2D 36 3F 48 51 5A 63 6C 75 7E 87A 0A 14 1E 28 32 3C 46 50 5A 64 6E 78 82 8C 96B 0B 16 21 2C 37 42 4D 58 63 6E 79 84 8F 9A A5C 0C 18 24 30 3C 48 54 60 6C 78 84 90 9C A8 B4D 0D 1A 27 34 41 4E 5B 68 75 82 8F 9C A9 B6 C3E 0E 1C 2A 38 4C 54 62 70 7E 8C 9A A8 B6 C4 D2F 0F 1E 2D 3C 4B 5A 69 78 87 96 A5 B4 C3 D2 E1

Como se vê, temos todos os algarismos hexadecimais ( excepto o zero ) nas entradas verticais e horizontais da tabela.

Se quiséssemos calcular 5H * 9H, por exemplo, encontraríamos o resultado na intersecção da coluna 5 com a linha 9.

Então, 5H * 9H = 2DH. Uma vez que a multiplicação é comutativa, então, o mesmo resultado se verifica na intersecção da coluna 9 com a linha 5.

Page 17: Multiplicação Hexa

1º. Exemplo:

AH * 2H = _______2H * 7H = _______

completa

2º. Exemplo:

6 7 A H* 3 2 H

Procedendo como de costume, vamos começar pelo produto do multiplicando pelo algarismo mais à direita do multiplicador:

6 7 A H* 3 2 H

6 7 A H Na tabela, vemos que A * 2 = 14; então,* 3 2 H escrevemos «4» e há transporte de 1 unidade

4 H (e vai um)

6 7 A H 2H * 7H = 0EH; 0EH + 1 (de transporte)* 3 2 H = 0FH; escreve-se «F», e não há transporte.

F 4 H

6 7 A H 2H * 6H = 0CH; escreve-se «C», e não há* 3 2 H transporte.C F 4 H

Page 18: Multiplicação Hexa

Calculámos em seguida o produto do multiplicando pelo 2º. algarismo (contando a partir da direita) do multiplicador.

6 7 A H* 3 2 HC F 4

1 3 6 E

Agora é só somar os produtos parciais. Fica:

6 7 A H* 3 2 HC F 4

1 3 6 E1 4 3 D 4 H

Exemplo:• Fazer o produto dos seguintes números hexadecimais:

B12H e 3FCH

B 1 2 H* 3 F C H8 4 D 8

A 6 0 E2 1 3 62 C 1 B B 8 H

Page 19: Multiplicação Hexa

DIVISÃO

Esta é a operação mais difícil de fazer sem recorrer-mos á tabela anterior. Vamos ver um exemplo muito simples:

1º. Exemplo

Dividir os números hexadecimais 2F por 12.

2 F 1 2B 2 2 * 2 = 4; F - 4 = B

2 F 1 20 B 2 2 * 1 = 2; 2 - 2 = 0

Para verificarmos se é verdade, nada melhor que fazer a prova:

1 2 H divisor* 2 H quociente2 4 H+ B H resto2 F H dividendo

2º. Exemplo

Dividir os números hexadecimais 3F4 por 1A.

3 F 4 1 AB 2 2 * A = 4 (e vai um); F - 4 = B

3 F 4 1 20 B 2 2 * 1 = 2 + 1 do transporte = 3; 3 - 3 = 0

Page 20: Multiplicação Hexa

3 F 4 1 A0 B 4 2 6 6 * A = C (e vão três); 4 - C = 8 (e vão 4)

1 8 6 * 1 = 6 + 4 do transporte = 10; B - A =1

Para verificarmos se é verdade, nada melhor que fazer a prova:

1 A H divisor* 2 6 H quociente

9 C3 43 D C H+ 1 8 H resto3 F 4 H dividendo

Exemplo:• Dividir os números hexadecimais 21F por A1

2 1 F A 13 C 3

A 1* 3

1 D 3+ 3 C2 1 F