Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e...

30
Representac ¸˜ ao de Dados e Sistemas de Numerac ¸˜ ao Sistema de numeração decimal e números decimais (base 10) Sistema de numeração binário e números binários (base 2) Conversão entre binário e decimal Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números octais (base 8) Representação de números reais em binário Operações aritméticas com números binários: Soma, subtração, multiplicação e divisão Complemento a 1 e complemento a 2 de números binários Números binários com sinal Operações aritméticas com números binários com sinal Representação de dados alfanuméricos: códigos ASCII e Unicode 1

Transcript of Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e...

Page 1: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Representacao de Dados e Sistemas de Numeracao

• Sistema de numeração decimal e números decimais (base 10)

• Sistema de numeração binário e números binários (base 2)• Conversão entre binário e decimal

• Sistema de numeração hexadecimal e números hexadecimais (base 16)• Conversão entre hexadecimal e outras bases

• Números octais (base 8)

• Representação de números reais em binário

• Operações aritméticas com números binários:• Soma, subtração, multiplicação e divisão

• Complemento a 1 e complemento a 2 de números binários

• Números binários com sinal• Operações aritméticas com números binários com sinal

• Representação de dados alfanuméricos: códigos ASCII e Unicode

1

Page 2: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Sistema de Numeracao Decimal

• Forma de representação de números usada no dia-a-dia

• 10 algarismos: 0 a 9

• Números decimais: números na base 10• Notação: 64710

• Sistema posicional:• Posição de cada dígito em um número é associada a um peso• Valor do número: somatório dos dígitos multiplicados pelos pesos

• Pesos dos dígitos de números inteiros, da direita para esquerda:• Base 10⇒ Potências de 10:

... 104 103 102 101 100

... 10000 1000 100 10 1

2

Page 3: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Exemplos: Sistema de Numeracao Decimal

• 64710 = (6× 102) + (4× 101) + (7× 100)

= (6× 100) + (4× 10) + (7× 1)

= 600 + 40 + 7

• 1903910 =

3

Page 4: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Sistema de Numeracao Binario

• Forma de representação de nos usada em computadores e sistemas digitais

• 2 algarismos: 0 e 1

• Números binários: números na base 2• Notação: 10012

• Sistema posicional:• Posição de cada bit em um número é associada a um peso• Valor do número: somatório dos bits multiplicados pelos pesos

• Pesos dos bits de números inteiros, da direita para esquerda:• Base 2⇒ Potências de 2:

... 210 29 28 27 26 25 24 23 22 21 20

... 1024 512 256 128 64 32 16 8 4 2 1

4

Page 5: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Exemplos: Sistema de Numeracao Binario

• 10012 = (1× 23) + (0× 22) + (0× 21) + (1× 20)

= (1× 8) + (0× 4) + (0× 2) + (1× 1)

= 8 + 1

= 910

• 01001012 =

5

Page 6: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Contagem em Binario

Contagem de 0 a 3 Contagem de 0 a 7

Número Númerodecimal binário

0 0 01 0 12 1 03 1 1

Número Número

decimal binário

0 0 0 0

1 0 0 1

2 0 1 0

3 0 1 1

4 1 0 0

5 1 0 1

6 1 1 0

7 1 1 1• Com 2 bits:

• Representa 4 (22) valores diferentes: de 0 a 3 (22 − 1)

• Com 3 bits:• Representa valores diferentes: de 0 a

6

Page 7: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Contagem em Binario: de 0 a 15

Número decimal Número binário0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 0 1 0 16 0 1 1 07 0 1 1 18 1 0 0 09 1 0 0 1

10 1 0 1 011 1 0 1 112 1 1 0 013 1 1 0 114 1 1 1 015 1 1 1 1

• Com 4 bits:• Representa valores diferentes: de 0 a

7

Page 8: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Contagem em Binario: de 0 a 15

Número decimal Número binário0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 0 1 0 16 0 1 1 07 0 1 1 18 1 0 0 09 1 0 0 1

10 1 0 1 011 1 0 1 112 1 1 0 013 1 1 0 114 1 1 1 015 1 1 1 1

8

Page 9: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Sistema de Numeracao Binario

• Com n bits:• Representa 2n valores diferentes• Conta de 0 a 2n − 1

• Com n = 5 bits:• Representa 25 = 32 valores diferentes• Conta de 0 a 25 − 1 = 31

• Com n = 6 bits:• Representa valores diferentes• Conta de a

• Com n = 10 bits:• Representa valores diferentes• Conta de a

9

Page 10: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Exemplos: Conversao de Binario para Decimal

• 11011012

= (1× 26) + (1× 25) + (0× 24) + (1× 23) + (1× 22) + (0× 21) + (1× 20)

= (1× 64) + (1× 32) + (0× 16) + (1× 8) + (1× 4) + (0× 2) + (1× 1)

= 64 + 32 + 0 + 8 + 4 + 0 + 1

= 10910 1 1 0 1 1 0 1 2

bit mais bit menossignificativo significativo

• 1 0 0 1 0 0 0 12

10

Page 11: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Conversao de Decimal para Binario

• Método de sucessivas divisões por 2:• Divide número decimal por 2• Continuamente, divide quociente por 2, até chegar no quociente 0• Restos da divisão formam número binário

• 1o resto: bit menos significativo• Último resto: bit mais significativo

• Exemplo: 1210

12 / 2 = 6 resto 0 ⇐ bit menos significativo

6 / 2 = 3 resto 0

3 / 2 = 1 resto 1

1 / 2 = 0 resto 1 ⇐ bit mais significativo

1210 = 11002

11

Page 12: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Exemplos: Conversao de Decimal para Binario

4310 1910

12

Page 13: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Sistema de Numeracao Hexadecimal

• Forma compacta de representar números binários

• 16 símbolos: 0 a 9 e A a F (valendo de 10 a 15)

• Números hexadecimais: números na base 16• Notação: 1C16 ou 1Ch

• Sistema posicional:• Posição de cada dígito em um número é associada a um peso• Valor do número: somatório dos dígitos multiplicados pelos pesos

• Pesos dos dígitos de números inteiros, da direita para esquerda:• Base 16⇒ Potências de 16:

... 165 164 163 162 161 160

... ... ... 4096 256 16 1

13

Page 14: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Sistema de Numeracao Hexadecimal

• Exemplo:

1C16 = (1× 161) + (C × 160)

= (1× 16) + (C × 1)

= (1× 16) + (12× 1)

= 16 + 12

= 2810

14

Page 15: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Contagem em Hexadecimal: de 0 a 15

Número Número Númerodecimal binário hexadecimal

0 0 0 0 0 01 0 0 0 1 12 0 0 1 0 23 0 0 1 1 34 0 1 0 0 45 0 1 0 1 56 0 1 1 0 67 0 1 1 1 78 1 0 0 0 89 1 0 0 1 910 1 0 1 0 A11 1 0 1 1 B12 1 1 0 0 C13 1 1 0 1 D14 1 1 1 0 E15 1 1 1 1 F

15

Page 16: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Contagem em Hexadecimal

Base Base Base Base Base

10 16 10 16 10 16 10 16 10 16

0 0 16 10 32 20 160 A0 240 F0

1 1 17 11 33 21 161 A1 241 F1

2 2 18 12 34 22 162 A2 242 F2

3 3 19 13 35 23 163 A3 243 F3

4 4 20 14 36 24 164 A4 244 F4

5 5 21 15 37 25 165 A5 245 F5

6 6 22 16 38 26 166 A6 246 F6

7 7 23 17 39 27 ... 167 A7 ... 247 F7

8 8 24 18 40 28 168 A8 248 F8

9 9 25 19 41 29 169 A9 249 F9

10 A 26 1A 42 2A 170 AA 250 FA

11 B 27 1B 43 2B 171 AB 251 FB

12 C 28 1C 44 2C 172 AC 252 FC

13 D 29 1D 45 2D 173 AD 253 FD

14 E 30 1E 46 2E 174 AE 254 FE

15 F 31 1F 47 2F 175 AF 255 FF16

Page 17: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Conversao de Binario para Hexadecimal

• Cada dígito hexadecimal corresponde a 4 bits• 16 = 24

• Método:• Quebra número binário em grupos de 4 bits,

começando no bit menos significativo• Substitui cada grupo de 4 bits pelo símbolo hexadecimal correspondente

• Exemplos:

1100 1010 0101 01112 11 1111 0001 0110 10012

C A 5 716

17

Page 18: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Conversao de Hexadecimal para Binario

• Método inverso:• Substitui cada dígito hexadecimal pelo grupo de 4 bits correspondente

• Exemplo:

1 0 A 416

1 0000 1010 01002

• Exemplos:

C F 8 E16 9 7 4 A16

18

Page 19: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Conversao de Hexadecimal para Decimal

• 1o método:• Converter de hexadecimal para binário• Depois, converter de binário para decimal

• Exemplos:

1C16 = 0001 11002

= 24 + 23 + 22

= 16 + 8 + 4

= 2810

A 8 516 =

19

Page 20: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Conversao de Hexadecimal para Decimal

• 2o método:• Usar potências de 16

• Exemplo:

B2F816 = (B × 163) + (2× 162) + (F × 161) + (8× 160)

= (B × 4096) + (2× 256) + (F × 16) + (8× 1)

= (11× 4096) + (2× 256) + (15× 16) + (8× 1)

= 45056 + 512 + 240 + 8

= 4581610

20

Page 21: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Exemplo: Conversao de Hexadecimal para Decimal

• E516 =

21

Page 22: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Conversao de Decimal para Hexadecimal

• 1o método:• Converter de decimal para binário• Depois, converter de binário para hexadecimal

• Exemplo: 65010

650 / 2 = 325 resto 0

325 / 2 = 162 resto 1

162 / 2 = 81 resto 0

81 / 2 = 40 resto 1

40 / 2 = 20 resto 0

20 / 2 = 10 resto 0

10 / 2 = 5 resto 0

5 / 2 = 2 resto 1

2 / 2 = 1 resto 0

1 / 2 = 0 resto 1

10 1000 10102

2 8 A16

22

Page 23: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Conversao de Decimal para Hexadecimal

• 2o método:• Repetidas divisões por 16 até obter quociente 0• Restos formam número hexadecimal

• Exemplo: 65010

650 / 16 = 40 resto 10 ⇒ A ⇐ menos significativo

40 / 16 = 2 resto 8 ⇒ 8

2 / 16 = 0 resto 2 ⇒ 2 ⇐ mais significativo

65010 = 28A16

23

Page 24: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Sistema de Numeracao Octal

• 8 símbolos: 0 a 7

• Números octais: números na base 8• Notação: 23748

• Sistema posicional:• Posição de cada dígito em um número é associada a um peso• Valor do número: somatório dos dígitos multiplicados pelos pesos• Pesos dos dígitos de números inteiros, da direita para esquerda:

• Base 8⇒ Potências de 8:

... 84 83 82 81 80

... ... 512 64 8 1

• Exemplo: 23748 = (2× 83) + (3× 82) + (7× 81) + (4× 80)

= (2× 512) + (3× 64) + (7× 8) + (4× 1)

= 1024 + 192 + 56 + 4

= 12761024

Page 25: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Representacao de Numeros Reais na Base 10

• Sistema de numeração decimal:• Digitos à esquerda do ponto decimal: potências de 10 positivas• Digitos à direita do ponto decimal: potências de 10 negativas

... , ...

... 103 102 101 100 10−1 10−2 10−3 ...

... 1000 100 10 1 110

1100

11000 ...

... 1000 100 10 1 0, 1 0, 01 0, 001 ...

25

Page 26: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Exemplo: Representacao de Numeros Reais na Base 10

• 243, 7510

= (2× 102) + (4× 101) + (3× 100) + (7× 10−1) + (5× 10−2)

= (2× 100) + (4× 10) + (3× 1) + (7× 0, 1) + (5× 0, 01)

= 200 + 40 + 3 + 0, 7 + 0, 05

= 243, 75

26

Page 27: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Representacao de Numeros Reais na Base 2

• Sistema de numeração binário:• Bits à esquerda do ponto binário: potências de 2 positivas• Bits à direita do ponto binário: por potências de 2 negativas

... , ...

... 23 22 21 20 2−1 2−2 2−3 ...

... 8 4 2 1 12

14

18 ...

... 8 4 2 1 0, 5 0, 25 0, 125 ...

27

Page 28: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Exemplos: Representacao de Numeros Reais na Base 2

• 1010, 112 = (1× 23) + (1× 21) + (1× 2−1) + (1× 2−2)

= (1× 8) + (1× 2) + (1× 0, 5) + (1× 0, 25)

= 8 + 2 + 0, 5 + 0, 25

= 10, 7510

• Conversão de números reais de binário para decimal

• 11, 0112 =

28

Page 29: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Conversao de Numeros Reais de Decimal para Binario

• Método de sucessivas multiplicações por 2:• Multiplica parte fracionária do número por 2• Continuamente, multiplica parte fracionária do resultado por 2,

até chegar no resultado 1• Parte inteira dos resultados formam número binário

• 1o resultado: bit mais significativo• Último resultado: bit menos significativo

• Exemplo: 4, 312510 = 100.01012• Parte inteira: 410 = 1002

• Parte fracionária: 0, 312510 = 0.01012

0, 3125 × 2 = 0, 625 parte inteira 0 ⇐ bit mais significativo

0, 625 × 2 = 1, 25 parte inteira 1

0, 25 × 2 = 0, 5 parte inteira 0

0, 5 × 2 = 1 parte inteira 1 ⇐ bit menos significativo29

Page 30: Representac¸ ao de Dados e Sistemas de Numerac¸˜ ao˜ · Sistema de numeração hexadecimal e números hexadecimais (base 16) Conversão entre hexadecimal e outras bases Números

Exemplo: Conversao de Numeros Reais de Decimal para Binario

• 3, 687510 =

30