tc – dei, 2005/2006. representação de informação -- texto -- paulo marques [email protected]...

44
TC – DEI, 2005/2006

Upload: internet

Post on 17-Apr-2015

108 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Page 2: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

Representação de Informação-- Texto --

Paulo [email protected]://www.dei.uc.pt/~pmarques

Tecnologia dos Computadores 2005/2006

Page 3: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Representação de Informação

Até agora vimos... Como é que se representam números inteiros Como é que se representam fracções

Vamos ver... Como é que se representa texto Como é que se representam imagens Como é que se representa som Técnicas simples de correcção de erros Dispositivos de armazenamento de informação

Page 4: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Representação de Caracteres

ASCII = American Standard Code for Information Interchange

Tradicionalmente, utilizava-se 7 bits para representar os diversos caracteres 7 bits 128 combinações diferentes possíveis

Exemplo: ‘A’ = (1000001)2 = (65)10

Mais tarde, os 7 bits foram extendidos a 8, permitindo representar 256 caracteres diferentes

Page 5: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Tabela de ASCII (7 bits)

Page 6: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Texto

A representação de texto é simplesmente uma sequência de caracteres

O L A“ ”

1001111 1001100 1000001

79 76 65 Código ASCII

Page 7: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

UNICODE

Na prática, 256 caracteres diferentes não chegam para todas as línguasFormou-se um consórcio internacional para definir um standard que para codificação de caracteres aplicável a todas as línguas UNICODE (http://www.unicode.org)

Cada caracter é representada por 16 bits 16 bits 216 combinações diferentes (65536!) Na verdade, o que são representados não são

exactamente os caracteres... Os primeiros 256 caracteres têm o mesmo valor do

que em ASCII

Page 8: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

UNICODE – Um Exemplo

Page 9: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Compressão de Texto

Apesar do espaço de armazenamento estar continuamente a aumentar, é desejável por vezes comprimir os dados Transmissão pela rede Armazenamento de longa duração Em geral... Maior eficiência e aproveitamento de

recursos

Três métodos comuns de comprimir texto Keyword encoding Run-length encoding Huffman codes

Page 10: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Keyword Encoding

Substituir palavras muito comuns por caracteres especiais ou sequências especiais de caracteres

As palavras são substituídas de acordo com uma tabela de frequência de ocorrência

Chave Significado

% carro

$ acidente

& senhor

# do

Page 11: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Aplicando a codificação...

“No acidente estiveram envolvidos três carros. O carro do senhor António ficou destruído. O carro do senhor José não sofreu grandes danos no acidente. O carro do senhor Carlos... bom, depois do acidente, nem se pode chamar aquilo um carro....”

241 bytes

“No $ estiveram envolvidos três carros. O % # & António ficou destruído. O % # & José não sofreu grandes danos no $. O % # & Carlos... bom, depois # $, nem se pode chamar aquilo um %....”

185 bytes (76%)

Page 12: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Run-length Encoding (RLE)

Tipicamente utilizando quando o mesmo padrão/letra surge muitas seguido numa sequência de dados Não é comum em texto, mas em muitos outros tipos

de dados (imagem, vídeo) Este tipo de algoritmo é a origem dos métodos de

compressão utilizados em muitos utilitários comuns

Neste tipo de compressão, uma sequência de caracteres que se repetem é substituída por um marcador especial, pelo caracter em questão, seguido do número de vezes que ele aparece.

Page 13: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

RLE – Exemplos

AAAAAAAAAA *A10

AABBBBBBBBAMMKKKKKKKKKM AA*B8AMM*K9M

Nestes dois exemplos o texto é ASCII, no entanto pode-se fazer em binário, o princípio é o mesmo De facto, ASCII é binário!

Page 14: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Huffman Codes

A letra mais frequente no alfabeto português é o ‘e’

Ao comprimir um texto, porque é que o ‘e’ tem de ocupar o mesmo número de bits que... o ‘x’, por exemplo?

Os códigos de Huffman representam os diferentes caracteres utilizando um número diferentes de bits Os caracteres mais comuns utilizam menos bits!

Page 15: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Huffman Codes - Exemplo

Chave Significado

00 ESPAÇO

01 A

100 O

110 U

111 V

1010 S

1011 C

“VOU A CASA”111100110000100101101101001

Page 16: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Huffman Codes - Exemplo

Analisemos o exemplo... “VOU A CASA” 10 bytes de ASCII 11110011 00001001 01101101 001 < 4 bytes Compressão de 60%!

Existem técnicas especiais que permitem construir as tabelas de codificação a utilizar Nós não as estudaremos aqui...

Uma característica fundamental é que nenhuma dos códigos utilizados é prefixo de nenhum outro código!

Page 17: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

Representação de Informação-- Imagens --

Page 18: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Percepção da cor

O nosso olho tem dois tipos de sensores: CONES e BASTONETES

Os CONES percepcionam a cor, sendo sensíveis a três frequências: “vermelho”, “verde” e “azul”

Page 19: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Percepção da cor

A percepção da cor é possível porque as várias cores podem ser vistas como uma mistura de outras cores, nomeadamente: VERDE, VERMELHO e AZUL

Existem outros sistemas de coloração... RGB = Red Green Blue CYMK = Cyan Yellow Magenta Black HSL = Hue Saturation Luminosity

RGB CYMK

Page 20: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Representação da cor

Tipicamente os sistemas informáticos utilizam o sistema RGB Red, Green, Blue

A cada cor é atribuído um número 8 bits por cor cada cor de 0 a 255 Total = 24 bits de cor (TRUE COLOR)

Exemplos:

(255,0,0)

(0,255,0)

(0,0,255)

(255,255,255)

(0,0,0)

(255,255,0)

(0,255,255)

(255,0,255)

(150,150,150)

Page 21: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Imagens

As imagens são formadas por um conjunto muito grande de pontos pixels

A cada pixel corresponde uma cori.e. três números RGB

Page 22: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Armazenamento de imagens

Existem imensos formatos de armazenamento de imagens GIF, JPEG, BMP, PNG, TIFF, ...

Na maior parte dos casos as imagens são comprimidas antes de serem armazenadas... ... 1600x1200x24bits cor = 5.5Mbytes!

Dois tipos de compressão Com perda de qualidade (e.g JPEG) Sem perca de qualidade (e.g. Compressed-TIFF)

Page 23: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Desenhos/Imagens Vectoriais

Em vez de se armazenar os pixels, guarda-se uma descrição do gráfico/imagem

Muitos programas de desenho/edição electrónica utilizam este método (e.g. CorelDraw, fontes TTF, AutoCAD)

Os desenhos podem ser escalados de forma transparente

= poly[(0,0) -> (50,30) -> (40,80) -> (0,0)]

Page 24: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Video

Em video, o princípio é o mesmo Guarda-se um conjunto de imagens sucessivas

(e.g. 25 imagens por segundo)

Devido ao imenso espaço que ocupam, tem de se compactar as imagens de uma forma eficiente CODEC = COmpressor/DECompressor E.g. DivX!

Dois métodos de compressão... Compressão temporal Não considerar as diferenças entre

duas imagens sucessivas Compressão espacial Eliminar a redundância dentro de

uma imagem

Page 25: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Som

Os sons que ouvimos correspondem às vibrações que o ar transmite ao tímpano

1.2

1.2

f t( )

12.5660 t

Page 26: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Som - Digitalização

Nos computadores o som é digitalizado fazendo-o corresponder a números discretos.

Quando se digitaliza som existe uma certa taxa de amostragem

1.2

1.2

f t( )

12.5660 t

1.2

1.2

f t( )

12.5660 t

Page 27: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Armazenamento de Som

Duas formas de armazenamento Sem perdas, tipicamente não comprimida (e.g. wav) Com perdas, comprimida (e.g. mp3)

Nas formas comprimidas é tido em conta a forma como nós, humanos, ouvimos o som! O formato mp3 é codificado de acordo com o que

nós conseguimos ouvir em cada momento. As partes que não conseguimos ouvir são eliminadas.

Em mp3 a compressão é feita por códigos de Huffman

Page 28: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Resposta do Ouvido Humano...

Page 29: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006http://www.toledo-bend.com/colorblind/Ishihara.html

25

45

6

29

56

8

Page 30: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

Técnicas Básicas deCorrecção de Erros

Page 31: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Correcção de Erros

Quando se armazena ou transmite informação, podem existir erros

E.g. 01101010 01100010

É necessário garantir que, com uma elevada probabilidade, os erros conseguem ser detectados e se possível corrigidos

Page 32: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Bits de Paridade

Dada uma sequência de bits, adiciona-se um bit extra que torna o número de bits resultante de uma certa paridade Paridade PAR: O conjunto resultante tem de ter um

número par de bits Paridade ÍMPAR: O conjunto resultante tem de ter

um número ímpar de bits

1 1 00 0 0 1

Número original

1

Bit de paridade

PARIDADE PAR

1 1 00 0 0 1 0 PARIDADE ÍMPAR

Page 33: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Checksums

É uma forma evoluída dos bits de paridade Dado um conjunto de dados junta-se um número

que é obtido fazendo uma certa operação sobre esses dados

Um exemplo simples: somar e calcular o resto da divisão pelo número máximo que se quer representar

Outro exemplo simples: ... A prova dos nove!

12 32 34 12 43 54 12 54 65 76 87 12 45

12+32+34+12+43+54+12+54+65+76+87+12+45=538538 MOD 100 = 38

38

Page 34: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Checksums

Alguns tipos de checksums muito conhecidos CRC = Cyclic Redundancy Check MD5 = Message Digest 5

Nota O algarismo que está junto ao número do bilhete de

identidade é um checksum!

Page 35: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Códigos de Correcção de Erros

Existem códigos que permitem não só detectar erros, como corrigi-los!

Distância de Hamming Número de bits diferentes entre duas cadeias

0 0 11 1 1

0 1 00 1 1

Distância de Hamming de 3

Page 36: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Um código de correcção simples...

Se houver um bit errado, consigo detectá-lo e corrigi-loSe houver dois bits errados, consigo detectar que houve um erro, mas ao corrigir, o resultado é incorrectoSe houver três bits errados, não consigo detectá-lo nem corrigi-lo

Neste código, a distânciade Hamming é sempre, pelo menos, 3

Page 37: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Exemplos (envia D – 011100)

Recebe...

011000 Há apenas um erro, é detectado e corrigido correctamente. O que está mais próximo é o D (distância 1).

010000 Detectado, mas ao corrigir, é corrigido para o valor errado (corrige para A!)

000000 Três bits errados! Não detectado, nem corrigido, assume-se que é o A!

O código de Hamming é pensado para situações de errosnão burst. Exemplos de utilização: memórias dos computadores (memória ECC), modems, satélites planetários!

Page 38: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

Armazenamento de Informação

Page 39: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Disco Rígido

Page 40: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

CD-ROM

Page 41: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Tape

Page 42: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Flash Memory Pen

Non-volatile FlashMemory

Page 43: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006

Para Saber Mais...

Computer Science, An Overview Capítulo 1 (1.3, 1.4, 1.8, 1.9)

Computer Science Iluminated Capítulo 3 (3.1, 3.3, 3.4, 3.5, 3.6) Embora este não seja o livro principal, tem a matéria

um pouco melhor explicada

http://computer.howstuffworks.com/

Page 44: TC – DEI, 2005/2006. Representação de Informação -- Texto -- Paulo Marques pmarques@dei.uc.pt pmarques Tecnologia dos Computadores

TC – DEI, 2005/2006