I set di caratteri Fabio Vitali. Fabio Vitali - Almaweb 2002 2 Introduzione Qui esaminiamo in breve: Il problema della codifica dei caratteri ASCII (7.

Slides:



Advertisements
Presentazioni simili
BIT e BYTE il linguaggio del computer
Advertisements

© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F1 Primi programmi.
Introduzione al linguaggio C++
Lezione 1 Primi passi in HtML SCRIVERE TESTI di Sergio Capone
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità F2 Selezione.
Unità A1 Informazioni e dati. Obiettivi Conoscere i principali concetti legati allinformatica Saper distinguere tra informazioni e dati Conoscere il concetto.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità A1 Informazioni e dati.
Introduzione alla programmazione A. Ferrari. Il linguaggio C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede.
Selezione - approfondimento
CODIFICA DELLE INFORMAZIONI
Tecniche di compressione dei dati
Gli elementi fondamentali Incominciamo il nostro viaggio …
Trasmissione delle informazioni
Sistema di numerazione binario
Il trattamento informatico di dati multilinguistici Dipartimento di Informatica, 15 aprile 2005 Il trattamento informatico di dati multilinguistici Federico.
Indirizzi delle variabili A ogni variabile sono associati tre concetti fondamentali: il valore memorizzato; il tipo dati di appartenenza; lindirizzo. Il.
Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Rappresentazione dellinformazione su calcolatore Anno Accademico 2009/2010.
Corso di Informatica (Programmazione)
Corso di Informatica per Giurisprudenza
I CODICI.
Codici binari decimali
Università degli Studi di Siena
ANALOGICO e DIGITALE 10°C
Catalogazione e controllo di autorità Linee di evoluzione per le Regole italiane di catalogazione 21 novembre Roma, Istituto della Enciclopedia Italiana,
La rappresentazione dellinformazione. 7-2 Digitalizzare linformazione Digitalizzare: rappresentare linformazione per mezzo di cifre (ad es: da 0 a 9)
10 aprile 2003 Modulo di Comunicazione Mirko Tavosanis
Lezione 5 informatica di base per le discipline umanistiche vito pirrelli Istituto di Linguistica Computazionale CNR Pisa Dipartimento di linguistica Università
informatica di base per le discipline umanistiche
Java base I: Sintassi e tipi di dati
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori (Reti Locali, Internet)
RAPPRESENTAZIONE DELL'INFORMAZIONE
Il computer: struttura fisica e struttura logica
Introduzione al linguaggio assemby del microprocessore a parte
Lo sviluppo del software e i linguaggi di programmazione
Che cos’è un sistema di numerazione?
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
Digitale!!. Musica satellite (TV GPS) Telefoni rete telefonica, internet Video (DVD)
ECDL Patente europea del computer
Nella lettura dislessica la componente più compromessa è la
I computer vengono utilizzati per automatizzare la soluzione di problemi di varia natura trattando le informazioni in entrata (DATI) eseguendo gli opportuni.
Rappresentazione digitale delle informazioni. introduzione.
Alcune scritture e alfabeti
Codifica dell’informazione
Informatica Lezione 1 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Corsi di Laurea in Biotecnologie
INFORmazione autoMATICA
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Codifica binaria dell’informazione Marco D. Santambrogio – Ver. aggiornata al 11.
Fondamenti di Markup Languages: Richiami di HTML © 2005 Stefano Clemente Stefano Clemente
Fondamenti di Informatica1 Memorizzazione su calcolatore L'unità atomica è il bit (BInary DigiT) L'insieme di 8 bit è detta byte Altre forme di memorizzazione:
Rappresentazione della Informazione
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
27 marzo 2003 Modulo di Comunicazione Mirko Tavosanis
La Rappresentazione dell’Informazione
WWW I set di caratteri Fabio Vitali. WWW Fabio Vitali2 Introduzione Qui esaminiamo in breve: u Il problema della codifica dei caratteri u ASCII (7 bit.
La codifica dei numeri.
Io ho voluto dimostrarlo attraverso una delle mie passioni:
Codifica binaria dell’informazione
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Codifica binaria dell’informazione Marco D. Santambrogio – Ver. aggiornata al 24.
Lezione 2 : Basi del linguaggio Variabili. Come visto nella lezione 1 le classi registrano il proprio stato nelle variabili  int cadenza = 0;  int velocita.
Un codice è costituito da un alfabeto (insieme di simboli) parole (combinazioni di simboli validi) nel computer tutti i codici usano come alfabeto le cifre.
1 Sistemi di Numerazione –Tutti i sistemi di numerazione sono fondati sullo stesso principio: la “base” (b) è un numero intero maggiore di 1; la base corrisponde.
© 2015 Giorgio Porcu - Aggiornamennto 01/12/2015 I STITUTO T ECNICO SECONDO BIENNIO T ECNOLOGIE E P ROGETTAZIONE Rappresentazione dell’ Informazione Informazione.
CODIFICA DATI/ISTRUZIONI Nel calcolatore tutta l’informazione e’ codificata in binario (sequenza di 0,1) Perche’ il calcolatore e’ formato da componenti.
NUMERI E E CARATTERI IN BINARIO
Codifica dei caratteri
La rappresentazione delle informazioni
Transcript della presentazione:

I set di caratteri Fabio Vitali

Fabio Vitali - Almaweb Introduzione Qui esaminiamo in breve: Il problema della codifica dei caratteri ASCII (7 bit ed esteso) ISO/IEC e UNICODE UCS e UTF

Fabio Vitali - Almaweb I set di caratteri La globalizzazione di Internet ha proposto il problema di rendere correttamente gli alfabeti di migliaia di lingue nel mondo. Il problema non si pone per i protocolli, che trattano byte interpretati da applicazioni, anche se “per caso” sono significativi per persone di lingua inglese quando scritti in US-ASCII Il problema si pone per il contenuto dei protocolli, in quanto deve essere evidente e non ambiguo il criterio di associazione di un blocco di bit ad un carattere di un alfabeto.

Fabio Vitali - Almaweb I caratteri (1) Il carattere è l’entità atomica di un testo scritto in una lingua umana. In alfabeti diversi i caratteri hanno particolarità diverse: Negli alfabeti di derivazione greca (greco, latino e cirillico), esiste la distinzione tra maiuscole e minuscole, ignota altrove Negli alfabeti di derivazione latina si sono inventati segni particolari sulle lettere per soddisfare le esigenze delle varie lingue (accenti, segni diacritici, ecc.). In ebraico, le vocali sono modificatori di lettere di consonanti In arabo, la giustapposizione di lettere diverse nella parola provoca una differenziazione della forma delle lettere stesse. In cinese, è possibile creare nuovi caratteri come composizione di altri caratteri esistenti.

Fabio Vitali - Almaweb I caratteri (2) Lingue diverse associano ai caratteri ruoli diversi: rappresentano di volta in volta suoni, sillabe, intere parole. Esistono tre aspetti di un carattere: La sua natura (di difficile attribuzione: a e à sono la stessa lettera?) La sua forma, o glifo (con ambiguità: P ha un suono negli alfabeti latini, e un altro negli alfabeti greci e cirillici; inoltre i font creano forme anche molto diverse per le stesse lettere). Il suo codice numerico: in base ad una tabella piuttosto che un’altra, lettere diverse, di alfabeti diversi, hanno lo stesso codice numerico, o la stessa lettera ha codici diversi.

Fabio Vitali - Almaweb Codifiche per gli alfabeti occidentali (1) Baudot usato nei telex e telescriventi, era un codice a 5 bit, per un totale di 32 caratteri possibili: alfabeto maiuscolo, qualche punteggiatura, spazio. EBCDIC (Extended Binary Characters for Digital Interchange Code) Codifica proprietaria (IBM, 1965) a 8 bit, viene usata nei suoi mainframe. Contemporaneo dell'ASCII IBM è molto più sicura della superiorità dei suoi chip, e si azzarda fin dagli anni cinquanta ad usare tutti e 8 i bit del byte. 56 codici di controllo e molte locazioni vuote, mentre le lettere dell'alfabeto NON sono contigue, ma organizzate in modo da avere il secondo semibit che varia da 0 a 9 (0x081-0x89, 0x91-0x099, 0xA1-0xA9, ecc.).

Fabio Vitali - Almaweb Codifiche per gli alfabeti occidentali (2) ASCII (American Standard Code for Information Interchange) standard ANSI (X ) che definisce valori per 128 caratteri, ovvero 7 bit su 8. Nello standard originale il primo bit non è significativo ed è pensato come bit di parità. ASCII possiede 33 caratteri (0-31 e 127) di controllo, tra cui molte ripetizioni inutili Backspace (sposta la testina indietro di un carattere, utile nelle telescriventi - 08 [0x08]) e Delete (cancella tutti i buchi di un carattere in una scheda perforata, cioè tutti buchi, [0x7F]). Carriage Return (riporta la testina all'inizio di riga - 13 [0x0C]) e Form Feed (gira il carrello di una riga - 14 [0x0D]) che causano molte confusioni nei sistemi moderni. Gli altri 95 sono caratteri dell'alfabeto latino, maiuscole e minuscole, numeri e punteggiatura.

Fabio Vitali - Almaweb Codifiche per gli alfabeti occidentali (3) ISO Una codifica ISO per permettere l'uso di caratteri nazionali europei in un contesto sostanzialmente ASCII. Presenta una International Reference Version (ISO 646 IRV) identica all'ASCII e un certo numero di versioni nazionali ISO 646 lascia 12 codici liberi per le versioni nazionali dei vari linguaggi europei. Ogni tabella nazionale la usa per i propri fini. I caratteri sacrificati sono: # ã \ ü ¬ ` { | } ~

Fabio Vitali - Almaweb ISO 8859/1 (ISO Latin 1) Estensioni di ASCII sono state fatte per utilizzare il primo bit e accedere a tutti i 256 caratteri. Nessuna di queste è standard ISO 8859/1 (ISO Latin 1) è l’unica estensione standard e comprende un certo numero di caratteri degli alfabeti europei come accenti, ecc. ISO Latin 1 è usato automaticamente da HTTP e qualche sistema operativo. Ovviamente ISO Latin 1 è compatibile all’indietro con ASCII, di cui è un estensione per i soli caratteri >127.

Fabio Vitali - Almaweb Unicode e ISO/IEC (1) Esistono dozzine di codici a 8 bit per alfabeti non latini (e.g., cirillico, greco e giapponese semplificato) e molti codici a 16 bit per linguaggi orientali (giapponese e cinese). Il compito di creare uno standard unico è stato affrontato indipendentemente da due commissioni di standard, Unicode e ISO/IEC Unicode usa 2 byte per ogni carattere, per un totale di caratteri. Questo basta per coprire la maggioranza degli alfabeti, ma non il cinese. ISO utilizza uno schema a lunghezza variabile fino a quattro byte, con 2 miliardi di combinazioni. Anche Unicode 2.0 ha introdotto schemi a lunghezza variabile.

Fabio Vitali - Almaweb Unicode e ISO/IEC (2) ISO è composto di vari schemi di codifica. Il più semplice utilizza un numero fisso di byte: UCS-2 è uno schema a due byte, ed è identico a Unicode (questo non è garantito in futuro). E’ un’estensione di ISO Latin 1. UCS-4 è uno schema a 31 bit in 4 byte, estensione di UCS-2. E’ diviso in gruppi, piani, righe e celle. ASCII T ISO Latin 1 Unicode / UCS UCS-4 gruppopianorigacella

Fabio Vitali - Almaweb Unicode e ISO/IEC (3) In UCS-4 esistono dunque piani di caratteri ciascuno. Il primo piano, o piano 0, è noto come BMP (Basic Multilingual Plane) ed è ovviamente equivalente a UCS-2 e a Unicode. Tuttavia, nella maggior parte dei casi i testi scritti utilizzeranno soltanto uno degli alfabeti del mondo. In questo caso, sono necessari soltanto una minima parte dei caratteri di UCS-4. Inoltre, la maggior parte degli alfabeti sta nel BMP, e la maggior parte dei documenti sono scritti in ASCII. E’ dunque uno spreco utilizzare quattro byte per ogni carattere in questo caso.

Fabio Vitali - Almaweb Unicode e ISO/IEC (4) Sono quindi stati sviluppati due schemi di compressione per utilizzare un byte o due byte per UCS-4. Questi schemi a lunghezza variabile si chiamano UTF (UCS Transformation Format). UTF-8 utilizza 1 byte per caratteri ASCII a 7 bit, e da due a sei byte per i caratteri estesi. Il primo bit deve essere a uno. All’inizio viene scritta la lunghezza in byte dell’intero carattere, poi il carattere viene scritto in blocchi di sei bit preceduti dal codice ‘10’ per indicare a prosecuzione del carattere. Unicode è equivalente a UCS-2, ma ha un meccanismo a lunghezza variabile chiamato UTF-16, che permette di accedere ai primi 16 piani di UCS UTF UCS lunghezzaBit di continuazione

Fabio Vitali - Almaweb Conclusioni Qui abbiamo parlato di set di caratteri A lunghezza fissa, 7, 8 bit (ASCII, EBCDIC, ISO Latin 1) A lunghezza fissa, 16, 31 bit (UCS-2, UCS-4) A lunghezza variabile, 2-6 * 8 bit (UTF-8, UTF-16)

Fabio Vitali - Almaweb Riferimenti N. Bradley, The XML companion, Addison Wesley, 1998, cap. 13. K. Simonsen, Character Mnemonics & Character Sets, RFC 1345, IETF, June 1992