Codice (teoria dell'informazione): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Pagina sostituita con 'ATTIVA PROTEGGI ACCIAIFICA INDIVISIBILE OTTIMO OTTIMO IN F. IL COLLEGAMENTO IPERTESTUALE .'
m Annullate le modifiche di Simone lucioli (discussione), riportata alla versione precedente di ZéroBot
Riga 1:
{{F|informatica|ottobre 2011}}
ATTIVA PROTEGGI ACCIAIFICA INDIVISIBILE OTTIMO OTTIMO IN F. IL COLLEGAMENTO IPERTESTUALE .
 
In tutte le attività nelle quali si trattano [[Informazione|informazioni]], come nelle [[telecomunicazioni]] (e di conseguenza anche nell'[[elettronica]] e nell'[[informatica]]), nell'organizzazione delle biblioteche e in molte attività gestionali, per '''codice''' si intende una modalità di ''rappresentazione'', mediante un opportuno insieme di stringhe (o di simboli), di un insieme di oggetti materiali o un insieme di informazioni tendenzialmente più complesse delle stringhe (o dei simboli) che le ''codificano''.
 
==Significati==
Il termine codice viene usato con due significati:
*''procedimento di codifica'', riguarda la modalità seguita per assegnare univocamente ad ogni elemento dell'insieme da rappresentare una stringa che lo rappresenta;
*''insieme delle codifiche'', denota l'insieme delle stringhe rappresentative (questo è il significato utilizzato nel capitolo della matematica chiamato [[teoria dei codici]] (v. [[94-XX]]).
 
Un codice si dice efficiente quando utilizza un numero di simboli strettamente necessario per codificare l'informazione, mentre all'opposto si dice ridondante quando usa un numero di simboli abbondanti, e quindi più di quelli necessari, ma utili per semplificare la generazione e la interpretazione delle informazioni.
 
==Esempi==
[[Image:International Morse Code.svg|right|thumb|Codice Morse, caratteri principali]]
Un esempio tradizionale di codice è il [[Codice Morse|Morse]], appartenente alla [[codifica dei caratteri]] ed utilizzato nei primi tempi della [[telegrafia]] ([[1840]]): in cui ad ogni lettera dell'[[alfabeto inglese]] (l'insieme di informazioni da rappresentare) viene assegnata una sequenza di punti e linee (gli elementi dell'alfabeto usato per la codifica).
 
Altre esempi di codifica sono la [[Digitale (informatica)|codifica digitale]] di un [[segnale (fisica)|segnale]] [[analogico]] ovvero la [[conversione analogico-digitale]], la [[codifica di sorgente]] e la [[codifica di canale]].
 
==Utilità==
L'univocità della rappresentazione gioca un ruolo cruciale in tutte le applicazioni della codifica (il procedimento di trasportare gli elementi dalla rappresentazione di partenza a quella definita dal codice) e di decodifica (l'inverso).
I codici risultano utili quando la comunicazione verbale normale non è sufficiente o non è praticabile. Con un'opportuna codifica è possibile descrivere realtà ben più complesse del lessico del linguaggio naturale, come ad esempio un'immagine o una serie di suoni.
 
Con l'avvento dell'informatica e delle telecomunicazioni i codici hanno preso ulteriore piede per la [[trasmissione (telecomunicazioni)|trasmissione]] affidabile e la [[compressione dati]], anche se già all'epoca del [[telegrafo]] venivano usate degli [[Acronimo|acronimi]] per trasmettere frasi di uso particolarmente frequente, ad esempio:
*BYOXO (''Are you trying to weasel out of our deal?'' - Stai cercando di uscire dal nostro accordo?)
*LIOUY (''Why do you not answer my question?'' - Come mai non rispondi alla mia domanda?)
*AYYLU (''Not clearly coded, repeat more clearly.'' - Codificato male, per favore ripetere più chiaramente).
 
==Definizione formale==
Sia ''S'' un insieme finito di elementi detto [[alfabeto]] del codice, come ad esempio le due facce con una moneta (T, C). Un insieme ''A'' di sequenze costruite giustapponendo uno o più elementi di ''S'' è un codice. Ogni elemento di ''A'' è una parola del codice e il numero di elementi dell'alfabeto usati per costruirla ne indica la lunghezza. Perché un codice abbia utilità e senso, tuttavia, dev'essere associato con qualche meccanismo controllabile (formula, algoritmo, elenco ben definito, ...) a un insieme di possibili dati che deve rappresentare fedelmente e dunque averne la stessa [[cardinalità]]. Per esempio, l'insieme {T, C, TC, TT} è un codice e può essere usato come codifica dei numeri 0, 1, 2, 3.
 
==Proprietà==
Giustapponendo più parole del codice si ha un messaggio costruito su tal codice, come ad esempio TTC o TCTC. Dipendentemente dal fatto che un qualsiasi messaggio possa essere scomposto in modo che esista un'unica serie di parole del codice che la compongano il codice si dice univocamente decodificabile o meno. Il codice di cui sopra non è univocamente decodificabile poiché il messaggio TT potrebbe essere scomposto come la ripetizione 2 volte della parola T o la parola stessa del codice TT. Al contrario, {C, TC, TTC, TTTC} è un codice univocamente decodificabile.
Un codice in cui tutte le parole hanno la stessa lunghezza si dice [[codice a blocchi]] o in caso contrario [[codice a lunghezza variabile]].
 
Altre proprietà di un codice sono la capacità di [[codice correttore|correggere errori]], [[codice compressore|comprimere i messaggi]], essere [[codice lineare|lineari]] o meno, essere utilizzabili in [[crittografia]] o essere [[istantanei]].
 
Lo studio dei codici in maniera sistematica come elementi fondamentali per la [[teoria dell'informazione]] e della trasmissione è nato nel [[1948]] con il lavoro di [[Claude Shannon]].
 
==Codice di Gödel==
In [[matematica]], un [[codice di Gödel]] è alla base della dimostrazione del [[Teorema di incompletezza di Gödel]]. In tal caso, l'idea consiste nel trasformare notazione matematica in un numero naturale ([[numero di Gödel]]).
 
==Voci correlate==
* [[Codifica dei caratteri]]
 
==Altri progetti==
 
{{Interprogetto|commons=Category:Codes}}
 
{{Portale|ingegneria|matematica}}
[[Categoria:Teoria dei codici]]
[[Categoria:Teoria dell'informazione]]
 
[[be:Код]]
[[bg:Код]]
[[bs:Kod]]
[[ca:Codi]]
[[ckb:کۆد]]
[[cs:Kód]]
[[da:Kode]]
[[de:Code]]
[[el:Κώδικας (υπολογιστές)]]
[[en:Code]]
[[eo:Kodo]]
[[et:Kood]]
[[fa:کد]]
[[fi:Koodi]]
[[he:קוד]]
[[hr:Kod]]
[[hu:Kód]]
[[id:Kode]]
[[ja:符号]]
[[kk:Кода (электроника)]]
[[ko:부호 (정보)]]
[[la:Codex (semiotica)]]
[[nn:Kode]]
[[no:Kode]]
[[pl:Kod]]
[[ru:Код]]
[[sh:Код]]
[[simple:Code]]
[[sk:Kód (informatika)]]
[[sr:Код]]
[[sv:Kodning]]
[[th:รหัส]]
[[uk:Код]]
[[vi:Mã hiệu]]