Strings (Compressão) Estrutura de Dados II Jairo Francisco de Souza
|
|
- Nathan Lacerda Sabrosa
- 8 Há anos
- Visualizações:
Transcrição
1 Strings (Compressão) Estrutura de Dados II Jairo Francisco de Souza
2 Compressão de Dados Objetivos Reduzir espaço de armazenagem Reduzir tempo de transmissão Muito importante Informação (e dados) tende a crescer de forma exponencial Exemplos: Compressão de arquivos em geral ZIP, GZIP, BZIP, BOA. Sistemas de arquivos: NTFS. Multimedia. Imagens: GIF, JPEG Som: MP3. Vídeo: MPEG, DivX, HDTV. Comunicação Modems Faxes
3 Compressão x Compactação Compressão Mudança na representação de algum dado para reduzir seu tamanho Compactação União de dados que não estão unidos Exemplo: Compressão do HD: reduzir o tamanho dos arquivos Compactação do HD: juntar partes disjuntas (desfragmentar)
4 Sistemas de recuperação de informação Métodos recentes de compressão têm permitido: 1. Pesquisar diretamente o texto comprimido mais rapidamente do que o texto original. 2. Obter maior compressão em relação a métodos tradicionais, gerando maior economia de espaço. 3. Acessar diretamente qualquer parte do texto comprimido sem necessidade de descomprimir todo o texto desde o início
5 Codificação e Decodificação Seja M a mensagem que desejamos armazenar/transmitir Codificação: Gerar uma representação comprimida C(M) que, espera-se, utilize menos bits Decodificação: Reconstrução da mensagem original ou alguma aproximação M Razão de Compressão: bits de C(M) / bits de M Compressão sem perda: M = M Texto, programas fonte, executáveis etc RC: 50-75% ou menos Compressão com perda: M ~ M Imagens, som, vídeo Uma idéia é descartar informação não perceptível pelos sentidos RC: 10% ou mais, dependendo do fator de qualidade
6 Codificação por Seqüências Repetidas Conhecida como Run-length encoding (RLE). Idéia é explorar longas seqüências de caracteres repetidos Substituir seqüência pelo número de repetições seguido do caractere repetido Se seqüência tem menos de 3 caracteres, ignorar regra Exemplo: AAAABBBAABBBBBCCCCCCCCDABCBAAABBBBCCCD 4A3BAA5B8CDABCB3A4B3CD Como representar o número de repetições? Alguns esquemas + ou complicados Pode levar à inflação de um arquivo se as seqüências são curtas Se o arquivo é binário, saída consiste apenas de contagens de repetições Por exemplo, tente comprimir a cadeia Aplicações Imagens preto e branco Compressão aumenta com a resolução Usado nos arquivos.rle do Windows 3.x, que eram bitmaps usadas na tela de inicialização do sistema operacional.
7 Codificação de Huffman Idéia é usar caracteres (símbolos) com número variável de bits Caracteres mais comuns na mensagem são codificados com menos bits e caracteres menos comuns com mais Árvore de Prefixos de Huffman Dada uma mensagem, encontra a melhor (menor) codificação para os caracteres Algoritmo: Tabular freqüências dos símbolos Montar uma floresta de tries unitários com todos os símbolos e suas freqüências Repetir Localizar os dois tries com menor freqüência F i e F j Uní-los num trie único com freqüência F i + F j
8 Exemplo de Codificação de Freqüências dos caracteres Huffman Árvore de Huffman é um heap Pode implementar utilizando um array, assim como é feito no HeapSort Char E T A O I N S R H L D C U Freq
9 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
10 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
11 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
12 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
13 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
14 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
15 Exemplo de Codificação de Huffman 156 A O T E D L R S N I H C U 31 27
16 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
17 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
18 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
19 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
20 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
21 Exemplo de Codificação de Huffman A O T E D L R S N I H C U 31 27
22 Exemplo de Codificação de Huffman 125 Freq E Char T A O I N R H L D C U 65 S 0000 Fixo Huff Total
23 Codificação de Huffman Implementação. Dois passos Tabular freqüências e construir o trie Codificar mensagem percorrendo o trie Usar uma fila de prioridades (heap) Complexidade O(M + N log N) M é o comprimento da mensagem N é o número de caracteres distintos Dificuldades Transmissão do trie Pode ser resolvido com variante progressiva (Knuth): Trie é construído simultaneamente pelo codificador e decodificador
24 Codificação de Huffman Em algumas aplicações, como sistemas de recuperação de informação, o uso de palavras ao invés de caracteres torna-se importante Métodos de Huffman baseados em caracteres comprimem o texto para aproximadamente 60%. Métodos de Huffman baseados em palavras comprimem o texto para valores pouco acima de 25%.
25 Codificação de Huffman Exemplo: Para cada rosa rosa, uma rosa é uma rosa Divisão do texto: Separadores são caracteres que aparecem entre palavras: espaço, vírgula, ponto, ponto e vírgula, interrogação, e assim por diante. Uma forma eficiente de lidar com palavras e separadores é representar o espaço simples de forma implícita no texto comprimido. Nesse modelo, se uma palavra é seguida de um espaço, então, somente a palavra é codificada. Senão, a palavra e o separador são codificados separadamente. No momento da decodificação, supõe-se que um espaço simples segue cada palavra, a não ser que o próximo símbolo corresponda a um separador.
26
27 Exercício Codifique o texto abaixo usando a codificação de Huffman yabba dabba doo Decodifique o texto abaixo, utilizando a árvore fornecida:
28 Codificação de Huffman Problemas Como inserir novos símbolos na árvore? E se não soubermos a frequência dos símbolos previamente?
29 Huffman adaptativo A árvore é construída durante a compressão/descompressão (não necessita de ser enviada previamente) Não necessita de conhecer a estatística da fonte a priori Se a estatística variar, o código adapta-se automaticamente Algoritmo Reservar um símbolo de escape na árvore para representar os símbolos que ainda não ocorreram Atualizar os pesos de todos os nós da árvore com o respectivo número de ocorrências (permite obter a estatística da fonte) Atualizar a árvore de forma a que todos os nós tenham pesos ordenados da esquerda para a direita e de baixo para cima
30 Huffman adaptativo O algoritmo foi desenvolvido independentemente por Faller (1973) e Gallager (1978) e melhorado por Knuth (1985), ficando conhecido como algoritmo FGK. Existe ainda outro melhoramento feito por Vitter (1987), conhecido como algoritmo V, que não é apresentado aqui. O Huffman adaptativo é usado no comando compact do UNIX
31 Huffman adaptativo A idéia do FGK é baseada na seguinte propriedade de irmandade: se cada nó tem um irmão (exceto a raiz) e o cruzamento de árvore extensão-primeiro direita-para-a-esquerda gera uma lista de nós com contadores de frequência não crescentes, pode-se provar que uma árvore com a propriedade de irmandade é uma árvore de Huffman. Assim, na codificação adaptativa, verificamos se a propriedade de irmandade está sendo violada. Em caso positivo, deve-se reestruturar a árvore para restabelecer essa propriedade. A restruturação da árvore parece complexa, mas basta fazer a troca entre os nós adjacentes do cruzamento de árvore extensão-primeiro direita-para-a-esquerda.
32 Exemplo: ABRACADABRA
33 Exemplo: ABRACADABRA
34 Huffman adaptativo Código gerado para ABRACADABRA : A 0 B 00 R C D Para entender o código, é preciso verificar o passo a passo da construção da árvore. Cada letra significa uma inserção na árvore. Os bits que antecedem a letra indicam a posição do nó de escape. Sempre que for enviada uma letra não pertencente à árvore, retorna-se os bits correspondente ao nó de escape e, em seguida, a letra a ser enviada. Ao decodificar, a árvore final deverá ser idêntica à árvore criada ao codificar!
35 Exercício Ex1: Codifique a sequência ALOHAMAHALO com Huffman Adaptativo Ex2: Decodifique a sequência M0A00H11100L1100O
36 Algoritmo Lempel-Ziv Desenvolvido por Abraham Lempel e Jacob Ziv em Chamado de LZ77 Usado no programa PKZIP, GZIP, nos arquivos de formato ZIP e no formato de imagens PNG Não necessita conhecer os símbolos a priori 36
37 Algoritmo LZ77 Baseado em duas janelas contíguas de tamanho fixo: dicionário e buffer A posição das janelas vão sendo deslocadas à medidas que os símbolos vão sendo codificados. 37
38 Algoritmo LZ77: Codificador Inicializa-se o buffer (de dimensão Nb) com os primeiros Nb símbolos da sequência a codificar Inicialmente o dicionário não contém nenhum símbolo Enquanto houver símbolos a codificar Identificar no dicionário a maior sequência de símbolos que também esteja presente no buffer (a começar no cursor) Associar à sequência o código (p, l, c) onde p é a posição relativa (a contar do cursor) da maior sequência do dicionário l é o comprimento da maior sequência c é o símbolo do buffer que se segue à sequência Deslocar as janelas (dicionário + buffer) de l+1 símbolos 38
39 Questões de implementação Caso 1 Quanto não existe nenhuma sequência no dicionário que corresponda às sequências do buffer (a começar do cursor), então o código para esses casos é (0, 0, c), onde c é o primeiro símbolo do buffer 39
40 Questões de implementação Caso 2 É vantajoso poder codificar certas sequências com p < l. Por exemplo, considere a seguinte situação Neste caso, o código será (2, 5, a), o que significa: Recua 2 símbolos no dicionário, copia os 5 símbolos que se seguem, e acrescenta um a no final. Visto que para p = 2 só sobram 2 símbolos no dicionário (o e e o t ), o que se faz é uma cópia circular: recomeça-se a copiar os símbolos a partir da posição p quando se atinge o fim do dicionário. 40
41 Exemplo - LZ77 Sequência a codificar: bananabanabofana Nd = 6 (comprimento do dicionário). Nb = 4 (comprimento do buffer). (0,0,b),(0,0,a),(0,0,n)... 41
42 Exemplo - LZ77 Sequência a codificar: bananabanabofana (0,0,b),(0,0,a),(0,0,n),(2,3,b),(4,4,o),(0,0,f), (6,3,Null) 42
43 LZ77 - Decodificador Exemplo: (0, 0, p) (0, 0, a) (2, 2, i) (4, 5, b) (0, 0, o) (0, 0, f) (6, 3, s) 43
44 Exercício Codifique a seguinte cadeia com LZ77, considerando buffer de tamanho 4 e dicionário de tamanho 6 ATGTCGTCATGTCATGCTAGCTATGTGTCATGTATG Decodifique o código abaixo (0, 0, a), (0, 0, b), (0, 0, c), (3, 1, c), (4, 10, b), (1, 3, a), (1, 1, Null) 44
45 Algoritmo LZ78 Difere na forma com que é gerido e atualizado o dicionário Ao invés de uma janela deslizante, o dicionário é uma tabela de sequências que já foram analisadas no processo de codificação. Não há limite de entradas no dicionário Assim, é possível que uma sequência encontre uma ocorrência na tabela, mesmo que esta tenha acontecido muito atrás no processo de subdivisão O algoritmo codifica novas sequências com apenas (1) um número correspondente à entrada do dicionário que contém a sequência com todos os símbolos, à exceção do último da nova sequência, e (2) um caractere 45
46 Algoritmo LZ78 - Codificador Dicionário = null String = null Enquanto houver símbolos para codificar c = próximo símbolo Se String+c é uma sequência presente no dicionário String = String + c Caso contrário Enviar código (índice de String no Dicionário, c) Atualizar Dicionário com String + c String = null 46
47 Exemplo - LZ78 Sequência a codificar: bananabanabofana 47
48 48
49 LZ78 - Decodificador Exemplo: (0, p), (0, a), (1, a), (0, i), (2, p), (2, i), (2, b), (0, o), (0, f), (6, a) 49
50 LZ78 - Decodificador Exemplo: (0, p), (0, a), (1, a), (0, i), (2, p), (2, i), (2, b), (0, o), (0, f), (6, a) 50
51 Exercício Codifique a seguinte cadeia com LZ78 ATGTCGTCATGTCATGCTAGCTATGTGTCA TGTATG Decodifique o código abaixo com LZ78 (0, a)(0,b)(0,r)(1,c)(1,d)(1,b)(4,a)(2,r)(1,null) 51
52 Algoritmo LZW Modificação do LZ78 desenvolvido e patenteado por Terry Welch em 1984 É geralmente utilizado em imagens nas quais não se quer perder a definição original. O codificador LZW reduz, pela compressão, os arquivos de imagens gráficas a 1/3 ou 1/4 de seu tamanho original. Usado nos formatos TIFF (opcional) e GIF (padrão) O algoritmo exclui o símbolo da palavra de código 52
53 Algoritmo LZW - Codificador Dicionário = todos os símbolos da fonte (por exemplo, a tabela ASCII) String = 1o símbolo da sequência a codificar Enquanto houver símbolos para codificar c = próximo símbolo Se String+c é uma sequência presente no Dicionário String = String + c Caso contrário Enviar código (índice de String no Dicionário) Atualizar Dicionário com String+c String = c Enviar código (índice de String no Dicionário) 53
54 Exemplo - ZVW Sequência a codificar: bananabanabofana Dicionário inicializado com a tabela ASCII estendida (de 0 a 255) String inicializada com o 1o caracter da sequência 54
55 55
56 Algoritmo LZW - Decodificador Dicionário = todos os símbolos da fonte (por exemplo, a tabela ASCII) String = 1o símbolo da sequência a codificar old Saída = String old Enquanto houver códigos para decodificar Lê novo código String new = sequência correspondente a novo código Saída = String new c = 1o símbolo de String new Adicionar String + c a Dicionário old String old = String new 56
57 Algoritmo LZW - Decodificador Exemplo: (112), (97), (256), (105), (257), (97), (259), (98), (111), (102), (261), (97) Dicionário inicializado com a tabela ASCII 57
58 Exercício Codifique a seguinte string com LZW ATGTCGTCATGTCATGCTAGCTATGTGTCA TGTATG Decodifique o código abaixo com LZW, considerando A = 65 e o dicionario com ultimo termo igual a Z =
ESTRUTURAS DE DADOS II
ESTRUTURAS DE DADOS II Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Conteúdo Programático 1. Introdução
Leia maisStrings (Compressão) Estrutura de Dados II Jairo Francisco de Souza
Strings (Compressão) Estrutura de Dados II Jairo Francisco de Souza Compressão de Dados Objetivos Reduzir espaço de armazenagem Reduzir tempo de transmissão Muito importante Informação (e dados) tende
Leia mais2. Execução do algoritmo de Huffman para construção de uma árvore binária (árvore de Huffman).
MC202 - Estruturas de Dados IC UNICAMP Prof.: Neucimar J. Leite Monitor: Lucas Bueno Laboratório Nō 6 1 Códigos de Huffman Uma das aplicações interessantes de árvores binárias é a compactação de arquivos
Leia maisEstrutura de Dados. Compressão de Dados Lempel, Ziv e Welch - LZW. Prof. Othon M. N. Batista Mestre em Informática
Estrutura de Dados Compressão de Dados Lempel, Ziv e Welch - LZW Prof. Othon M. N. Batista Mestre em Informática Roteiro Introdução Algoritmo Codificação Exemplo de Codificação Introdução O Lempel, Ziv
Leia maisFigure 2 - Nós folhas de uma árvore binária representando caracteres ASCII
A ocorrência tamanho ASCII codificação de Huffman é um A Codificação método de compactação de Huffman caracteres (American e a variável codificação dos usado símbolos Standard para por cada muitas no Code
Leia maisNenhum dado é perdido durante o processo de compressão. Preserva todas as informações que permitirão a reconstrução exata da imagem. Reversível.
Compressão sem Perda Explora a redundância entre pixels na codificação. Nenhum dado é perdido durante o processo de compressão. Preserva todas as informações que permitirão a reconstrução exata da imagem.
Leia maisVocê pode dizer isso de novo! Compressão de Texto
Atividade 3 Você pode dizer isso de novo! Compressão de Texto Sumário Desde que os computadores possuíam apenas uma quantidade limitada de espaço para armazenar informações, estes precisavam armazená-las
Leia maisAlgoritmos e Estrutura de Dados III. Árvores
Algoritmos e Estrutura de Dados III Árvores Uma das mais importantes classes de estruturas de dados em computação são as árvores. Aproveitando-se de sua organização hierárquica, muitas aplicações são realizadas
Leia maisProf. Marcelo Machado Cunha Parte 3 www.marcelomachado.com
Prof. Marcelo Machado Cunha Parte 3 www.marcelomachado.com Protocolo é a linguagem usada pelos dispositivos de uma rede de modo que eles consigam se comunicar Objetivo Transmitir dados em uma rede A transmissão
Leia maiswww.vwsolucoes.com Copyright 2013 VW Soluções
1 1. Especificação técnicas: Dimensões do módulo 4EA2SA v1.0: 100 mm x 56 mm Peso aproximado: xxx gramas (montada). Alimentação do circuito : 12 ou 24Vcc Tipo de comunicação: RS232 ou RS485 Tensão de referencia:
Leia maisANÁLISE E IMPLEMENTAÇÃO DE ALGORITMOS DE COMPRESSÃO DE DADOS. Maria Carolina de Souza Santos 1 Orientador: Prof.º Ms.
ANÁLISE E IMPLEMENTAÇÃO DE ALGORITMOS DE COMPRESSÃO DE DADOS Maria Carolina de Souza Santos 1 Orientador: Prof.º Ms. Mauricio Duarte 2 Centro Universitário Euripides de Marilia UNIVEM FATEC Faculdade de
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Aritmética de Números Inteiros Representação de Números
Leia maisGoogle Drive. Passos. Configurando o Google Drive
Google Drive um sistema de armazenagem de arquivos ligado à sua conta Google e acessível via Internet, desta forma você pode acessar seus arquivos a partir de qualquer dispositivo que tenha acesso à Internet.
Leia maisAcadêmicos: Luís Fernando Martins Nagata Gustavo Rezende Vinícius Rezende Santos
Acadêmicos: Luís Fernando Martins Nagata Gustavo Rezende Vinícius Rezende Santos Pilhas de Dispositivos Drivers no Windows Vista podem fazer todo trabalho sozinho; Uma requisição pode passar por uma seqüência
Leia maisNovell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR
Novell Teaming - Guia de início rápido Novell Teaming 1.0 Julho de 2007 INTRODUÇÃO RÁPIDA www.novell.com Novell Teaming O termo Novell Teaming neste documento se aplica a todas as versões do Novell Teaming,
Leia maisAlgoritmos para compressão de URLs
Algoritmos para compressão de URLs Ronan Loschi Rodrigues Ferreira, Fabrício Benevenuto PPGCC - Programa de Pós-Graduação em Ciência da Computação UFOP - Universidade Federal de Ouro Preto Ouro Preto,
Leia maisComo gerar arquivos para Sphinx Operador
Como gerar arquivos para Sphinx Operador Pré-requisitos: Lista das questões Formulário multimídia Visões O Sphinx Operador é um sistema específico para digitação de respostas e visualização de resultados
Leia maisFluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos
Este procedimento corresponde ao fluxo de trabalho de Indexação de código de barras e de separação de documentos no programa de treinamento do Capture Pro Software. As etapas do procedimento encontram-se
Leia maisEstruturas de Armazenamento e Indexação. Rafael Lage Moreira Barbosa 10.1.4217
Estruturas de Armazenamento e Indexação Rafael Lage Moreira Barbosa 10.1.4217 Estruturas de Armazenamento Banco de Dados são armazenados fisicamente como arquivos de registro, que em geral ficam em discos
Leia maisSuperintendência Regional de Ensino de Ubá - MG Núcleo de Tecnologia Educacional NTE/Ubá. LibreOffice Impress Editor de Apresentação
Superintendência Regional de Ensino de Ubá - MG Núcleo de Tecnologia Educacional NTE/Ubá LibreOffice Impress Editor de Apresentação Iniciando o Impress no Linux Educacional 4 1. Clique no botão 'LE' no
Leia maisIFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira
IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários
Leia maisHashing. Estruturas de Dados. Motivação
Estruturas de Dados Hashing Prof. Ricardo J. G. B. Campello Parte deste material é baseado em adaptações e extensões de slides disponíveis em http://ww3.datastructures.net (Goodrich & Tamassia). Motivação
Leia maisVoltado para novos usuários, este capítulo fornece uma instrução para edição de Leiaute do SILAS e suas funções.
13. Editor de leiautes Voltado para novos usuários, este capítulo fornece uma instrução para edição de Leiaute do SILAS e suas funções. Neste capítulo uma breve explicação será apresentada sobre a organização
Leia maisAlgoritmos e Estruturas de Dados I 01/2013. Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo
Algoritmos e Estruturas de Dados I 01/2013 Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo Problema 1 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em
Leia maisMC102 Algoritmos e programação de computadores Aula 3: Variáveis
MC102 Algoritmos e programação de computadores Aula 3: Variáveis Variáveis Variáveis são locais onde armazenamos valores na memória. Toda variável é caracterizada por um nome, que a identifica em um programa,
Leia maisManual de Integração
Manual de Integração Versão 3.10 Conteúdo 1 Obtendo e Instalando o Emissor... 4 1.1 Obtendo o instalador... 4 1.2 Instalando o JAVA e o Framework.NET 2.0... 4 1.3 Instalando o Emissor... 5 2 Padrões de
Leia maisAMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS
UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS Orientando: Oliver Mário
Leia maisPesquisa digital. Algoritmos e Estruturas de Dados II
Pesquisa digital Algoritmos e Estruturas de Dados II Pesquisa digital A pesquisa digital usa a representação das chaves para estruturar os dados na memória Por exemplo, a representação de um número em
Leia maisBC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento
BC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento 1 Gerência de espaço em disco Cópia de segurança do sistema de arquivo Roteiro Confiabilidade Desempenho
Leia maisUNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO
UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO Amanda 5ª Atividade: Codificador e codificação de linha e seu uso em transmissão digital Petrópolis, RJ 2012 Codificador: Um codoficador
Leia maisSistemas Numéricos e a Representação Interna dos Dados no Computador
Capítulo 2 Sistemas Numéricos e a Representação Interna dos Dados no Computador 2.0 Índice 2.0 Índice... 1 2.1 Sistemas Numéricos... 2 2.1.1 Sistema Binário... 2 2.1.2 Sistema Octal... 3 2.1.3 Sistema
Leia maisOrientação a Objetos
Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.
Leia maisNa Figura a seguir apresento um exemplo de uma "mini-tabela" de roteamento:
Tutorial de TCP/IP - Parte 6 - Tabelas de Roteamento Por Júlio Cesar Fabris Battisti Introdução Esta é a sexta parte do Tutorial de TCP/IP. Na Parte 1 tratei dos aspectos básicos do protocolo TCP/IP. Na
Leia maisCasamento de Cadeias. Introdução. Introdução. Estrutura de Dados. Cadeia de caracteres: sequência de elementos denominados caracteres.
Introdução de Cadeias Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM 1 Cadeia
Leia maisSistemas Operacionais
Sistemas Operacionais Gerência de Arquivos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Conceituação de arquivos Implementação do sistemas de arquivo Introdução Sistema de
Leia maisConfiguração do Ambiente de Trabalho
pag. 1 Configuração do Ambiente de Trabalho 1. Utilização da Área de Trabalho Criação de Atalhos: O Windows NT apresenta um Ambiente de Trabalho flexível, adaptável às necessidades e preferências do utilizador.
Leia maisPAINEL GERENCIADOR DE E-MAILS
Este manual foi criado com o objetivo de facilitar o gerenciamento de suas contas de e-mail. Com ele, o administrador poderá criar e excluir e-mails, alterar senha, configurar redirecionamento de contas,
Leia maisLista de Exercícios. Vetores
Lista de Exercícios Vetores LINGUAGEM DE PROGRAMAÇÃO PROF. EDUARDO SILVESTRI. WWW.EDUARDOSILVESTRI.COM.BR ATUALIZADO EM: 13/03/2007 Página 1/1 1. Faça um programa que crie um vetor de inteiros de 50 posições
Leia maisSMS Corporativo Manual do Usuário
NEXTEL SMS Corporativo Manual do Usuário Conteúdo 2 CAPÍTU LO 1 Introdução 3 CAPÍTU LO 2 Funcionalidades 1 Copyright Curupira S/A TakeNET INTRODUÇÃO A FERRAMENTA O SMS Corporativo é um serviço criado para
Leia maisferramentas da imagem digital
ferramentas da imagem digital illustrator X photoshop aplicativo ilustração vetorial aplicativo imagem digital 02. 16 imagem vetorial X imagem de rastreio imagem vetorial traduz a imagem recorrendo a instrumentos
Leia maisimplementação Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Fernando Ramos, Nuno Neves, Sistemas Operativos, 2014 2015
Sistemas de ficheiros: implementação Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Objetivos da aula Descrever algunsdetalhes daimplementação deumsistema de ficheiros Discutir algoritmos
Leia maisCAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES
CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:
Leia maisBem- Vindo ao manual de instruções do ECO Editor de COnteúdo.
Manual de Instruções ECO Editor de Conteúdo Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo. O ECO é um sistema amigável e intui?vo, mas abaixo você pode?rar eventuais dúvidas e aproveitar
Leia maisOficina de Construção de Páginas Web
COMPETÊNCIAS BÁSICAS EM TIC NAS EB1 Oficina de Construção de Páginas Web Criação e Publicação Guião Páginas WWW com o editor do Microsoft Office Word 2003 1. Introdução. 2. Abrir uma página Web. 3. Guardar
Leia maisO Problema do Troco Principio da Casa dos Pombos. > Princípios de Contagem e Enumeração Computacional 0/48
Conteúdo 1 Princípios de Contagem e Enumeração Computacional Permutações com Repetições Combinações com Repetições O Problema do Troco Principio da Casa dos Pombos > Princípios de Contagem e Enumeração
Leia maisRepresentação de Informação -- Texto -- Representação de Informação. Representação de Caracteres
Representação de Informação -- Texto -- Sistemas Informáticos I, 2004/2005 (c) Paulo Marques SLIDES 5 Representação de Informação Como é que se representa texto? Como é que se representam imagens? Como
Leia maisInventário Rotativo. Página 1
Inventário Rotativo Página 1 Página 2 Antes de iniciar qualquer inventário certifique-se de que não há nenhum dos produtos a serem inventariados pendente de entrada, lançamento para requisições entre outros.
Leia maisInformática Básica para o PIBID
Universidade Federal Rural do Semi Árido Programa Institucional de Iniciação à Docência Informática Básica para o PIBID Prof. Dr. Sílvio Fernandes Roteiro O Tamanho e Resolução de imagens O Compactação
Leia maisPadrão ix. Q-Ware Cloud File Publisher Manual para realização do Donwload de Arquivos. Versão 1.0.1.0
Padrão ix Q-Ware Cloud File Publisher Manual para realização do Donwload de Arquivos Versão 1.0.1.0 Copyright 2000-2013 Padrão ix Sistemas Abertos Ltda. Todos os direitos reservados. As informações contidas
Leia mais2. Utilitários de sistema para ambiente Windows. 2.1. Ferramentas de gestão de ficheiros
2. Utilitários de sistema para ambiente Windows 2.1. Ferramentas de gestão de Os compressores de são programas com capacidade para comprimir ou pastas, tornando-as mais magras, ou seja, ocupando menos
Leia mais"Manual de Acesso ao Moodle - Discente" 2014
"Manual de Acesso ao Moodle - Discente" 2014 Para acessar a plataforma, acesse: http://www.fem.com.br/moodle. A página inicial da plataforma é a que segue abaixo: Para fazer o login, clique no link Acesso
Leia maisVISUAL LIGHTBOX FERRAMENTA WEB DESIGN FABIANO KEIJI TAGUCHI
VISUAL LIGHTBOX FERRAMENTA WEB DESIGN FABIANO KEIJI TAGUCHI ESTE MATERIAL TEM UM OBJETIVO DE COMPLEMENTAR OS ASSUNTOS ABORDADOS DENTRO DE SALA DE AULA, TORNANDO-SE UM GUIA PARA UTILIZAÇÃO DA FERRAMENTA
Leia mais[RÓTULO:] MNEMÔNICO [OPERANDOS] [;COMENTÁRIO]
Instruções de uso do montador DAEDALUS (baseadas em texto extraído da monografia apresentada como trabalho de diplomação no curso de Bacharelado em Ciência da Computação por Luís Ricardo Schwengber, sob
Leia maisAplusixEditor: o editor para Aplusix 3 Manual de utilização
AplusixEditor: o editor para Aplusix 3 Manual de utilização Novembro 2010 Documento redigido com epsilonwriter Tradução em português por Marilena Bittar 1. Introdução 1.1. Osexercícios 1.2. Os problemas
Leia mais1 Code::Blocks Criação de projetos
Programação MEEC Índice 1Code::Blocks Criação de projetos...1 2Code::Blocks Localização do projeto...5 3Code::Blocks Abertura de projetos já existentes...7 4Code::Blocks Funcionamento...8 5Code::Blocks
Leia maisTabela de símbolos: tabelas de espalhamento
Tabela de símbolos: tabelas de espalhamento Marcelo K. Albertini 14 de Janeiro de 2014 2/28 Resumo de complexidades Análises para operação efetuada após N inserções pior caso caso médio keys chave get
Leia maisFigura 1 Busca Linear
----- Evidentemente, possuir os dados não ajuda o programador ou o usuário se eles não souberem onde os dados estão. Imagine, por exemplo, uma festa de casamento com cem convidados na qual não se sabe
Leia maisAnexo III Funcionamento detalhado do Sistema Montador de Autoria
1 Sumário Anexo III Funcionamento detalhado do Sistema Montador de Autoria Anexo III Funcionamento detalhado do Sistema Montador de Autoria... 1 1 Sumário... 1 2 Lista de Figuras... 5 3 A Janela principal...
Leia mais1 ACESSO PARA SECRETÁRIA... 4 2 - CONFIGURAR HORÁRIOS DE ATENDIMENTO... 4 2.1 BLOQUEANDO E HABILITANDO HORÁRIOS... 5 3 PRÉ-DEFININDO PARÂMETROS DE
2 1 ACESSO PARA SECRETÁRIA... 4 2 - CONFIGURAR HORÁRIOS DE ATENDIMENTO... 4 2.1 BLOQUEANDO E HABILITANDO HORÁRIOS... 5 3 PRÉ-DEFININDO PARÂMETROS DE ATENDIMENTO... 6 4 - A TELA AGENDA... 7 4.1 - TIPOS
Leia maisGuia do Usuário. idocs Content Server v.2.0-1 -
Guia do Usuário idocs Content Server v.2.0-1 - 2013 BBPaper_Ds - 2 - Sumário Introdução... 4 Inicializando a aplicação... 6 Ambiente... 7 Alterando o ambiente... 8 Senhas... 10 Alterando senhas... 10 Elementos
Leia maisTabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008
Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,
Leia maisRepresentação de Dados
Representação de Dados Introdução Todos sabemos que existem diferentes tipos de números: fraccionários, inteiros positivos e negativos, etc. Torna-se necessária a representação destes dados em sistema
Leia maisWATCHDOG ELITE NTC OPÇÃO DE COMUNICAÇÕES SERIAIS
WATCHDOG ELITE NTC OPÇÃO DE COMUNICAÇÕES SERIAIS O Watchdog é um equipamento complexo e realiza muitas funções. A função de comunicações é considerada uma função de baixa prioridade e por conta disso,
Leia maisInformática. Prof. Macêdo Firmino. Macêdo Firmino (IFRN) Informática Setembro de 2011 1 / 16
Informática Prof. Macêdo Firmino Representação da Informação Macêdo Firmino (IFRN) Informática Setembro de 2011 1 / 16 Introdução Estamos acostumados a pensar nos computadores como mecanismos complexos,
Leia maisFACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2
FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Projeto e Análise de Algoritmos II Lista de Exercícios 2 Prof. Osvaldo. 1. Desenvolva algoritmos para as operações abaixo e calcule a complexidade
Leia maisDadas a base e a altura de um triangulo, determinar sua área.
Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares
Leia maisExemplos. char c; int i=67;... c= A ; c=c+1; if (c== B )... c=i; i=c; i++; if (i>= C )...
Caracteres Conceitos Tipo de dados simples (char), cujo valor é a codificação numérica de um caracter; Caracteres literais são representados por aspas simples, como em A e a ; Variáveis do tipo char podem
Leia maisCOMPRESSÃO DE DADOS MULTIMÍDIA
COMPRESSÃO DE DADOS MULTIMÍDIA Por que Compressão? Apesar da expansão das capacidade de comunicação e computação, a demanda das novas aplicações multimídia cresce rapidamente Custo de transmissão e armazenagem
Leia maisManual do Ambiente Moodle para Professores
UNIVERSIDADE FEDERAL DA FRONTEIRA SUL Manual do Ambiente Moodle para Professores Tarefas Versão 1.0b Setembro/2011 Direitos Autorais: Essa apostila está licenciada sob uma Licença Creative Commons 3.0
Leia maisAdquirindo prática para manipular o Mouse e o Teclado
Capítulo 2 Adquirindo prática para manipular o Mouse e o Teclado 2.1 Adquirindo prática para manipular o Mouse e o Teclado Não há como manipular o computador sem ter noções de como lidar com o Mouse o
Leia maisPesquisa Digital. Árvorie. Árvorie. Árvorie. Árvorie. Árvorie: : Estrutura
lgoritmos e Estruturas de Dados II Pesquisa Digital pesquisa digital está aseada na representação das chaves como uma seqüência de caracteres de um alfaeto O método de pesquisa digital é análogo à pesquisa
Leia maisConsiderações sobre o Disaster Recovery
Considerações sobre o Disaster Recovery I M P O R T A N T E O backup completo para Disaster Recovery não dispensa o uso de outros tipos de trabalhos de backup para garantir a integridadedo sistema. No
Leia maisTrabalho 7 Fila de prioridade usando heap para simulação de atendimento
Trabalho 7 Fila de prioridade usando heap para simulação de atendimento Data: 21/10/2013 até meia-noite Dúvidas até: 09/10/2013 Faq disponível em: http://www2.icmc.usp.br/~mello/trabalho07.html A estrutura
Leia maisQuestão - 01. Essência do Excel 2003...
Valdir Questão - 01 Como deve proceder o usuário do Microsoft para que sejam atualizados os cálculos das funções ou fórmulas utilizadas nas planilhas? a) Pressionar a tecla F9 no teclado b) Pressionar
Leia maisÁrvores Trie e Patricia. Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com
Árvores Trie e Patricia Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Árvores Trie Definida em 1960 por Edward Fredkin Vêm de Retrieval (Relacionado à Recuperação de Informações) Para
Leia maisGRS Gerador de Redes Sistêmicas. (outubro/2004)
116 APÊNDICE A MANUAL DO GRS Universidade Federal do Rio de Janeiro UFRJ Departamento de Ciência da Computação DCC Instituto de Matemática IM / Núcleo de Computação Eletrônica NCE GRS Gerador de Redes
Leia maisCurso de Programação Computadores
3 O Primeiro Programa em C Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 3 O Primeiro Programa em C 3.1 - Introdução Depois dos conceitos
Leia maisImagem digital. Unidade 3
Imagem digital Unidade 3 Objectivos Reconhecer o potencial comunicativo/ expressivo das imagens; Reconhecer as potencialidades narrativas de uma imagem; A criação de sentido nas associações de imagens
Leia maisFormatos de Imagem PNG. Universidade Federal de Minas Gerais. Bruno Xavier da Silva. Guilherme de Castro Leite. Leonel Fonseca Ivo
Universidade Federal de Minas Gerais Formatos de Imagem PNG Bruno Xavier da Silva Guilherme de Castro Leite Leonel Fonseca Ivo Matheus Silva Vilela Rafael Avelar Alves Belém Belo Horizonte, 5 de maio de
Leia maisAlgoritmos de pesquisa. Tabelas de dispersão/hash
Algoritmos de pesquisa Tabelas de dispersão/hash Introdução Motivação: Considerar o problema de pesquisar um determinado valor num vetor (array). Se o vetor não está ordenado, a pesquisa requer O(n) de
Leia maisTabelas vista de estrutura
Tabelas vista de estrutura A vista de estrutura permite definir a configuração dos dados Vamos adicionar os restantes campos à tabela carros, de acordo com o modelo de dados feito no papel 47 Tabelas vista
Leia maisSIMULADO Windows 7 Parte V
SIMULADO Windows 7 Parte V 1. O espaço reservado para a Lixeira do Windows pode ser aumentado ou diminuído clicando: a) Duplamente no ícone lixeira e selecionando Editar propriedades b) Duplamente no ícone
Leia maisManual de backup do banco de dados PostgreSQL - Versão 2. Setembro-2011
Manual de backup do banco de dados PostgreSQL - Versão 2 Setembro-2011 E-Sales Oobj Tecnologia da Informação Av. D, n. 246, Qd. A-04, Lt.02, Ap. 02, Jardim Goiás Goiânia/GO, CEP: 74805-090 Fone: (62) 3086-5750
Leia maisManual de Integração
Manual de Integração Versão 1.0 Conteúdo 1 Obtendo e Instalando o Conhecimento de Transporte... 4 1.1 Obtendo o Instalador... 4 1.2 Instalando Componentes... 4 1.3 Instalando o CT-e... 4 2 Padrão de Pastas
Leia maisÁrvores de Suporte de Custo Mínimo
Árvores de Suporte de Custo Mínimo Pedro Ribeiro DCC/FCUP 2014/2015 Pedro Ribeiro (DCC/FCUP) Árvores de Suporte de Custo Mínimo 2014/2015 1 / 28 Árvore de Suporte Uma árvore de suporte ou árvore de extensão
Leia maisIntrodução à Transmissão Digital. Funções básicas de processamento de sinal num sistema de comunicações digitais.
Introdução à Transmissão Digital Funções básicas de processamento de sinal num sistema de comunicações digitais. lntrodução à transmissão digital Diferença entre Comunicações Digitais e Analógicas Comunicações
Leia maisSagômetro Digital. Manual de Instalação e Operação
Manual de Instalação e Operação MANUAL DE INSTALAÇÃO E OPERAÇÃO APRESENTAÇÃO: Esse instrumento foi especialmente desenvolvido para realizar medições de Ságitas em Blocos Oftálmicos onde através de software
Leia maisQUALIDATA Soluções em Informática. Módulo CIEE com convênio empresas
FM-0 1/21 ÍNDICE 1. MÓDULO DESKTOP(SISTEMA INSTALADO NO CIEE)... 2 Cadastro de Ofertas de Empregos:... 2 Cadastro de Eventos:... 3 Cadastro de Instituições do Curriculum:... 5 Cadastro de Cursos do Curriculum:...
Leia maisSistemas Operacionais. Andrique Amorim www.andrix.com.br professor@andrix.com.br. Gerência de Arquivos
Andrique Amorim www.andrix.com.br professor@andrix.com.br Gerência de Arquivos Gerência de Arquivos Um sistema operacional tem por finalidade permitir que o usuários do computador executem aplicações,
Leia maisTÉCNICAS DE PROGRAMAÇÃO
TÉCNICAS DE PROGRAMAÇÃO (Adaptado do texto do prof. Adair Santa Catarina) ALGORITMOS COM QUALIDADE MÁXIMAS DE PROGRAMAÇÃO 1) Algoritmos devem ser feitos para serem lidos por seres humanos: Tenha em mente
Leia maisAlgoritmos e Programação _ Departamento de Informática
16 ARQUIVOS Um arquivo corresponde a um conjunto de informações (exemplo: uma estrutura de dados-registro), que pode ser armazenado em um dispositivo de memória permanente, exemplo disco rígido. As operações
Leia maisFluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção
Este procedimento corresponde ao fluxo de trabalho de Indexação de OCR com separação de código de correção no programa de treinamento do Capture Pro Software. As etapas do procedimento encontram-se na
Leia maisConteúdo. SCC5909 Fundamentos de Multimídia. Ementa do Curso. 1. Apresentação da Disciplina. Ementa do Curso. Ementa do Curso
SCC5909 Fundamentos de Multimídia Aula 1 Conteúdo Apresentação da disciplina Conceitos e definições em multimídia Princípios de compressão Prof.: Dr. Rudinei Goularte (rudinei@icmc.usp.br) Instituto de
Leia maisSistema de Arquivos FAT
Sistemas Operacionais Sistema de Arquivos FAT Edeyson Andrade Gomes www.edeyson.com.br FAT A FAT é o sistema de arquivos usado pelo MS-DOS e outros sistemas operacionais baseados em Windows para organizar
Leia maisSumário. 5COP096 Teoria da Computação Aula 8 Pesquisa em Memória Primária
5COP096 Teoria da Computação Aula 8 Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr barbon@uel.br 1 Sumário 1) Introdução à Pesquisa em Memória Primária 2) Pesquisa Sequencial 3) Pesquisa Binária 4) Árvore
Leia maisISO/IEC 12207: Gerência de Configuração
ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que
Leia maisCrash recovery é similar ao instance recovery, onde o primeiro referencia ambientes de instância exclusiva e o segundo ambientes parallel server.
Recover no Oracle O backup e recuperação de dados em um SGBD é de grande importância para a manutenção dos dados. Dando continuidade a nossos artigos, apresentamos abaixo formas diferentes de se fazer
Leia maisPesquisa em Memória Primária. Prof. Jonas Potros
Pesquisa em Memória Primária Prof. Jonas Potros Procedimento para Inserir na Árvore Binária Critérios: Atingir um ponteiro nulo em um processo de pesquisa significa uma pesquisa sem sucesso. O ponteiro
Leia maisAplicativo da Manifestação do Destinatário. Manual
Aplicativo da Manifestação do Destinatário Manual Novembro de 2012 1 Sumário 1 Aplicativo de Manifestação do Destinatário...4 2 Iniciando o aplicativo...4 3 Menus...5 3.1 Manifestação Destinatário...5
Leia mais