Esercitazioni M1 UD2 LAB
Transcript
Esercitazioni M1 UD2 LAB
ESERCITAZIONE UNITÀ DIDATTICA 2 La codifica in binario Lunghezza di un codice binario Per rappresentare M simboli diversi (parole) mutuamente esclusivi, con un codice binario, la lunghezza m della sequenza di bit del codice deve soddisfare la seguente relazione: Dove: log indica il logaritmo, cioè l’esponente che deve essere dato alla base per ottenere M=2m indica il valore intero superiore, cioè l’arrotondamento per eccesso. Esempi a) Dato M = 15 simboli calcolare la lunghezza del codice binario. Soluzione Applicando la relazione (1) si ottiene Dato che il log2 15 =3,xx (con 23 =9 e 24=16) quindi viene arrotondato per eccesso a 4. b) Dato M = 50 simboli calcolare la lunghezza del codice binario. Soluzione Applicando la relazione (1) si ottiene Dato che il log2 50=5,xx (con 25=32 e 26=64) quindi viene arrotondato per eccesso a 6. c) Dato M = 100 simboli calcolare la lunghezza del codice binario. Soluzione Applicando la relazione (1) si ottiene Dato che il log2 100=6,xx (con 26=64 e 27=128) viene arrotondato per eccesso a 7. d) Dato M = 128 simboli calcolare la lunghezza del codice binario. Soluzione Applicando la relazione (1) si ottiene Dato che il log2 128 =7 e 27 è proprio uguale a 128. Individua la lunghezza minima di un codice che permetta di rappresentare le lettere dell’alfabeto anglosassone ed i numeri. Soluzione Le lettere dell’alfabeto anglosassone sono 26, quindi se consideriamo che minuscole e maiuscole devono avere una codifica diversa otteniamo simboli =2 x 26 = 52 Aggiungendo i dieci simboli per le cifre numeriche otteniamo simboli = 52 + 10 =62. Applicando la relazione (1) si ottiene Dato che il log2 62 =5,xx (con 25=32 e 26=64) quindi viene arrotondato per eccesso a 6. Il codice ASCII Nel codice ASCII (American Standard Code for Information Interchange) oltre ai caratteri vengono codificati anche simboli di controllo, parentesi e punteggiatura per un totale di 128 caratteri: utilizza quindi 7 cifre binarie (la cifra più significativa viene messa a 0). Vai all’indirizzo codificato nel seguente messaggio binario: 01101000 01110111 01110010 00101110 01110100 01110111 01110100 01100011 01110100 00101110 01100010 01101111 01110000 01100011 01101001 01101101 00111010 00101111 00101111 01110111 01101111 01101110 01110110 01100101 01101110 01100001 01110010 01111001 00101111 01100101 01100001 01101101 01100100 00100000 00100000 01100101 01101001 Decodifica il seguente messaggio 01000011 01110101 01101101 01110100 01100011 01101111 01101111 01100001 01100001 01101000 01101101 01101110 01110010 00100000 01101001 11101000 01101100 01101100 00100000 00100000 01100001 01101100 01100110 01100010 00100000 01100001 01101001 (dove 11101000 = è in unicode). ASCII ART Con ASCII ART si intende l’utilizzo dei caratteri ASCII per convertire una immagine: si realizza un disegno solo utilizzando un miscuglio di lettere, numeri e simboli che non sembrano avere alcun significato fino a quando vi allontanate e guardate l’immagine nel suo insieme. Guardate da vicino le due immagini seguenti e successivamente allontanate il foglio E’ facile riconoscere Monna Lisa e Marilyn Monroe La ASCII Art ha una lunga storia ed i primi programmi stampavano queste immagini sul Commodore 64 a metà degli anni 80. a) Un semplice programma che trasforma le immagini in caratteri ASCII lo trovi all’indirizzo http://www.glassgiant.com/ascii/ Prova a trasformare una immagine TIFF, una JPEG ed una BMP aventila stessa dimensione a video in caratteri ASCII Cosa puoi osservare? b) Scarica ora dalle risorse on-line al sito http://www.hoepliscuola.it nella sezione dedicata a questo corso il programma XVI32, che è un semplice editor di file binari. Apri un semplice file di tipo bmp e prova a modificare l’immagine per trasformarla in una ASCII ART, come nel seguente esempio:
Documenti analoghi
Introduzione ASCII oggi
di controllo, bensì come indicatore: analizza ogni byte, e se al posto del vecchio bit di parità c'è 0, allora il byte sarà
letto come ASCII a 7 BIT e teoricamente compatibile anche da programmi ob...