Você está na página 1de 53

Univesidade

Católica de
Moçambique
FACULDADE DE GESTÃO DE TURISMO E
INFORMÁTICA
MÓDULO : FUNDAMENTOS DE TECNOLOGIAS DE
INFORMAÇÃO
TEMA: ARMAZENAMENTO DE DADOS
ELABORADO POR: PASCOAL CAMORAI
Objectivos da aula

 Listar diferentes tipos de dados


 Descrever como diferentes tipos de dados são armazenados
dentro do computador como um padrão de bits.
 Perceber como é feito o armazenamento de números.
 Perceber como é feito o armazenamento de texto.
 Perceber como é feito o armazenamento de áudio
 Perceber como é feito o armazenamento de imagem e vídeo.
1.1. Tipos de dados
 Os dados, nos dias de hoje, aparecem em diferentes formatos podendo ser
números, texto, áudio, imagem e vídeo.

 As pessoas devem ser capazes de processar diferentes tipos de dados.


 Os programas de engenharia usam os computadores maioritariamente para
processar números: fazer operações aritméticas, resolver equações
algébricas, encontrar soluções de equações diferenciais e por ai adiante.
 Por outro lado, um programa de processamento de texto, maioritariamente
processa texto, formata o texto, move, apaga e por ai adiante.
1.1. Tipos de dados (Cont.)

 O computador também processa dados em áudio.


Podemos tocar música no computador e podemos gravar
som como forma de dados.
 Um programa que processa imagem usa o computador
para manipular imagens: criar, partilhar, expandir, rodar
e muito mais.
 Por último, um computador, não é usado apenas para ver
filmes mas também pode criar efeitos especiais que são
vistos em filme.
1.1.1 Dados no computador

 Todos dados são transformados em uma representação


uniforme quando são armazenados no computador e
transformados na sua forma original quando recuperados.
Esta representação universal é denominada padrão de bits
(bit pattern).
a) Bits

 Um bit (digito binário) é a menor unidade de dados que


pode ser armazenada num computador e tem o valor de 0 ou
1. O bit representa o estado do dispositivo que pode ter um
dos dois estados.
 Por exemplo um interruptor (switch) pode estar ligado ou
desligado. A convenção estabelecida para representar os
estados “ligado” é 1 e “desligado” é 0. Desta forma um
interruptor pode armazenar 1 bit de informação.
b) Padrão de bits

 Para representarmos diferentes tipos de dados nós usamos o padrão de


bits como sequência ou, como é alguma vezes, chamado string de bits .
 Exemplo:

1000101110111011

 O exemplo acima mostra uma combinação de 16 bits. Isto é uma


combinação de 16 “0”s e “1”s. Isto quer dizer que se precisamos de
armazenar um padrão de bits constituído por 16 bits necessitaremos de
16 interruptores eletrónicos.
 Se precisarmos de armazenar 1000 padrões de bits, com um tamanho de
16 bits necessitaremos de 16000 interruptores.
 Por tradição um conjunto de 8 bits chama-se byte.
 Algumas vezes o termo word é usado para referir-se a um padrão de bits.
Armazenamento de diferentes
tipos de dados(imagem)
Armazenamento diferentes
tipos de dados
 Se estivermos a usar um editor de textos (processador word)
o caracter “A” digitado no teclado pode ser armazenado
como 8 padrões se bit (01000001). Os mesmos 8 padrões de
bit podem representar o numero “65” se estivermos a usar
uma rotina matemática. Da mesma forma, o mesmo padrão
pode representar parte de uma imagem, parte de som, ou
parte duma cena dum filme. A memoria do computador
armazena todos eles sem reconhecer que tipo de dados esse
padrão representa.
Detenção de erros

 Outro problema relacionado aos dados é a detenção e ocorrência


de erros durante a transmissão ou armazenamento dos dados.
 Quando os dados são transferidos de um local para outro ou
movidos de um dispositivo para outro, a precisão dos dados deve
ser verificada.
 Para a maioria das aplicações, um sistema deve garantir que os
dados recebidos são idênticos aos dados transmitidos.
 Algumas aplicações, por outro lado, podem tolerar um pequeno
nível de erro. Por exemplo, erros aleatórios em áudio ou vídeo
transmissões podem ser toleráveis, mas quando transferimos
texto, esperamos um nível muito alto de precisão.
 Erros na transmissão de dados e erros devido à corrupção de
dados no armazenamento são tratados da mesma maneira.
Compressão de dados

 Para ocupar um espaço menor na memória os dados são


normalmente comprimidos no computador.
 A compressão de dados é um tema muito vasto que não
iremos discutir em detalhes.
 Nos anos mais recentes as tecnologias estão a mudar a
forma de transmitir e armazenar dados. Por exemplo os
cabos de fibra óptica permitem-nos transmitir dados em alta
velocidade, os DVD’s permitem-nos armazenar grandes
quantidades de dados em meios físicos pequenos para
armazenamento.
Compressão de dados

 Contudo como nos outros aspectos da vida a demanda na


procura vem, sempre, aumentando.
 Hoje em dia, nós queremos baixar muito mais dados num
período muito reduzido de tempo. Nós queremos, também,
armazenar muito mais dados num espaço pequeno de
armazenamento.
 Comprimindo dados pode reduzir o montante de dados que são
enviados ou armazenados eliminando parcialmente a
redundância inerente.
 Redundância é criada quando produzimos dados.
 Através da compressão de dados fazemos a transmissão e
armazenamento com mais eficiência e ao mesmo tempo
preservamos a integridade dos dados.
2. Armazenamento de números
 Um número é mudado para o sistema binário antes de ser
armazenado na memória do computador. Contudo, existem
dois problemas que precisam de ser resolvidos.
1. Como armazenar o sinal dum número
2. Como mostrar o ponto decimal.
Existem variadas formas para resolver o problema do sinal. Para
o ponto decimal os computadores usam duas formas diferentes:
ponto fixo (fixed-point) e ponto flutuante (floating-point).
 O ponto fixo é usado para armazenar números como um
número inteiro – portanto, sem a parte fracional.
 O ponto flutuante é usado para armazenar números reais –
portanto, com a parte fracional
2.1. Armazenamento de
números inteiros
 Os números inteiros (integer) são números sem a parte
fracionária.
 Exemplo: 134 e -125 são números inteiros, enquanto que
134.23 e -0.235 não são números inteiros. Um número
inteiro pode ser pensado como um número no qual a
posição do ponto decimal é fixo: o ponto decimal está a
direita do bit menos significante (mais à direita).
 Por essa razão a representação do ponto fixo é usado para
armazenar números inteiros.
Armazenamento de números
inteiros
 Contudo, o usuário (ou programa) poderá armazenar um
número inteiro como um número real com a parte
fracionária definida como zero.
 Isto pode acontecer, por exemplo, se um número for muito
grande para ser armazenado num tamanho definido como
inteiro. Para usar a memoria do computador com maior
eficiência os números não assinados e assinados inteiros são
guardados no computador de formas diferentes.
Representação não assinada

 Um número inteiro não assinado é um número que nunca


poderá ser negativo e pode ser 0 (zero) ou um valor
positivo. O seu raio ou alcance encontra-se entre zero(0) e
mais infinito (+).
 Contudo, como nenhum computador pode representar todos
os números inteiros nesse intervalo, muitos computadores
definem uma constante chamada número inteiro não
assinado, que tem o valor (2n-1) onde n é número de bits
alocados para representar um número inteiro não assinado.

Armazenamento de número
inteiro não assinado

 Para um dispositivo de entrada armazenar um número


inteiro não assinado segue os seguintes passos:
 O número inteiro é transformado num número binário.
 Se o número de bits for menor que n, 0s (zeros) são
adicionados a esquerda do número binário inteiro de forma
que no total tenha n bits. Se o número de bits for maior que
n o número inteiro não poderá ser armazenado. A condição
referida como transbordo (overflow) irá ocorrer.
Exemplo 1:
1. Armazenar 7 em um local de memória de 8 bits.
Solução:
 Primeiro transforma o número inteiro 7 para número
binário, (111)2.
 Adiciona cinco 0s a esquerda para perfazer um total de 8
bits (00000111)2
 O número inteiro é armazenado no local da memória.
 Note que o número inteiro 2 foi usado apenas para enfatizar
que se trata dum sistema binário, mas que esse número
inteiro subscrito não é armazenado no computador.
Exemplo 2:
2. Armazenar o número inteiro 258 num local da memória de
16 bits.
Solução:
 Primeiro, mudar o número inteiro para binário,
(100000010)2
 Adicionar zeros (0s) para perfazer um total de 16 bits:
(0000000100000010)2
 O número inteiro é armazenado no local da memória com
16 bits.
Recuperação de números
inteiros não assinados
 Um dispositivo de saída recupera uma sequência (string)
de bits na memória como um padrão de bits e converte para
um número inteiro decimal não assinado.
Exemplo:
O que é retornado de um dispositivo de saída quando ele
recupera uma sequência de bits 00101011 armazenado na
memória como um número inteiro não assinado.
Solução:
Usando os procedimentos mostrados em capítulos anteriores da
conversão de binário para decimal o número binário obteremos
o número inteiro não assinado 43.
Estouro (overflow)
 Devido a limitações de tamanho - o número alocado de bits - o
intervalo de números inteiros que pode ser representado é limitado.
Num local de memória de n-bits nós podemos armazenar um número
inteiro não assinado entre 0 e 2n-1.
 A figura que segue mostra o que acontece quando tentamos segurar
um número que seja maior que 24 – 1= 15 num local de memória que
pode armazenar apenas 4 bits.
 Esta situação denominada estouro (overflow) acontece quando, por
exemplo, armazenamos 11 num local de memória e tentar adicionar
9 ao número inteiro. O número minímo de bits que precisamos para
representar 20 decimal é de 5 bits.
 Em outras palavras, 20 =(10100)2,, então o computador deixa cair o
bit mais à esquerda e mantém os quarto bits mais a direita (0100)2
 As pessoas ficam surpreendidas quando obtém-se 4 em vez de 20.
Estouro (overflow)

 Estouro em números inteiros não assinados.


Aplicação de números inteiros
não assinados
 A representação de números inteiros não assinados pode
melhora a eficiência do armazenamento porque nós não
precisamos de armazenar o sinal do número inteiro. Isto
quer dizer que a alocação inteira dos bits pode ser usada
para armazenar o número inteiro.
 A representação inteiro não assinada pode ser usada sempre
que não precisamos de um numero inteiro negativo.
 A lista que se segue mostra alguns casos:
Aplicação de números inteiros
não assinados
 Contagem: quando contamos não precisamos de números
negativos. Começamos a contar a partir de 1 ( algumas
vezes do zero) e seguindo em adiante.
 Endereçamento: Alguns programas de computadores
armazena o endereço da localização da memoria dentro de
outra localização da memória. Os endereços são números
inteiros positivos começando do 0 (primeiro endereço da
memória ) e a subir em diante com um número inteiro
representando o total da capacidade da memória .
Aplicação de números inteiros
não assinados
 Armazenando outro tipo de dados: outros tipos de dados
(texto, imagens, áudio e vídeos ), conforme já tínhamos
discutido brevemente, são armazenados como um padrão de
bits que podem ser interpretados como números inteiros não
assinados.
Armazenamento de texto

 A secção do texto, em qualquer linguagem, é uma sequência


de símbolos que representam uma ideia na linguagem. Por
exemplo, a língua inglesa usa 26 símbolos (A, B, C, …,Z)
para representar letras maiúsculas, 26 símbolos (a, b, c, …,
z) para representar letras minúsculas (0,1, 2,…,9) para
representar caracteres numéricos (números não reais –
números são tratados separadamente conforme tínhamos
discutido anteriormente) e os símbolos são usados para
alinhamento e legibilidade do texto.
Armazenamento de áudio

 Áudio é uma representação de som ou música. Áudio por


natureza, é diferente de texto que discutimos anteriormente. Texto
é composto de entidades contáveis (caracteres): podemos contar o
número de caracteres no texto.
 Texto é um exemplo de dados digitais. Pelo contrário, áudio não é
contável. Áudio é uma entidade que muda com o tempo – apenas
podemos medir a intensidade do som em cada momento.
 Quando nós discutimos o armazenamento de áudio na memória
do computador, nós queremos dizer armazenamento da
intensidade do sinal de áudio, tal como sinal do microfone durante
um período de tempo: 1 segundo, 1 hora.
Armazenamento de áudio

 Áudio são um exemplo de dados analógicos. Mesmo se


formos capazes de medir todos valores num período de
tempo, não podemos armazena-los na memória do
computador, pois precisaríamos de um número infinito de
endereços de memória. A figura que se segue mostra a
natureza do sinal analógico.
Armazenamento de áudio

Quantização
 O valor medido para cada amostra é um número real. Isso
significa que podemos armazenar 40.000 valores reais para
cada segundo na amostra. No entanto, é mais simples usar
um número não assinado (um padrão de bits) para cada
amostra.
 Quantização refere-se a um processo que arredonda o valor
de uma amostra para o valor inteiro mais próximo. Por
exemplo, se o valor real for 17,2, pode ser arredondado para
17: se o valor for 17,7, ele poderá ser arredondado para 18.
Armazenamento de áudio
 Codifição
 A próxima tarefa é codificação. Os valores da amostra quantizada
precisam ser codificados como padrões de bits.
 Alguns sistemas atribuem valores positivos e negativos às amostras,
outros apenas mudam a curva para a parte positiva e atribua apenas
valores positivos. Em outras palavras, alguns sistemas usam um
número inteiro não assinado para representar uma amostra,
enquanto outros usam números inteiros assinados para fazer isso.
 Contudo, os números inteiros assinados não precisam estar no
complemento de dois, eles podem ser de magnitude e magnitude
valores. O bit mais à esquerda é usado para representar o sinal (0
para valores positivos e 1 para valores negativos) e o restante dos
bits é usado para representar os valores absolutos.
Bit por amostra

 O sistema precisa decidir quantos bits devem ser alocados


para cada amostra.
 Apesar no passado, apenas 8 bits eram atribuídos a amostras
de som, hoje 16, 24 ou mesmo 32 bits por amostra é normal.
 O número de bits por amostra às vezes é chamado de
profundidade de bits.
Taxa de bits

 Se chamarmos a profundidade ou número de bits por


amostra B, o número de amostras por segundo, S,
precisamos armazenar bits S × B para cada segundo de
áudio.
 Às vezes, este produto é referido como taxa de bits, R.
 Por exemplo, se usarmos 40.000 amostras por segundo e 16
bits por amostra, a taxa de bits é R = 40 000 × 16 = 640 000
bits por segundo = 640 kilobits por segundo.
Padrões para codificação do
som
 Hoje, o padrão dominante para armazenar áudio é o MP3
(abreviação de MPEG Layer 3).
 Este padrão é uma modificação da compressão MPEG
(Motion Picture Experts Group) método usado para vídeo.
Utiliza 44 100 amostras por segundo e 16 bits por amostra o
resultado é um sinal com uma taxa de bits de 705 600 bits
por segundo, que é compactado usando um método de
compressão que descarta informações que não podem ser
detectadas pelo ouvido humano.
 Isso é chamado de compactação com perdas, em oposição
à compactação sem perdas:
Armazenamento de imagens

 As imagens são armazenadas no computador usado duas


técnicas diferentes: gráficos de varredura e gráficos
vectoriais.
Gráficos de varredura

 Gráficos de varredura (ou gráficos de bitmap) são usados


quando nós precisamos de armazenar uma imagem
análogica tal como uma fotografia.
 Uma fotografia consiste de dados analógicos, similares a
informação do áudio: a diferença é de que a intensidade
(cor) dos dados varia no espaço em vez de tempo. Isto
significa que os dados devem ser simplificados.
 Contudo, simplificando, neste caso é normalmente
chamado de digitalização (scanning).
Gráficos de varredura

 As amostras são chamadas de pixels (que significa


elementos da imagem). Em outras palavras, a imagem
inteira é dividida em pequenos pixels onde cada pixel é
assumido como tendo um único valor de intensidade.
Resolução

 Tal como na simplificação do áudio, na digitalização da


imagem precisamos de decidir quantos pixels nós
precisamos de gravar em cada quadrado ou polegada linear.
A taxa de digitalização no processamento da imagem é
chamada resolução.
 Se a resolução é suficientemente alta, os olhos humanos não
conseguem reconhecer as descontinuidades na reprodução
da imagem.
Profundidade da cor

 O número de bits usados para representar o pixel, isto é,


profundidade da cor, depende de como a cor de um pixel é
manipulada por diferentes técnicas de codificação.
 A percepção de cores é como os nossos olhos respondem a
um feixe de luz. Os nossos olhos têm diferentes tipos de
células receptoras de imagens: algumas respondem as três
cores primárias, vermelho, verde e azul (red, green and
blue) normalmanente chamados de VVA (RGB) enquanto
outras células meramente respondem a intensidade da luz.
Cores verdadeiras (True
colours)
 Uma das técnicas usadas para codificar o pixel é chamada
cores verdadeiras, que usa 24 bits para codificar o pixel.
Nesta técnica, cada uma das três cores primárias ((VVA ou
RGB na língua inglesa) são representadas por 8 bits. Como
uma padrão de 8 bits representa um número entre 0 e 256
nesta técnica, cada cor é representada por três números
decimais entre 0 e 255.
 Note que o esquema de cores verdadeiras pode codificar 2 24
ou 2.776.216 cores. Em outras palavras a intensidade da cor
para cada pixel é um destes valores.
Algumas cores definidas em
cores verdadeiras
Cores indexadas

 O esquema de cores verdadeiras usa um pouco mais de 16


milhões de cores. Muitas aplicações não necessitam de uma
variedade tão grande de cores. O esquema de cores indexadas
ou cores da paleta usam apenas uma porção dessas cores.
 Neste esquema cada aplicação seleciona poucas (normalmente
256) cores de conjunto grande de cores e indexa-os atribuindo
um numero entre 0 e 255 para cada cor selecionada.
 Isto é similar a forma em que um artista possui muitas cores
disponíveis mas em cada momento seleciona apenas uma
pequena porção na paleta para usar.
 O uso de cores indexadas reduz o número de bits necessários
para armazenar um pixel.
Padrões para codificação de
imagens
 Vários padrões para codificação de imagens, de facto, estão
em uso.
 JPEG (Joint Photographic Experts Group) usa o esquema
de cores verdadeiras mas comprime a imagem para reduzir
o número de bits.
 GIF (Graphic Intechange Format) por outro lado usa o
esquema de cores indexadas.
Gráficos de vector

 Os gráficos de varredura apresentam duas desvantagens: o


tamanho do ficheiro é grande e reactar ou recomeçar é
problemático. Aumentar a imagem do gráfico de varredura
significa aumentar os pixels, pelo que a imagem parece
irregular quando ampliada.
 O método de codificação nos gráficos de vector, contudo,
não armazena o padrão de bits cada pixel. A imagem é
decomposta em formas de combinação geométricas tal
como linhas, quadrados ou círculos. Cada forma geométrica
é representada por uma fórmula matemática.
Gráficos de vector

 Por exemplo: a linha pode representada pelas coordenadas


dos seu pontos finais, o circulo pode ser descrito pelas
coordenados do seu centro e do raio.
 A imagem do gráfico do vector é concebido por uma serie
de comandos que definem como estas formas podem ser
desenhadas.
Armazenamento de vídeos

 Vídeo é uma representação de imagens (chamados quadros


ou frames). Um filme consiste em uma série de frames
mostrando um após outro para criar uma ilusão de
movimento.
 Em outras palavras, o vídeo é uma representação de
informação que muda no espaço (imagem única) e no
tempo (série de imagens).
 Então se nós sabemos como armazenar uma imagem no
computador, nós também sabemos como armazenar um
vídeo: cada imagem ou frame é transformado em um
conjunto padrão de bits e armazenado.
 A combinação de imagens então representa o vídeo.
Resumo

 Os dados vêm em diferentes formatos, incluindo números,


texto, áudio, imagens e vídeo. Todos tipos de dados são
transformados numa representação uniforme chamada padrão
de bit.
 Um número é convertido para o sistema binário antes de ser
armazenado na memória do computador. Existem diversas
formas para lidar com o sinal. Existem duas formas para lidar
com o ponto decimal: ponto fixo e ponto flutuante.
 Um número inteiro pode ser pensado como um número no qual
posição do ponto flutuante é fixa: o ponto flutuante encontra-se
a direita do menos significante bit. Um número inteiro não
assinado é um número inteiro que poderá ser negativo.
Resumo

 Um dos métodos usados para armazenar para armazenar um


número inteiro assinado é o formato de sinal e magnitude.
Neste formato o bit mais a esquerda é usado para mostrar o
sinal e o resto dos bits definem a magnitude. O sinal e a
magnitude estão separados entre si.
 Quase todos computadores usam as duas representações
complementares para armazenar um número inteiro
assinado de n-bits de endereços da memória.
 Neste método
Resumo

 Um pedaço de texto em qualquer idioma é uma sequência de símbolos. Nós


podemos representar cadasímbolo com um pouco de padrão. Diferentes
conjuntos de padrões de bits (códigos) foram projetados para representar
símbolos de texto. Uma coalizão de fabricantes de hardware e software tem
projetou um código chamado Unicode que usa 32 bits para representar um
símbolo.
 Áudio é uma representação de som ou música. Áudio são dados analógicos.
Não podemos gravar um número infinito de valores em um intervalo,
podemos registrar apenas algumas amostras. O número de amostras depende
do número máximo de alterações no sinal analógico. Os valores medidos
para cada amostra são um número real. Quantização refere-se a um processo
que arredonda os valores da amostra para números inteiros.
 O armazenamento de imagens é feito usando duas técnicas diferentes:
gráficos rasterizados e vetores gráficos. Os gráficos de varredura são usados
​quando precisamos armazenar uma imagem analógica como uma fotografia.
Resumo

 A imagem é digitalizada (amostra) e os pixels são


armazenados. No vetor método gráfico, uma imagem é
decomposta em uma combinação de formas geométricas
como linhas, quadrados ou círculos. Cada forma geométrica
é representada por uma fórmula matemática
 Vídeo é uma representação de imagens (chamadas de
quadros) no tempo. Um filme é uma série de quadros
mostrados um após o outro para criar a ilusão de movimento
contínuo. Em outro palavras, vídeo é a representação de
informações que mudam no espaço (imagem única) e no
tempo (uma série de imagens).
Exercícios

 Q3-1. Cite cinco tipos de dados que um computador pode processar. Q3-2.
Como o comprimento do padrão de bits está relacionado ao número de
símbolos que o padrão de bits pode representar?
 Q3-3. Como o método gráfico de bitmap representa uma imagem como um
padrão de bits?
 Q3-4. Qual é a vantagem do método gráfico vetorial sobre o gráfico bitmap
método? Qual é a desvantagem?
 Q3-5. Quais etapas são necessárias para converter dados de áudio em padrões
de bits?
 Q3-6. Compare e contraste a representação de números inteiros positivos em
não assinado, formato de sinal e magnitude e formato de complemento de dois.
 Q3-7. Comparar e contrastar a representação de números inteiros negativos em
sinal e magnitude e formato de complemento de dois.
 Q3-8. Compare e contraste a representação de zero em sinal e magnitude, dois
formatos complemento e excesso.
Exercícios

 Q3-9. Discuta o papel do bit mais à esquerda em sinal e


magnitude e o complemento de dois
 formatos.
 Q3-10. Responda às seguintes perguntas sobre
representações de ponto flutuante de números reais:
 uma. Por que a normalização é necessária?
 b. Qual é a mantissa?
 c. Depois que um número é normalizado, que tipo de
informação um computador armazena
 em memória?
Referências bibliográficas

 Forouzan, B. (2018). Foundations of computer science (4


ed.). London, United Kingdom: Cengage Learning EMEA.
Fim

 Obrigado pela atenção

Você também pode gostar