O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

Tp representação de informação

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Próximos SlideShares
comparadores sistemas digitais
comparadores sistemas digitais
Carregando em…3
×

Confira estes a seguir

1 de 57 Anúncio

Mais Conteúdo rRelacionado

Diapositivos para si (20)

Anúncio

Semelhante a Tp representação de informação (20)

Mais recentes (20)

Anúncio

Tp representação de informação

  1. 1. Teórico Práticas Departamento de Engenharia Informática Instituto Superior de Engenharia do Porto REPRESENTAÇÃO DE INFORMAÇÃO Principios da Computação
  2. 2. Representação da Informação Codificação Conversões Operações Aritméticas Álgebra de Boole Números Negativos Representação de Dados
  3. 3. Codificação Decimal Binária Hexadecimal Octal Outra Bases
  4. 4. Codificação Decimal Dez dígitos representados pelos símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Num número, cada algarismo representa uma potência de 10 Exemplo: 159 = 1 x 10² + 5 x 10¹ + 9 x 10º 1 x 100 + 5 x 10 + 9 x 1 centenascentenascentenascentenas dezenasdezenasdezenasdezenas unidadesunidadesunidadesunidades 4
  5. 5. Codificação Binária A tecnologia como a conhecemos está baseada em circuitos electrónicos Este circuitos apenas conseguem distinguir dois estados: ligado/desligado [1/0] Cada um destes estados representa um bitbitbitbit de informação => binary digit Os circuitos podem manipular simultaneamente grupos de bits (por exemplo: 4, 8, 12, 16, 32, ...) 5
  6. 6. Codificação Binária Nos computadores tudo é representado por uma sequência de bits, que são interpretados pelos diferentes equipamentos Podemos convencionar que cada bit representa: Ligado/desligado 0/1 Verdadeiro/Falso Voltagem/Ausência de voltagem Desta forma vai ser possível representar diferente tipos de informação como por exemplo: Texto Som Imagens 6
  7. 7. Codificação Binária Em comparação com a codificação decimal que possui 10 símbolos a binária apenas tem 2: 0, 1 Em analogia cada algarismo num número binário representa uma potência de 2 Exemplo: 10011111(2) 1x27 + 0x26 + 0x25 + 1x24 + 1x23 + 1x22 + 1x21 + 1x20 =159(10) 7
  8. 8. Codificação Binária Unidades Para facilitar a representação dos valores num sistema binário, foram definidas as seguinte grandezas, representativas de múltiplos do bit: Byte (B)Byte (B)Byte (B)Byte (B) –––– 8 bits8 bits8 bits8 bits KiloByte (KB)KiloByte (KB)KiloByte (KB)KiloByte (KB) –––– 222210101010 –––– 1024 B1024 B1024 B1024 B MegaByte (MB)MegaByte (MB)MegaByte (MB)MegaByte (MB) –––– 222220202020 –––– 1024 KB1024 KB1024 KB1024 KB GigaByte (GB)GigaByte (GB)GigaByte (GB)GigaByte (GB) –––– 222230303030 –––– 1024 MB1024 MB1024 MB1024 MB TeraByte (TB)TeraByte (TB)TeraByte (TB)TeraByte (TB) –––– 222240404040 –––– 1024 GB1024 GB1024 GB1024 GB PetaByte (PB)PetaByte (PB)PetaByte (PB)PetaByte (PB) –––– 250250250250 –––– 1024 TB1024 TB1024 TB1024 TB 8
  9. 9. Codificação Binária Os números binários, pela sua natureza (1/0), são facilmente representáveis no computador É possível representar qualquer informação que seja susceptível de ser convertida em números: DIGITALIZAR No entanto, a codificação binária: Não é natural para os humanos A representação pode tornar-se muito extensa 9
  10. 10. Outras Bases É possível representar os números em diferentes bases: 2, 3, 4, 5, 6, 7, 8, 10, ... Obtendo cada vez representações menos extensas Contudo existem candidatos naturais que tornam a conversão dededede eeee para binário mais fácil Estes candidatos são as bases que por sua vez já representam potências de base dois Octal (23) Hexadecimal (24) 10
  11. 11. Codificação Hexadecimal 16 símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F Cada algarismo num número representa uma potência de 16 Exemplo: 9F(16) 9x161+15x160 = 159(10) 11
  12. 12. Codificação Octal 8 símbolos: 0, 1, 2, 3, 4, 5, 6, 7 Cada algarismo num número representa uma potência de 8 Exemplo: 237(8) 2X82+3x81+7x80 = 159(10) 12
  13. 13. Representação da Informação Codificação ConversõesConversõesConversõesConversões Operações Aritméticas Álgebra de Boole Números Negativos Representação de dados
  14. 14. Conversão Decimal / Binário Binário / Decimal Entre outras bases Relação entre potência de base 2
  15. 15. Conversão Decimal / Binário Para converter um número de decimal para binário: 1. Divide-se sucessivamente o número a converter por 2 até obter um quociente igual a zero 2. Número binário é obtido usando os restos das divisões efectuadas pela inversa 15
  16. 16. Conversão Decimal / Binário 159(10) = 010011111(2) 16
  17. 17. Conversão Decimal / Binário Exercícios: (8 bits) 240 8 194 6 85 199 17
  18. 18. Conversão Decimal / Binário Solução: 240 11110000 8 00001000 194 11000010 6 00000110 85 01010101 199 11000111 18
  19. 19. Conversão Binário / Decimal 22227777 22226666 22225555 22224444 22223333 22222222 22221111 22220000 128 64 32 16 8 4 2 1 = Total 1 0 0 1 1 1 0 1 157 0 1 1 1 0 0 1 1 115 0 0 1 0 1 0 1 0 42 1 1 0 0 0 0 0 1 193 19
  20. 20. Conversão Binário / Decimal 20 Exercícios: 10011010 11111111 10101011 11010000 00001010 11001100
  21. 21. Conversão Binário / Decimal 21 Solução: 10011010 154 11111111 255 10101011 171 11010000 208 00001010 10 11001100 204
  22. 22. Conversão entre bases 22 Conversão de hexadecimal para decimal Converter 159(10) para hexadecimal utiliza-se a mesma técnica usada para o binário. 159(10)=9F(16)
  23. 23. Conversão entre bases 23 Converter um número na base decimal para um número base b Divide-se sucessivamente o número a converter por b até obter um quociente igual a zero O número na base b é obtido usando os restos das divisões efectuadas pela ordem inversa
  24. 24. Conversão entre bases 24 Se o número tiver parte fraccionária Multiplica-se sucessivamente a parte fraccionária por b até que esta seja igual a zero Utiliza-se a parte inteira desta multiplicação para obter a parte fraccionário do número base b Exemplo: 0,375(10) = 0,011(2) 0,375x2 = 0000,75 0,75 x2 = 1111,5 0,5 x2 = 1111,0
  25. 25. Conversão entre bases 25 Converter um número na base b para decimal Multiplica-se cada digito pela base b elevado à sua posição no número Soma-se todos os valores resultantes das multiplicações kyz00t (b)=( k * b5 + y * b4 + z * b3 + t )(10) bbbb5555 bbbb4444 bbbb3333 bbbb2222 bbbb1111 bbbb0000 k y z 0 0 t
  26. 26. Relação entre bases potências 26 Relação directa entre os dígitos de cada base Exemplos: 3 dígitos binários3 dígitos binários3 dígitos binários3 dígitos binários 1 dígito octal1 dígito octal1 dígito octal1 dígito octal 4 dígitos binários4 dígitos binários4 dígitos binários4 dígitos binários 1 dígito hexadecimal1 dígito hexadecimal1 dígito hexadecimal1 dígito hexadecimal (10)(10)(10)(10) (16)(16)(16)(16) (8)(8)(8)(8) (2)(2)(2)(2) 0000 0000 00000000 0000000000000000 1111 1111 01010101 0001000100010001 2222 2222 02020202 0010001000100010 3333 3333 03030303 0011001100110011 4444 4444 04040404 0100010001000100 5555 5555 05050505 0101010101010101 6666 6666 06060606 0110011001100110 7777 7777 07070707 0111011101110111 8888 8888 10101010 1000100010001000 9999 9999 11111111 1001100110011001 10101010 AAAA 12121212 1010101010101010 11111111 BBBB 13131313 1011101110111011 12121212 CCCC 14141414 1100110011001100 13131313 DDDD 15151515 1101110111011101 14141414 EEEE 16161616 1110111011101110 15151515 FFFF 17171717 1111111111111111
  27. 27. Relação entre bases potências 27 Conversão entre bases torna-se muito simples Binário para hexadecimal Cada grupo de 4 (quatro) bits vai corresponder a um valor hexadecimal Hexadecimal para binário Cada algarismo hexadecimal vai corresponder a 4 (quatro) bits Em octal o princípio é o mesmo mas usam-se grupos de 3 (três) bits
  28. 28. Relação entre bases potências 28 Exemplos 1111 0010(2) = F2(16) 011 101 101(2) = 355(8) FF(16) = 1111 1111(2) 54(8) = 101 100(2)
  29. 29. Relação entre bases potências 29 Exercícios 1011 1100(2) (16) 0001 0011(2) (16) 011 111 110(2) (8) 111 101 001(2) (8) FA(16) (2) 357(8) (2)
  30. 30. Relação entre bases potências 30 Exercícios 1011 1100(2) BC(16) 0001 0011(2) 13(16) 011 111 110(2) 376(8) 111 101 001(2) 751(8) FA(16) 1111 1010(2) 357(8) 011 101 111(2)
  31. 31. Representação da Informação Codificação Conversões Operações Aritméticas Álgebra de Boole Números Negativos Representação de dados
  32. 32. Operações Aritméticas 32 As operações aritméticas são independentes das bases de representação dos números Exemplos em binário:
  33. 33. Representação da Informação Codificação Conversões Operações Aritméticas Álgebra de Boole Números Negativos Representação de dados
  34. 34. Álgebra de Boole 34 Valores booleanos: Verdadeiro (V) Falso (F) Operações algébricas: e/and, ou/or, negação/not andandandand F F F F V F V F F V V V orororor F F F F V V V F V V V V notnotnotnot F V V F
  35. 35. Álgebra de Boole 35 Para os valores booleanos podemos convencionar: Verdadeiro = 1 Falso = 0 andandandand 0 0 0 0 1 0 1 0 0 1 1 1 orororor 0 0 0 0 1 1 1 0 1 1 1 1 notnotnotnot 0 1 1 0
  36. 36. Operações Booleanas 36 É possível efectuar operações booleanas sobre grupos de bits Exemplo (4 bits):
  37. 37. Representação da Informação Codificação Conversões Operações Aritméticas Álgebra de Boole Números Negativos Representação de dados
  38. 38. Números Negativos Sinal de Grandeza (S+G) Complemento para 1 Complemento para 2
  39. 39. Números Negativos 39 A representação de um número negativo obedece a determinadas regras Para representar o número decimal negativo (e.x. - 10) é necessário representar o sinal do número (positivo ou negativo) e a sua grandeza Técnicas que pode ser utilizadas: Sinal e grandeza (S + G) Complemento para 1 Complemento para 2
  40. 40. Sinal e grandeza 40 Utiliza-se o bit mais à esquerda para representar o sinal do número 0000 para indicar um valor positivovalor positivovalor positivovalor positivo 1111 para indicar um valor negativovalor negativovalor negativovalor negativo Exemplo Número positivo: 01100 Número negativo: 11100
  41. 41. Complemento para 1 41 Invertem-se todos os bits de um número para representar o seu complemento Se o bit mais à esquerda for 0000, esse valor é positivopositivopositivopositivo Se o bit mais à esquerda for 1111, então esse valor é negativonegativonegativonegativo Exemplo: +100(10) = 01100100(2) (8 bits) Invertendo todos os bits 10011011(2) = -100(10) Nota: Para ser possível trabalhar com números negativos através dos complementos é necessário identificar sempre a quantidade de bits
  42. 42. Complemento para 1 42 O problema da representação em complemento para 1 é que existem dois padrões de bits para o valor 0(10) 0(10) 8bits= 00000000(2) = 11111111(2) A solução é o complemento para 2
  43. 43. Complemento para 2 43 Calcula-se o complemento para 1 Adiciona-se 1 unidade ao valor encontrado no ponto anterior Exemplo: +5(10) 4bits = 0101(2) Complemento para 1 1010 + 1 1011(2) = -5(10)
  44. 44. Complemento para 2 44 A representa em complemento para 2 tem as seguintes características: O bit da esquerda indica o sinal O valor 0 tem a representação única (todos os bits a 0) A gama de valores que é possível representar com n bits é -2n-1 2n-1-1
  45. 45. Complemento para 2 45 Exercício: represente os números negativos em complemento para 2 (10) 4bits (2) Complemento 2 7 0111 6 0110 5 0101 4 0100 3 0011 2 0010 1 0001 0 0000 -1 -2 -3 -4 -5 -6 -7 -8
  46. 46. Complemento para 2 46 Solução: (10) 4bits (2) Complemento 2 7 0111 6 0110 5 0101 4 0100 3 0011 2 0010 1 0001 0 0000 -1 1111 -2 1110 -3 1101 -4 1100 -5 1011 -6 1010 -7 1001 -8 1000
  47. 47. Representação da Informação Codificação Conversões Operações Aritméticas Álgebra de Boole Números Negativos Representação de dados
  48. 48. Números Fracionários 48 Os números fracionários são representados pelo computador por um sistema de virgula flutuante: Um valor para a mantissa (m) Um valor para o expoente (e) Significa que cada número utiliza dois valores sendo o valor real calculado pela fórmula: Valor = m x bm x bm x bm x beeee (a base b é uma constante do sistema)
  49. 49. Números Fracionários 49 Simplifica as operações de multiplicação mas as operações de adição são mais complicadas Primeiro é necessário igualar os expoentes para somar as mantissas
  50. 50. Representação de Datas 50 As datas são representadas por números fracionários Parte inteira representa o número de dias que passaram desde a data de início convencionada Parte fracionaria representa as horas dentro do dia Por exemplo o MS Access toma como data convencionada (0000) 30 de Dezembro de 1899 As datas variam entre -647.434 (1 de Janeiro de 100) até 2.958.465 (31 de Dezembro de 9999) As horas variam entre ,0 (00:00:00) até 0,99999... (23:59:59)
  51. 51. Representação de Datas 51 Exercício: Nota: Para encontrar a hora deve multiplicar-se a parte fracionário por 24, a parte inteira do resultado indica as horas A parte fracionária resultante da operação anterior pode multiplicar-se por 60 para obter os minutos Se efectuar a operação anterior novamente encontra-se os segundos DataDataDataData NúmeroNúmeroNúmeroNúmero 1 Janeiro 1900, 12:00:00 2,5 27,75 3 Fevereiro 1900, 6:00:00
  52. 52. Representação de Datas 52 Solução: DataDataDataData NúmeroNúmeroNúmeroNúmero 1 Janeiro 1900, 12:00:00 2,5 26 Janeiro 1900, 18:00:00 27,75 3 Fevereiro 1900, 6:00:00 35,25
  53. 53. Representação de Texto 53 Podemos representar as letras e outros símbolos convencionando uma codificação Numeramos todos os caracteres Seguindo a mesma convenção na introdução dos caracteres no computador e quando os apresentamos na saída Exemplo: A 65 A B 66 B
  54. 54. Representação de Texto 54 Codificação de caracteres Existem códigos normalizados: ASCII – American Standard Code for Information Interchange ISO8859 (8bits) Mais 127 códigos, suportando caracteres com acentos e outros (depende da variante do código) ISO10646 ou UNICODE (16bits)
  55. 55. Representação de Texto 55 Codificação de caracteres Tabela mais utilizada actualmente: UNICODE – sistema de codificação que utiliza 2 bytes e que permite codificar qualquer letra (símbolo) existente no globo Tabelas utilizadas anteriormente: ASCII – American Standard Code for Information Interchange EBCDIC – definida pela IBM
  56. 56. Representação de Texto 56 Codificação de caracteres Ambas as tabelas utilizam um byte para cada letra Podem definir-se 256 caracteres diferentes No entanto, como os códigos para a mesma letra são diferentes nas duas tabelas é necessário uma conversão para transferir texto entre os dois sistemas
  57. 57. Representação de Imagens 57 Pixel – ponto mais pequeno de definição de uma imagem Se a imagem for a preto e branco devemos considerar vários graus de cinzento para cada ponto. Para 256 graus de cinzento para cada ponto a memória necessária para armazenar a imagem é 20 x 10 X 8 bits = 200 bytes Imagens a cores – cada pixel tem um valor para cada uma das cores primárias: vermelho, verde e azul. Se cada cor primária tiver 16 níveis, são necessário 4 bits por cada uma, que equivale a 12 bits por pixel. A imagem utiliza 200 x 12 / 8 = 300 bytes

×