Escolar Documentos
Profissional Documentos
Cultura Documentos
01 - Sistema de Numeraçao
01 - Sistema de Numeraçao
2.1 Sistemas Numricos 2.1.1 Sistema Binrio 2.1.2 Sistema Octal 2.1.3 Sistema Hexadecimal 2.2 Operaes Aritmticas 2.2.1 Aritmtica Binria 2.2.2 Aritmtica Hexadecimal 2.3 Operaes Lgicas 2.3.1 Operaes lgicas com bits 2.3.2 Operaes Lgicas com nmeros 2.4 Tipos de Dados Tratados pelo Computador
2 2 3 3 4 4 6 9 9 10 10 11 11 11 13 13 14 14 15 15 15 16 17 21 21 22 23 25 26 27 29 29
2.5 Representao Interna de Caracteres 2.5.1 Cdigo de 6 bits 2.5.2 Cdigos de 7 bits (ASCII) 2.5.3 EBCDIC 2.5.4 ASCII Estendido 2.5.5 ISO Latin-1 2.5.6 Caracteres ANSI 2.5.7 Caracteres Unicode 2.6 Representao Interna de Nmeros 2.6.1 Representao de Nmeros Inteiros 2.6.2 Vrgula fixa (Fixed Point) 2.6.3 Ponto Flutuante 2.7 Re presentao Digital de udio, Imagem e Vdeo 2.7.1 Sinais Analgicos para representar informaes 2.7.2 Porque Digitalizar? 2.7.3 Digitalizao, Amostragem e Quantificao 2.7.4 udio 2.7.5 Vdeos e Imagens Analgicos 2.7.6 Representao digital de imagens e vdeos 2.7.7 Especificao da Cor 2.7.8 Sistema RGB
Valores posicionais
Em um sistema de nmero posicional, um nmero representado por uma seqncia de dgitos onde cada posio de dgito tem um peso associado. Tomando como exemplo o sistema decimal, ou base 10, que sistema numrico que utilizamos diariamente (0, 1, 3 2 2, ... 9), o valor D de um nmero decimal de 4 dgitos d3d2d1 d0 D = d3*10 + d2*10 + 1 0 i d1*10 + d0*10 . Cada dgito d i tem um peso de 10 . Por exemplo, o nmero 3.098.323 (base 10) a representao de 3*106 + 0*105 + 9*104 + 8*103 + 3*102 + 2*101 + 3*10 0.
Para a converso de decimal para binrio utilizamos o mesmo processo. Por exemplo, para obtermos o correspondente binrio do nmero 200d, dividimos primeiramente este valor por 2 e anotamos o resto de cada diviso. Em seguida, dividimos novamente o dividendo da operao anterior por 2 e anotamos novamente o resto da diviso. Isto repetido at que o resto da diviso seja 0, conforme abaixo: 200/2=100 100/2= 50 50/2 = 25 25/2 = 12 12/2 = 6 6/2 = 3 3/2 = 1 1/2 = 0 Resto 0 Resto 0 Resto 0 Resto 1 Resto 0 Resto 0 Resto 1 Resto 1
O correspondente binrio de 200d obtido unindo-se os restos da diviso por 2 na ordem inversa, assim 200d=11001000b.
0C 0D 0E 0F
12 13 14 15
Adio
Para somar dois nmeros binrios, 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 isto, observe as seguintes operaes bsicas: ? 0+0=0 ? 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) Exemplos: + 111 + 1101 + 1101 10010 1100111 100100 11001 + 1001011111+ 10011 110110 101100 111110 101110 + 1110 111100
Subtrao
Existem duas formas para fazer a subtrao binria:
? Como o conjunto de smbolos contm apenas 2 dgitos, ao se efetuar a subtrao
parcial entre 2 dgitos, um do diminuendo e outro do diminuidor, se o segundo (diminuidor) exceder o primeiro (diminuendo), subtrai-se uma unidade ao dgito imediatamente esquerda no diminuendo (se existir e o seu valor for 1), convertendo-o a 0. Em seguida, substitumos o diminuendo por 2, que
corresponde equivalncia 1*2, da unidade extrada. Se o dgito imediatamente esquerda for 0, procura-se nos dgitos consecutivos. Exemplos: 11101 - 111 02 -11101 -111 11010 02 021 -11101 -111 10110
-11101 -111 10010 Exemplos: 11000 - 111 1 0112 1 0120 -10200 -11000 -111 1001
de a por -b. Esta subtrao feita pelo chamado mtodo do complemento de dois. O complemento de dois transforma um nmero positivo em negativo. Neste mtodo, o diminuendo (a) somado com o complemento de dois do diminuidor (b). Note que o nmero de dgito dos operandos devem ser o mesmo: para isto complemente o operando com menor nmero de dgitos com zeros a esquerda (antes do complemento). Para realizar o complemento de dois, basta trocar os uns pelos zeros e vice-versa e adicionar um ao resultado. Por exemplo, a subtrao de 1110-101 feita da seguinte maneira: 1. 2. 3. 4. Completa-se o nmero de dgitos do diminuidor: 0101 Realiza-se o complemento de dois do diminuidor: 1010+1=1011. Soma-se os dois operandos 1110+1011=11001 Despreza-se o transporte final: 1001
Multiplicao
A multiplicao na base 2 - ou em qualquer outra base - pode fazer-se por adies sucessivas; para calcular A*B basta somar A a si prpria B vezes. Exemplo: 101b * 100b = ? Lembrado que 100b = 4b, ento 101 * 100 =
Uma forma, e a ideal, fazer a operao semelhante multiplicao decimal, exceto pelo fato da soma final dos produtos se fazer em binrio. Para tal, as seguintes igualdades devem ser respeitadas:
? 0*0=0; 0*1=0; 1*0=0; 1*1=1
Exemplos:
? Multiplicar os nmeros 1011 e 1101.
Diviso
Analogamente, a diviso pode ser feita por subtraes sucessivas, at obtermos uma diferena igual a zero (no caso de uma diviso exata), ou um nmero menor que o divisor. Exemplo:
Mas esta diviso pode ser feita de maneira idntica diviso decimal, exceto pelo fato das multiplicaes e subtraes internas ao processo serem feitas em binrio. Exemplo:
? Dividir 11011 e 101.
A prova :
18; como o resultado maior que a base (16), ento 18-16 = 2 e vai um para o dgito mais significativo. Portanto, 19h+9h=22h; No preciso converter os nmeros F8h e A34h para decimal, som-los e reconverter o resultado para a base 16. Podemos fazer a conta coluna a coluna. Ento F8h + A34h calculado da seguinte forma:
Subtrao
Vamos ver a subtrao a partir de um exemplo: 27H-1EH. Efetuamos a operao de subtrao coluna a coluna. Na primeira coluna, o diminuidor (E) superior ao diminuendo (7). Ento, adicionamos a base ao diminuendo, executamos a subtrao, e h transporte de uma unidade que somamos ao diminuidor da coluna seguinte.
retirando o nmero transportado do diminuendo da coluna da esquerda, 2-1, obtemos 1, e subtraindo 1 do diminuidor, obtemos 0:
Multiplicao
Esta operao pode fazer-se facilmente por meio da tabela de dupla entrada apresentada:
Como se v, temos todos os algarismos hexadecimais (exceto o zero) nas entradas verticais e horizontais da tabela. Se quisssemos calcular 5h*9h, por exemplo, encontraramos o resultado na intercesso da coluna 5 com a linha 9. Ento, 5h*9h = 2Dh. Uma vez que a multiplicao comutativa, ento, o mesmo resultado se verifica na intercesso da coluna 9 com a linha 5.
? 1. Exemplo:
? 2. Exemplo:
Procedendo como de costume, vamos comear pelo produto do multiplicando pelo algarismo mais direita do multiplicador:
Calculamos em seguida o produto do multiplicando pelo 2. algarismo (contando a partir da direita) do multiplicador.
Diviso
Esta a operao mais difcil de fazer sem recorrermos tabela anterior. Veja alguns exemplos:
? 1. Exemplo: dividir os nmeros hexadecimais 2F por 12.
Em portugus, a operao lgica AND : se o primeiro operando 1 e o s egundo operando 1, o resultado 1, seno o resultado 0.
OR
A operao lgica OR tambm uma operao com dois operandos. Ela definida como: 0 0 1 1 or or or or 0 1 0 1 = = = = 0 1 1 1
Op1 0 0 1 1 Op2 0 1 0 1 OR Op1 Op2 0 1 1 1
A operao lgica OR significaria: Se o primeiro operando ou o segundo operando (ou os dois) forem 1, o resultado 1, seno o resultado 0. Esta operao tambm conhecida como ou inclusivo (inclusive-OR).
XOR
A operao lgica XOR (ou exclusivo) tambm uma operao com dois operandos. Ela definida como:
10
0 0 1 1
0 1 0 1
= = = =
0 1 1 0
Op1 0 0 1 1 Op2 0 1 0 1 XOR Op1 Op2 0 1 1 0
Em portugus a operao lgica XOR significaria: Se o primeiro operando ou o segundo operando, mas no os dois, for 1, o resultado 1, seno o resultado 0.
NOT
A operao lgica XOR (ou exclusivo) tambm uma operao com um operando. Ela definida como: not 0 = 1 not 1 = 1 A tabela verdade da operao NOT tem a seguinte forma:
Op1 0 0 NOT Op1 1 0
Em portugus a operao lgica NOT significaria: Se o operando for 1, o resultado 0, seno o resultado 1.
11
? uma seqncia de 4 bits chamada de nibble. ? um grupo de 16 bits chamado de word. ? um grupo de 32 bits chamado de double word. ? um grupo de 64 bits chamado de quad word.
Por razes de simplificao de hardware, o nmero 1024 foi o escolhido para representar o "k" da computao. Na vi da cotidiana e na fsica, o "k" vale 1000:
? 1 km = 1000 metros ? 1 kg = 1000 gramas ? 1 kV = 1000 volts
Entretanto, na informtica, o multiplicador "k" (l-se "quilo" ou "k") vale 1024. Da mesma forma, o multiplicador "M" (l-se "mega"), que normalmente vale 1.000.000, na computao vale: 1 M = 1024 k = 1024x1024 = 1.048.576. Portanto, 1 MB (l-se "um megabyte") so exatamente 1.048.576 bytes. Mas para efeitos prticos, podemos dizer que 1 MB aproximadamente 1 milho de bytes. O multiplicador "G" (l-se "giga"), que normalmente vale 1 bilho, na computao vale: 1 G = 1024 M = 1024x1024x1024 = 1.073.741.824. Portanto, 1 GB (l-se "um gigabyte") so exatamente 1.073.741.824 bytes, mas para efeitos prticos podemos dizer que 1 GB aproximadamente 1 bilho de bytes.
branco).
Figura 1. Cdigo de 6 bits. Por exemplo, a codificao da frase "OLA!" : X010100 X010001 X000110 X010101.
12
caracteres cujo significado so ordens de controle para perifricos. Um exemplo desse tipo de cdigos o ASCII de 7 bits (Figura 2).
ASCII uma codagem a 7 bits, mas muitos computadores manipula uma quantidade de 8 bits (byte). Portanto, os caracteres ASCII devem ser freqentemente armazenados um por byte, com o bit mais significante igual a 0. O bit extra algumas vezes usado para propsitos especficos, dependendo da aplicao. Por exemplo, algumas impressoras reconhecem um ASCII estendido, com os caracteres adicionais iniciando pelo bit mais significativo a 1. Estes caracteres habilitam a impressora a imprimir smbolos adicionais, como o alfabeto grego ou fontes do tipo itlico.
13
2.5.3 EBCDIC
O EBCDIC ( Extended Binary Coded Decimal Interchange Code ) uma codagem de caracteres de 8 bits ( Figura 3) e se trata de um padro proprietrio desenvolvido pela IBM.
Figura 3. Cdigo EBCDIC de 8 bits. O significados dos caracteres de controle do EBCDIC so:
14
15
A vantagem deste sistema em relao a outros a de possuir faixa simtrica. Por outro lado, apresenta a inconvenincia de possuir duas representaes para o nmero 0. Para 8 bits o 0 tem as seguintes representaes: 00000000 (+0) e 1000000 (-0).
Complemento de 1 (C-1)
Este sistema de representao tambm utiliza o bit mais esquerda para o sinal, correspondendo o 0 ao sinal + e o 1 ao sinal -. Para os nmeros positivos, os N - 1 bits da direita representam o mdulo (assim como no MS). O simtrico de um nmero positivo obtido pelo complemento de todos os seus dgitos (trocando 0 por 1 e viceversa), incluindo o bit de sinal. Por exemplo, supondo que exista a limitao de 8 bits (N=8 ), o valor 00101010 representa o nmero +42 e o valor 11010101 representa o nmero -42. Este mtodo tem a mesma faixa de representao para N dgitos do mtodo MC, que N-1 N-1 de -2 +1 ? X ? 2 -1. E tem a mesma desvantagem do anterior, que de ter duas representaes para o nmero 0: 00000000 (+0) e 11111111 (-0).
Complemento de 2 (C-2)
Este sistema tambm utiliza o bit mais esquerda para o sinal, correspondendo o 0 ao sinal + e o 1 ao sinal -. Para os nmeros positivos, os N-1 dgitos da direita representam o mdulo (igualmente ao MS e C-1). O simtrico de um nmero obtido em dois passos:
16
desprezando-se o ltimo transporte, se existir. Vejamos a representao em Complemento de 2 dos nmeros 10 e -10 para 8 bits:
A faixa de representao neste caso assimtrica, o que constitui o seu maior N-1 N-1 inconveniente, e dada pela frmula -2 ? X ? 2 -1
? Para o caso de 8 bits (byte), a faixa : -128 ? X ? 127 ? Para 16 bits (word), a faixa : -32768 ? X ? 32767 ? Para 32 bits (double word), a faixa : -2147483648 ? X ? 2147483647
A principal vantagem ter uma nica representao para o nmero 0. Para 8 bits, teremos:
O ltimo transporte desprezado. Portanto, o 0 e o -0 tm uma mesma representao. O mtodo C-2 o mais utilizado para representar nmeros negativos.
17
Existem quatro maneiras de representar nmeros com vrgula fixa: binrio puro, decimal, decimal no compactado, decimal compactado.
Binrio Puro
O nmero representado atravs dos mtodos vistos anteriormente. Por exemplo, considerando um computador com palavra de 32 bits que utiliza o mtodo Complemento de 2 (C-2), qual a sua faixa de representao e qual a configurao interna dos nmeros 0, 10, -10, 2147483647 e -2147483648?
? A faixa de representao : -2 ? X? 2 -1, ou ento: -2147483648 ? X? 2147483647. ? Representao de 0: 00000000000000000000000000000000 ? Representao de 10: 00000000000000000000000000001010 ? Representao de -10: 11111111111111111111111111110110 ? Representao de 2147483647: 01111111111111111111111111111111 ? Representao de -2147483648: 10000000000000000000000000000001
31 31
Decimal no Compactado
Neste sistema um nmero armazenado com um byte para cada um de seus algarismos. Cada byte contm no seu quarteto da esquerda quatro 1's denominados bits de zona, e no quarteto da direita, o algarismo em BCD (Binary-coded display - codificado em binrio ), que um nmero entre 0 e 9. Esses quatro bits so denominados bits de dgito. O quarteto da esquerda do ltimo algarismo do nmero dado representa o sinal, e pode conter 1100 para o sinal + e 1101 para o sinal - (C e D em hexadecimal, respectivamente). Por exemplo, a representao do nmero 1234 11110001 11110010 11110011 11000100, e a representao do nmero -2345 11110010 11110011 11110100 11010101.
Decimal Compactado
Cada dgito representado num quarteto (sem bits de zona), exceto o primeiro quarteto da direita que representa o sinal com os mesmos valores (C e D). Por exemplo, a representao do nmero 1234 00000001 00100011 11000100, e a representao do nmero -2345 00000010 00110100 11010101.
O valor do expoente indica que a posio real do ponto decimal quatro pontos a direita do ponto decimal indicado na frao. Esta representao equivalente a notao +4 cientfica: +.6132789 x 10 . Generalizando, os nmeros decimais ponto flutuante so representados na forma Fx10 , onde F a frao e E o expoente. Apenas a frao e o expoente so fisicamente representados em termos computacionais. A base 10 e o ponto decimal da frao so assumidos e no so mostrados explicitamente. Um nmero binrio ponto flutuante representado de uma maneira similar, exceto que ele usa a base 2 para o expoente. Por
E
18
exemplo, o nmero binrio +1001.11 representado por uma frao de 8 bits (01001110) e um expoente de 6 bits (000100). Um nmero ponto flutuante dito normalizado se o dgito mais significativo da frao no zero. Por exemplo, a frao decimal 0.350 normalizada, mas 0.0035 no . Nmeros normalizados fornecem a melhor preciso para nmeros ponto flutuante. O intervalo representado por um ponto flutuante determinado pelo nmero de dgitos do expoente e a preciso pelo nmero de dgitos da frao. Para estudar as propriedades deste mtodo de representao de nmeros, considere uma representao R, que comporta uma frao sinalizada de trs dgitos no intervalo 0,1? |f| ? 1 (ou zero) e um expoente sinalizado de dois dgitos. Esta representao permite expressar nmeros nas seguintes regies
? Nmeros negativos entre -0,999*10 ? Nmeros positivos entre +0,100*10 ? Zero
+99
at -0,1*10
-99
.
+99
-99
at +0,999*10
Os nmeros fora desta faixa no podem ser representados. Os nmeros em vrgula flutuante expressos segundo a representao R podem ser utilizados para modelizar os nmeros reais da matemtica, mas ele impem alguns problemas: os nmeros reais fora das faixas apresentadas acima no podem ser representados. Se por exemplo a soma de dois nmeros positivos ultrapassar a +99 +0,999*10 , tem-se o que se chama de overflow (ultrapassagem do valor superior). Este erro devido a natureza finita dos computadores. No caso de se somar dois +99 nmeros negativos e o resultado ultrapassar -0,999*10 , tem-se o que chamado de underflow. Uma outra diferena importante entre os reais e os ponto flutuante sua densidade. Entre dois nmeros reais distintos, x e y, existe sempre um outro nmero real, to prximo que sejam x e y. Esta propriedade vem do fato que para todo par de nmeros reais distintos x e y, z=(x+y)/2 um nmero real, de valor intermedirio entre x e y. Os nmeros reais formam uma continuidade. Ao contrrio, os nmeros em vrgula flutuante no formam uma continuidade; no caso da representao R acima, no se pode expressar mais que 179100 nmeros positivos diferentes, 179100 nmeros negativos e 3 0, ou seja ao total 358201 nmeros. Por exemplo, +0,100*10 dividido por 3 no pode ser expresso exatamente no nosso sistema de representao. Ns tomamos o nmero mais prximo que se pode representar: realizado o arredondamento.
19
O padro IEEE define trs formas de representao de ponto flutuante: a preciso simples (32 bits), preciso dupla (64 bits) e a preciso estendida (80 bits). Este ltimo formato destinado sobretudo para reduzir os erros de arredondamento em clculos; eles so encontrados principalmente nas unidades de clculo flutuante. O processador Pentium III suporta estes trs precises. Os formatos de simples e dupla preciso utilizam o binrio para codificar a frao e o expoente. Eles so representados na Figura 6.
1 8 23 (a)
sinal
Expoente
Frao
11
52
(b)
Figura 6. Formato dos nmeros flutuante segundo o padro IEEE: (a) Preciso simples (b) Preciso dupla Como para todos os nmeros, cada formato comea com um bit de sinal, que vale 0 para os nmeros positivos e 1 para os nmeros negativos. Em seguida vem o expoente, codificado em excedente a 127 para a preciso simples e em excedente a 1023 para a preciso dupla. Os expoentes variam de 0 a 255 ou 2047. Os nmeros tendo como expoente os valores mnimos ou mximos acima tem uma especificidade prpria e no so normalizado como os outros. Isto ser visto mais adiante. Enfim, o ltimo componente do formato, a frao, codificada em binrio de 23 ou 52 bits. Uma frao dita normalizada quando o primeiro bit que segue a vrgula vale 1. Considerando que o primeiro bit da frao sempre igual a 1, o padro define uma frao cuja significao difere um pouco das fraes habituais: uma frao IEEE compreende um bit pressuposto a 1, que se chama bit escondido, aps 23 ou 52 bits de valor. A vrgula tambm implcita. O valor numrico da frao, para a preciso simples, 0 -1 -2 -3 -4 -5 -6 calculado da seguinte forma: 1x2 + b22x2 + b21x2 + b20x2 + b19x2 +b18x2 +b17x2 + -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 b16x2 + b15x2 + b14x2 + b13x2 + b12x2 + b11x2 + b10x2 + b9x2 +b8x2 +b7x2 + -17 -18 -19 -20 -21 -22 -22 b6x2 + b5x2 + b4x2 + b3 0x2 + b2x2 + b1x2 + b0x2 . Assim, os nmeros reais associados aos pontos flutuantes de preciso simples so calculados da seguinte S (E - 127) maneira: (-1) x 2 x (1,F). Quando todos os bits so 0, seu valor decimal igual a 1,0. Se todos os bits so a 1, o valor da frao igual a 2,0. Para evitar ambigidade entre os formatos convencionais de representao de frao, no padro IEEE diz-se pseudo-frao e no frao. Assim, os nmeros normalizados tem uma pseudo-frao variando em 1? s ? 2. Alguns exemplos de nmeros flutuantes na preciso simples so apresentados abaixo:
? 0,5 = (-1) x 2
0 -1
x (1,0) = 0,5x1
? ? ? ? ? ? 1=
sinal: 0 expoente: 127-1 = 126 = 01111110 frao: 1 = 1 00000000000000000000000 (primeiro 1 implcito) 0,5 =00111111000000000000000000000000 0,5 = 3F0000000H 0 0 0 (-1) x 2 x (1,0) = 1x2
? sinal: 0 ? expoente: 127+0 = 127 = 01111111 ? frao: 1 = 1 00000000000000000000000 (primeiro 1 implcito) ? 1 =00111111100000000000000000000000 ? 1 = 3F8000000H 0 1 0 ? -1,5 = 1x2 = (-1) x 2 x (1,5) ? sinal: 1
20
? ? ? ?
expoente: 127+0 = 127 = 01111111 frao: 1 = 1 10000000000000000000000 (primeiro 1 implcito) -1,5 =10111111110000000000000000000000 -1,5 = BFC000000H
Underflow
O que fazer quando o resultado de um clculo inferior ao menor nmero ponto flutuante normalizado que se pode representar? Existem duas solues:
? dizer que o nmero vale zero (arredondamento), sem outra indicao ? gerar um desvio para causar uma ultrapassagem da borda inferior (underflow)
Nenhuma das abordagens acima satisfatria. por isso que o conceito de nmero no normalizado aparece no padro IEEE. Os nmeros no normalizados tem seus expoentes iguais a zero e a frao no mais normalizada. Isto significa que no h mais o bit implcito a 1. A frao codificada unicamente sobre 23 ou 52 bits, ela evolui ento de 0 a 1 (e no de 1 a 2 como na pseudo-frao). O menor nmero que se pode representar em preciso simples tem um expoente igual a -126 1 e a frao constituda de zeros, isto o nmero 1,0*2 . O maior nmero no normalizado tem seu expoente que todo a zero (-127), e todos os bits da frao iguais a -127 1, isto o nmero 0,9999999*2 . O menor nmero no normalizado tem uma frao em preciso simples com 22 bits a zero e um bit a 1, o mais a direita. Neste caso, o -127 -23 -150 expoente representa 2 e a frao 2 , que corresponde ao nmero 2 . assim que os nmeros no normalizados existem afim de permitir uma ultrapassagem gradual para baixo para as operaes produzindo resultados inferiores ao menor nmero normalizado, em vez de substitu-los por zero.
Representao do zero
Na representao IEEE existem duas representaes para o zero: +0 e -0. Seus bits de sinal valem 0 ou 1. Seus expoentes valem 0 e todos os bits da frao so iguais a zero. Assim, na preciso simples, o valor zero corresponde a :
? 0 00000000 00000000000000000000000 ? 1 00000000 00000000000000000000000
Overflow
As ultrapassagens de borda a esquerda so difceis de serem geradas e no h nenhuma combinao particular de bits para represent-los. Uma representao especfica reservada ao valor do maior nmero possvel que se possa representar. Dizse que infinito. O expoente deste nmero composto de bits a 1, sua frao composta de bits a zero. Ou seja, o infinito representado por 0 ou 1 11111111 00000000000000000000000
21
Este nmero particular pode ser visto como um operando sobre o qual se aplicam o conjunto de regras de clculo sobre os grandes nmeros (ou nmeros infinitos). Por exemplo, a soma de um nmero infinito com um nmero qualquer resulta em infinito. Da mesma maneira, a diviso de um nmero finito pelo infinito resulta em zero e a diviso de um nmero finito por zero resulta infinito. O que se pode dizer da diviso de um nmero infinito por um nmero infinito? Neste caso o resultado indefinido. Uma representao particular foi definida para isto: NaN (Not a Number ), que igual a 0 ou 1 11111111 Toda configurao menos todos a zero
Presso de ar Amplitude
tempo
Perodo
Figura 7. Forma de onda Como a onda de som ocorre naturalmente, ela nunca perfeitamente suave ou uniformemente peridica como a forma de onda da Figura 7.
22
Universalidade de representao
Sistemas computacionais manipulam apenas dados digitais. Quando udio, imagens, vdeos esto na forma digital, eles podem ser facilmente armazenados e manipulados (processados, transmitidos e apresentados) pelos sistemas computacionais tal qual outros dados. Desta forma, como todas as mdias de apresentao (textos, imagens, som, etc.) so codificadas numa nica forma, elas podem ser manipuladas de uma mesma forma e pelo mesmo tipo de equipamento. Alm disso, informaes de udio e vdeo digitalizadas so facilmente integradas com outros tipos de dados e so de fcil interao com mdia digitais usando sistemas computacionais.
Processamento
Informaes de udio e vdeo digitais so processadas, analisadas, modificadas, alteradas, ou complementadas por programas de computador tal qual outros dados. A seguir so apresentados alguns exemplos de processamentos possveis graas a representao digital de informaes de udio e vdeo [Fluckiger, 95]:
? reconhecimento de contedos semnticos (voz, escrita a mo, formas e padres); ? estruturas
de dados, ligaes usando apontadores entre elementos informaes podem ser criados para rpida obteno de informaes; apenas) ou documentos multimdia so possveis;
de
? editores poderosos com funes cut -and-paste para criar monomdia (p.e. som
23
como a digitalizao de velhos discos de vinil para criar CDs de alta qualidade; ? informaes sintetizadas e vdeos podem ser mixadas
Qualidade
Sistemas digitais so mais confiveis. Sinais digitais so mais tolerantes a rudos e interferncias que os analgicos. Na forma analgica, o valor do sinal alterado se h rudos ou interferncias. Este erro acumulativo de um estgio para outro do sistema. Na forma digital, h apenas dois nveis de sinal: alto (1) ou baixo (0). Se o erro causado pela interferncia ou rudo abaixo de um certo limiar, o sinal pode ser reconhecido corretamente. Alm disso, em cada estado do processamento digital ou transmisso, o sinal digital so reconstrudos, assim erros no so acumulativos.
Segurana
Se segurana na comunicao necessria, a representao digital da informao facilita a criptografia.
Armazenamento
A utilizao unicamente de mdias digitais permite a existncia de um dispositivo nico de armazenamento de dados para todas as mdias, sendo que diferenas podem estar ligadas a requisitos de tamanho. Imagens e vdeos necessitam de uma maior capacidade de armazenamento que textos ou grficos. Som necessita de uma capacidade de armazenamento um pouco menor que imagens. Dispositivos digitais apropriados podem ser necessrios, tal como CD-ROMs (Compact Disk-Read Only Memories ).
Transmisso
Qualquer sistema de comunicao de dados podem ser (potencialmente) utilizado para a transmisso de informaes de udio e vdeo digitais. Uma nica rede de comunicao suportando a transmisso digital das informaes multimdia possvel (Rede Digital de Servios Integrados). A este nvel existem dificuldades causados pelos requisitos de certas aplicaes, em particular aquelas que necessitam o respeito da fidelidade de dependncias temporais dos sinais digitais. A vantagem da transmisso digital em relao a transmisso de sinais analgicos que ela menos sensveis a rudos, a deteco de erros, recobrimentos e a criptografia so facilitadas.
espao. Eles so descritos por uma funo dependente apenas do tempo (s=f(t)), dependente apenas do espao (s=f(x,y,z)), ou dependente do tempo e do espao (s=f(x,y,z,t)). Sinais analgicos so produzidos por sensores que detectam fenmenos fsicos (que simulam os sensos humanos) e os transformam em uma medida que toma a forma de uma corrente ou tenso eltrica. A preciso ditada pelas caractersticas dos sensores. ? Sinais digitais so seqncias de valores dependentes do tempo ou do espao codificados no formato binrio. Para a converso de sinais analgico em digital necessrio a realizao de trs passos: amostragem, quantificao e codificao. A figura 1 ilustra o processo de digitalizao de um sinal analgico no domnio do tempo.
24
Amostragem
Nesta etapa um conjunto discreto de valores analgicos amostrado em intervalos temporais (p.e., para sons) ou espaciais (p.e., para imagens) de periodicidade constante, como apresentado na figura 1a. A freqncia de relgio chamado de taxa de amostragem ou freqncia de amostragem. O valor amostrado mantido constante at o prximo intervalo. Isto realizado atravs de circuitos sampling and hold. Cada uma das amostras analgica em amplitude: ele tem qualquer valor em um domnio contnuo. Mas isto discreto no tempo: dentro de cada intervalo, a amostra tem apenas um valor. Segundo o teorema de Nyquist: se um sinal analgico contem componentes de freqncia at f Hz, a taxa de amostragem deve ser ao menos 2f Hz. Na prtica, esta freqncia um pouco maior que 2f Hz. Por exemplo, a taxa de amostragem de CDaudio de 44,1 kHz, e dos tapes de udio digital (DAT) de 48kHz para cobrir uma faixa audvel de freqncia de 20 kHz. Outro exemplo, os componentes principais de freqncia da voz humana esto dentro de 3,1 kHz, com isto os sistemas de telefonia analgicos limitam o sinal transmitido a 3.1 kHz; comum usar uma freqncia de amostragem de 8 kHz para converter este sinal em digital.
Quantificao
O processo de converter valores de amostras contnuas em valores discretos chamado de quantificao. Neste processo ns dividimos o domnio do sinal em um nmero fixo de intervalos. Cada intervalo tem o mesmo tamanho e recebe um nmero. Na figura 1c estes intervalos so numerados de 0 a 7. A cada amostra dentro de um intervalo atribudo o valor do intervalo. O tamanho deste intervalo de quantificao chamado de passo de quantificao. A tcnica que utiliza o mesmo passo de quantificao chamada modulao PCM ( Pulse Coded Modulation ). Algumas vezes, nem todos os valores amostrados so retidos aps a quantificao. No caso ilustrado pela figura 1c, todos os valores amostrados foram retidos.
Amplitude
(a)
Tempo
(b) Tempo
7 6 5 4 3 2 1 0
(c)
Tempo (d) 010 110 110 010 011 110 111 110 100
Figura 8. Converso A/D [Lu, 96]: (a) sinal analgico; (b) pulsos de amostragem; (c) valores amostrados e intervalos de quantificao; (d) seqncia digital
Codificao
A codificao consistem em associar um conjunto de dgitos binrios, chamado de codeword, a cada valor quantificado. No caso da figura 1d, oito nveis de quantificao so
25
usados. Estes nveis podem ser codificados usando 3 bits, assim cada amostra representada por 3 bits. Em algumas aplicaes de telefonia, a digitalizao da voz humana utiliza 16 bits por 16 amostra, que ento leva a 2 ou 65.536 passos de quantificao. Em outras aplicaes de compresso de voz, algumas vezes, apenas 8 quantificaes por bits so necessrios, produzindo apenas 256 passos de quantificao.
Taxa de bits
Taxa de bits definida como o produto entre taxa de amostragem e o nmero de bits usados no processo de quantificao. Por exemplo, supondo uma freqncia de 8k Hz e 8 bits por amostra, a taxa de bits necessria telefonia igual a 8000x8 = 64 kbps.
Sinal Digital
Figura 9.
2.7.4 udio
udio causado pelo distrbio da presso de ar que alcana o tmpano. Quando a freqncia do distrbio de ar est na faixa de 20 Hz a 20.000 Hz ele audvel. A maioria dos sistemas trabalham com esta faixa de freqncia. Outro parmetro usado para a medio do som a amplitude (medido em decibis - dB), variao que causa o som leve ou pesado. Por exemplo, o limiar da dor de 100 a 120 dB. A onda sonora uma onda contnua no tempo e amplitude. A onda apresentada na Figura 7 pode ser um exemplo de onda sonora.
26
Aplicaes CD-Audio DAT Telefone Digital Rdio digital, long play DAT
No de canais 2 2 1 2
Para a apresentao do udio digitalizado necessrio realizar a transformao de uma representao artificial do som em uma forma de onda fsica audvel pelo ouvido humano. Para isto so utilizados Conversores Digital para Analgico (CDA). Normalmente os conversores CAD e CDA so implementados em uma nica placa. Um exemplo de placa de audio Creative Sound Blaster AWE64, possibilitando at 16 bits por amostras, produzindo udio qualidade CD.
27
cor so focalizados em sensores de vermelho, verde e azul, que convertem estes trs componentes em sinais eltricos separados. Em um monitor colorido, h 3 tipos de fsforos fluorescentes que emitem luzes vermelha, verde e azul quando tocadas por 3 feixes de eltrons. Estes fsforos so arranjados de tal forma que cada posio do vdeo tem 3 tipos de fsforo. A mistura da luz emitida destes 3 fsforos produz um ponto de cor. A viso acima descreve o sinal RGB. Na realidade, o sinal analgico pode ser gerado da seguinte maneira [Frana Neto, 98]:
? Sinal RGB (red, green, blue) - O sinal separado pelas cores bsicas, com isso
possvel ter uma imagem mais pura. Ele utilizado em cmeras e gravadores profissionais, imagens geradas por computador, etc. ? Sinal de vdeo composto colorido - os sinais das cores (RGB) so codificados em um nico sinal seguindo um determinado padro (NTSC, PAL-M, SECAM, etc) ; ? Sinal de luminncia e crominncia ou Y/C (S-video) - o sinal composto por duas partes, a luminncia e a crominncia; como isso a imagem tem uma melhor qualidade do que no vdeo composto. Muito usado por vdeos SVHS, laser disc, DVD e outros aparelhos que geram imagens de boa qualidade (acima de 400 linhas);
Imagens Digitais
Imagens no so revisveis porque seu formato no contm informaes estruturais. Elas podem resultar de capturas do mundo real (via escaneamento de uma pgina impressa ou foto, cmeras digitais) ou elas podem ser sintetizadas pelo computador (via programas de paint , captura da tela, converso de grficos em imagens bitmap). Aps digitalizadas, as imagens podem ser manipuladas com editores de imagens (por exemplo, Photoshop), que no produzem documentos que retm a estrutura semntica.
Formatos de Imagens
Imagens no computador so representadas por bitmaps . Um bitmap uma matriz bidimensional espacial de elementos de imagem chamados de pixeis. Um pixel o menor elemento de resoluo da imagem, ele tem um valor numrico chamado de amplitude. O nmero de bits disponveis para codificar um pixel chamado de profundidade de amplitude (ou de pixel). Exemplos tpicos de profundidade de pixel 1 (para imagens preto&branco), 2, 4, 8, 12, 16 ou 24 bits. O valor numrico pode representar um ponto preto e branco, um nvel de cinza, ou atributos de cor (3 valores) do elemento de imagem em imagens coloridas. O nmero de linhas da matriz de pixeis (m) chamado de resoluo vertical da imagem, e o nmero de colunas (n) chamado de resoluo horizontal. Denominamos resoluo espacial, ou resoluo geomtrica, ao produto m x n da resoluo vertical pela resoluo horizontal. A resoluo espacial estabelece a freqncia de amostragem final da imagem. Dessa forma, quanto maior a resoluo mais detalhe, isto , altas freqncias, da imagem podem ser captadas na representao matricial. A resoluo espacial dada em termos absolutos no fornece muita informao sobre a resoluo real da imagem quando realizada em dispositivo fsico. Isso ocorre porque ficamos na dependncia do tamanho fsico do pixel do dispositivo. Uma medida mais confivel de resoluo dada pela densidade de resoluo da imagem que fornece o nmero de pixels por unidade linear de medida. Em geral se utiliza o nmero de pixels por polegada, ppi ("pixels per inch") tambm chamada de dpi ("dots per inch").
28
Formatos bitmap necessitam mais capacidade de armazenamento do que grficos e textos. Como bitmaps ignoram a semntica, duas imagens de mesma dimenso (altura e largura) ocupam o mesmo espao. Por exemplo, um quadrado ou uma foto digitalizada com dimenses idnticas ocupam o mesmo espao. Os grficos, como eles consideram a semntica, ocupam menos espao.
taxas maiores ou iguais a 25 fps devem ser utilizadas. A tabela abaixo resume as principais freqncias de quadro utilizadas atualmente.
Fps <10 10 16 >16 24 30/25 60 Comentrios Apresentao sucessiva de imagens Impresso de movimento mas com sensao de arrancos Efeito do movimento comea Cinema Padro de TV americana/europia Padro HDTV
transmisso. Isto pois maior a taxa, maior o nmeros de quadros que devem ser enviados. Portanto a rede utilizada pode ditar a freqncia de quadros a ser utilizada.
? Problema de freqncia de restaurao (refreshing) de tela: a tela deve ser
restaurada 50 vezes por segundo para evitar tremulaes. Mas se a freqncia de quadros for 50 fps, a largura de banda necessria aumentar substancialmente. Para evitar problemas de tremulao utiliza-se vdeos entrelaados, onde reduz-s e pela metade o nmero de quadros requeridos por segundo, ou seja, 25 fps.
Grficos Animados
O termo grfico animado ou animao grfica utilizado para referenciar apresentao sucessiva de objetos visuais gerados pelo computador em uma taxa suficiente para dar a sensao de movimento e onde cada atualizao comutada de uma descrio abstrata em tempo de apresentao. A principal vantagem das animaes grficas que elas so mais compactas: elas so descritas por um conjunto de objetos com diretivas temporais (em outras palavras um programa a ser executado em tempo de apresentao). Outra vantagem que animaes grficas so revisveis. Existe uma desvantagens: necessrio um poder de processamento suficiente para apresentao.
29
Propriedades da Cor
A luz visvel uma forma de radiao eletromecnica que tem um espectro de comprimento de onda variando aproximadamente de 400 nm a 780 nm. Uma luz de diferente comprimento de onda produz uma sensao de cor diferente (p.e. violeta de 380 a 450 mn, azul de 450 a 490 nm, verde de 490 a 560nm). As trs propriedades fsicas bsicas da cor so: luminncia (brilho), nuana (cor) e saturao (puridade).
True Color
No True Color, cada pixel da imagem representado por um vetor de 3 componentes de cores (RGB) com um certo nmero de bits para representar cada componente de cor (resoluo de cor). Com isso, quanto maior for a resoluo de cor mais qualidade teremos para representar as cores de cada pixel. Geralmente o nmero de bits para cada componente RGB igual, ou seja quando temos um pixel sendo representado por 9 bits, usamos 3 bits para cada componente (3-3-3). Mas pode ser feito uma representao com diferentes valores para as componentes, por exemplo uma representao 8 bits/pixel, pode ser usado 3 para componentes R, 3 para G e 2 para B (3-3-2), tal representao em um byte comumente usado e tira proveito do fato que a percepo humana da componente azul menos sensvel que as outras componentes. O nmero de bits para representar cada componente fornece a quantidade de cores que podem ser representados por essa componente. Ou seja, se n a resoluo de cor n ento a quantidade de nveis possveis de 2 nveis. Por exemplo, uma imagem colorida representada por 12 bits/pixel, com 4 bits para cada componente RGB. Temos 4 ento: 2 =16 nveis para cada componente de cor RGB, o que nos possibilita representar 12 at 4.096 cores diferentes (16 x 16 x 16 = 4.096) , o que equivalente 2 = 4.096.
30
O padro com 24 bits/pixel o mais usado para representar com fidelidade as cores, pois o nmero de cores que podem ser representadas com essa resoluo de cores maior do que a viso humana pode reconhecer.
Cores Indexadas
Nas cores indexadas, cada pixel representado por um ndice que aponta para uma tabela de cores (paleta) que contem as informaes sobre as cores (Figura 10). Temos ento um nmero de cores que podem ser representadas, que o nmero de entradas na paleta. A paleta por sua vez, tem em geral 24 bits para representar cada cor no formato RGB. Dessa forma podemos representar n cores de um conjunto com mais de 16 milhes de cores. Nesse caso, para representar esse tipo de imagem, as informaes das cores da paleta devem constar da estrutura alm das dimenses e seqncia de ndices.
Figura 10. ndice e paleta de cores O nmero de cores e a resoluo de cor da paleta podem variar. Os dois padres mais usados so apresentados na tabela abaixo.
Bits/pixel Padro
4 bits/pixel 8 bits/pixel
Cores fixas
Nas cores fixas, cada pixel representado por um ndice que aponta para uma tabela de cores fixa. Esse sistema geralmente usado quando o dispositivo no permite a representao de muitas cores, como no caso de placas de vdeos antigas ou padres de cores (padro de cores do MS Windows 3.x, 16 cores). O nmero de bits para representar um pixel depende do nmero de cores fixas, ou seja para representar por exemplo 16 cores, so necessrios 4 bits/pixel.
31
humana, ou seja representar uma imagem com 256 nveis suficiente para a maioria das aplicaes.
Imagens Binrias
As imagens binrias so imagens com dois nveis, como preto e branco. So muito usadas por dispositivos de impresso e para representar imagens de documentos monocromticos. Para representar um pixel de uma imagem binria, como o prprio nome diz, necessrio apenas 1 (um) bit. Essa informao suficiente para representar cada pixel, ou seja temos uma representao de 1 bit/pixel. Em alguns casos, temos uma informao extra sobre a cor de cada informao, a cor para o bit com valor 0 (zero) e a cor para o bit de valor 1 (um). Essa informao de cor geralmente representada em 24 bits/cor no padro RGB, podendo porm ser representada de outras formas.