Codificarea și Decodificarea Datelor

Referat
8/10 (3 voturi)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 5 în total
Cuvinte : 1458
Mărime: 8.28KB (arhivat)
Publicat de: Iorgu Nae
Puncte necesare: 0
A fost sustinut in Facultatea de Stiinte Economice din Brasov

Extras din referat

Cand auzim acest titlu prima oara, imaginea care ne apare in minte este un calculator de la NASA care codifica date confidentiale si zece mii de rusi care se chinuie sa le decodifice. De fapt, codificarea si decodificarea datelor are multe aplicatii, extinse in toata informatica: de la arhivatoare, pana la asigurarea securitatii datelor in transmiterea lor prin retea sau internet.

Haideti sa incepem cu arhivarea datelor, operatiune fara care multi nu si-ar putea imagina

Compresia datelor consta in transformarea unui “text” de intrare, in “cod”, intr-un fisier comprimat. Pentru a fi folositoare, o schema de compresie trebuie sa poata fi transformata din fisierul comprimat inapoi in fisierul text initial. Numai trebuie spus, ca ar fi bine ca fisierul comprimat sa fie mai mic decat cel initial.

Exista mai multi algoritimi de compresie, fiecare bazandu-se pe un principiu diferit. Vom exemplifica unele din acestea:

Sistemele de compresie bazate pe dictionare, inlocuiesc grupuri de simboluri (cuvinte) din textul initial, cu codificari de lungime prestabilita.Un exemplu elocvent al acestui tip de sistem este tehnica LZW, care inlocuieste siruri de caractere predefinite de lungime nelimitata, cu codificari pe 9-16 biti. Nu vom dezvolta aceasta tehnica, deoarece necesita o implementare migaloasa si de durata.

Metodele statistice de compresie abordeaza lucrurile complet diferit. Aceste codifica simbolurile pe rand, in ordinea in care sa gasesc acestea in text. Simbolurile sunt transformate in coduri de lungime variabila. Lungimea codificarii variaza in functie de frecventa (numarul de aparitii) simbolului. Cele cu frecventa mica sunt codificate pe mai multi biti, iar cele cu frecvanta mare, pe mai putini.

In practica, linia de diferentiere dintre cele doua metode nu este totdeauna foarte clara. Despre unele fisiere nu se poate spune ca se arhiveaza mult mai bine cu una din cele doua variante, de aceea exista tehnici care sunt un hibrid intre cele doua, dand astfel rezultate mult mai bune. In continuare, ne vom axa totusi doar pe codificarea aritmetica pentru a implementa o schema pur statistica.

Codificarea Huffman:

Nu este de ajuns sa putem calcula frecventa unui simbol intr-un fisier, avem nevoie si de o metoda prin care sa profitam de aceasta informatie. Probabil cea mai raspandita metoda de codificare bazata pe statistica este codificarea Huffman. D.A. Huffman a publicat o lucrare in 1952 in care descria o metoda de creare a unui tabel de codificare a simbolurilor tinand cont de frecventa acestora. Tabelul va produce sigur cel mai mic fisier de iesire posibil, folosind codificari de lungime fixa. Alte sisteme de codificare, cum ar fi Shannon-Fano, au fost demonstrate a fi non-optime.

Codificarea Huffman atribuie o codificare fiecarui simbol, rezultatele fiind de la 1 bit lungime pana la o codificare de lungime considerabil mai mare decat a simbolului initial, depinzand strict de frecventa acestuia. Numarul optim de biti care trebuie sa fie folositi este logaritmul in baza 2 din 1/p, unde p este probabilitatea de aparitie. Deci, daca probabilitatea aparitiei unui simblo este 1/256, cum ar fi de exemplu intr-un sir aleator de biti, atunci numarul optim de biti pentru fiecare caracter este log in baza 2 din 256 adica 8. Daca probabilitatea ajunge pana la 1/2, atunci numarul optimi de biti este 1.

Problema cu aceasta schema este ca numarul de biti folositi in codificare trebuie sa fie un numar intreg. Deci daca avem o probabilitate de 1/3 atunci numarul optim de biti ar fi 1.6. In acest caz trebuie ales ori 1 ori 2 biti pentru codificare si oricare alegere duce la o dimensiune de codificare mai mare decat cea teoretic posibila.

Sistemul Huffman mai are inca o mica problema. Odata cu fisierul codificat, trebuie transmisa si schema de codificare, pentru ca face decodificarea posibila. Aceasta se adauga la marimea fisierului final. Pentru aceasta problema exista o rezolvare partiala, numita metoda schemelor adaptate, pe care totusi nu o vom prezenta deoarece necesita cunostinte avansate de programare dinamica.

Codificarea Aritmetica: mod de functionare

Abia acum cca. zece ani s-a demonstrat o metoda care poate concura cu sistemul Huffman. Codificare aritmetica trece peste ideea de a inlocui un simbol cu un cod predefinit. In schimb, transforma un input cu un singur numar floating point. Cu cat e mai lung si mai complex mesajul (input-ul), cu atat mai multi biti se folosesc pentru reprezentarea numarului. Si totusi, abia recent s-a gasit o metoda practica de a implementa un asemenea sistem pe un calculator cu registrii de dimensiune fixa.

Iesirea (output-ul) unui astfel de proces este un singur numar intre 0 si 1. Acest numar poate fi decodat pentru a recrea mesajul initial. Pentru a crea fisierul final, simbolurile codificate trebuie sa aiba probabilitati asignate. De exemplu, daca am de gand sa codific mesajul “BILL GATES”, as avea o distributie a frecventelor dupa cum urmeaza:

Preview document

Codificarea și Decodificarea Datelor - Pagina 1
Codificarea și Decodificarea Datelor - Pagina 2
Codificarea și Decodificarea Datelor - Pagina 3
Codificarea și Decodificarea Datelor - Pagina 4
Codificarea și Decodificarea Datelor - Pagina 5

Conținut arhivă zip

  • Codificarea si Decodificarea Datelor.doc

Alții au mai descărcat și

Anliza și Prelucrarea Imaginilor

Introducere Prelucrarea de imagini este un domeniu care îsi pastreaza dinamismul în ciuda trecerii anilor. Dezvoltarile tehnologice au facilitat...

Arhitectura calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Autentificarea prin semnătură digitală

Introducere O semnatura digitala reprezinta o informatie care il identifica pe expeditorul unui document. Semnatura digitala este creata prin...

Sistem de Prognosticare a Unei Avarii

Acest sistem calculeaza gradul de avariere a unei cladiri în cazul unui cutremur, precum si posibila necesitate a reconstructiei cladirii (partiala...

Te-ar putea interesa și

Arbori Huffman - Implementare în C++

INTRODUCERE În lucrarea de fața tratez metodele Huffman de codificare și comprimare a datelor, necesare pentru elaborarea unor algoritmi optimi...

Anliza și Prelucrarea Imaginilor

Introducere Prelucrarea de imagini este un domeniu care îsi pastreaza dinamismul în ciuda trecerii anilor. Dezvoltarile tehnologice au facilitat...

Relații cu Mass Media

Introducere Prin lucrarea de faţă “Relaţii în Mass Media” s-a urmărit aducerea în prim plan a modurilor de informare a tuturor oamenilor despre...

Influența mass-media asupra tinerilor

1.TEMA CERCETĂRII Această cercetare îşi propune să studieze influenta pe care o au mijloacele mass-media asupra modului de a gandi, de a...

Codificatoare

Argument Electronica digitala este un domeniu de studiu si aplicatii cu o foarte pronuntata dinamica. Aceasta pronuntata dinamica este determinata...

Lucrare de cercetare la metode evolutive de căutare și optimizare - algoritmi evolutivi - genetici

I. APLICAREA ALGORITMILOR EVOLUTIVI ÎN PROBLEME DE PROIECTARE ARHITECTURALĂ Paşii cei mai importanţi în realizarea unui proiect/plan de...

Publicitatea - educație socială sau profit

Prin lucrarea de faţă “Publicitate, educaţie socială sau profit organizaţional” s-a urmărit aducerea în prim plan a modurilor de informare a...

Ai nevoie de altceva?