Corso di Informatica A
(A-L)
Obiettivi del corso
Corso di Laurea in Scienze e Tecniche Psicologiche a.a 2005/06
Basi dell’informatica: z codifica dell’informazione z hardware: struttura di un computer z software: sistemi operativi z comunicazione tra computer, reti di computer (internet)
Prof. ssa Maria Luisa Sapino Dip. Informatica Univ.Torino C.so Svizzera 185,Torino email:
[email protected] tel: 011/670 67 45 home:http://www.di.unito.it/~mlsapino/ zhttp://www.di.unito.it/~mlsapino/PSICO2005
Obiettivi del corso (segue) Software applicativo di base per z (videoscrittura) z fogli di calcolo z database z (navigazione in internet) z
Testi per il corso Testo adottato: z
D. P. Curtin, K. Foley, K. Sen, C. Morin Informatica di base, Mc Graw Hill, Terza edizione
Altri testi consigliati: z
L. Console, M. Ribaudo, Introduzione all'informatica, Torino Utet libreria, Nuova edizione 2004.
z
P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone, Basi di Dati, McGraw-Hill, 1996
Esercitazioni in laboratorio (?????)
Aspetti dell’informazione La codifica delle informazioni
Lezione 1
Quando abbiamo a che fare con informazione di qualunque tipo distinguiamo: z contenuto (messaggio/significato) z
rappresentazione (codifica/significante)
z
supporto materiale
1
Il numero dieci
Significato e significante
10 (dieci nella numerazione araba)
Pane
X (dieci nella numerazione romana)
Cane
10
Analogico versus digitale
Analogico/digitale: una definizione z
Analogico: basato sulla similitudine tra la rappresentazione e l'informazione rappresentata
z
Digitale: basato su una rappresentazione simbolica di informazioni discrete (informazioni discrete: suddivise in unità atomiche)
Omino perplesso
Esempi
Codifica di informazioni (discrete) A = linguaggio din codifica
z z z z z z
Orologio a lancette/ orologio a cifre il disco di vinile/ il CD La fotocamera tradizionale/quella digitale il telefono tradizionale/ la linea ISDN La TV tradizionale/quella digitale etc.........
codifica: funzione che associa un elemento di A ad ogni informazione
informazioni
codifica
A
2
Esempio: codifica con A = {
,} La lampadina è spenta
accesa
Siamo in primavera estate autunno inverno
Quante informazioni posso rappresentare con stringhe di lunghezza n su un alfabeto di k simboli? Esempio A = {
} Quante sono le stringhe di lunghezza n se A ha k simboli? Data la stringa s = x1 … xn-1 esistono k stringhe della forma x1 … xn-1 y con y ∈A
perciò se le stringhe di lunghezza n-1 sono m, allora quelle di lunghezza n
Esercizio
sono m × k. Facendo variare n: zn
= 1 allora k
zn
= 2 allora k × k …
zn
= 3 allora k × k × k
z
L’alfabeto A = {
} : quante informazioni posso codificare con stringhe di lunghezza 5? 45 = 1024
in generale le stringhe di lunghezza n saranno: k × … × k (n volte) = kn In conclusione: con un alfabeto di k simboli posso rappresentare kn informazioni con stringhe di lunghezza n
Rappresentazione delle informazioni all’interno dei computer
Le ragioni di questa scelta sono prevalentemente di tipo tecnologico, infatti i due simboli corrispondono a: due stati di polarizzazione di una sostanza magnetizzabile; z i due stati di carica elettrica di una sostanza z al passaggio/non passaggio di corrente attraverso un cavo conduttore; z al passaggio/non passaggio di luce attraverso un cavo ottico z etc.….. z
z z z
I computer usano una codifica binaria. L’alfabeto e’ costituito da soli due simboli, indicati convenzionalmente con 0 e 1 L’entità minima di informazione (0 e 1) prende il nome di bit (binary digit - cifra binaria). Mediante un bit possiamo rappresentare due informazioni
3
Unità di Misura: bit, Byte, …
Codifica binaria Con una sequenza di n bit possiamo rappresentare
1 bit
= stringa su {0,1} di lunghezza unitaria
1 byte
= stringa su {0,1} di lunghezza 8
2n informazioni
1 KB = 210 = 1024 byte 1 MB = 220 =1024 Kbyte (un milione di byte circa) 1 GB = 230 =1024 Mbyte (un miliardo di byte circa) 1 TB = 240 =1024 Gbyte (mille miliardi di byte circa)
Viceversa: se devo rappresentare k> 1 informazioni diverse, quanti bit sono necessari? Ho bisogno di un numero di bit n tale che 2n ≥ k Questo numero è ⎡log2k⎤
z k
2 3 4 5 6 7 8 9 16 17 32 33
⎡log2k⎤ 1 2 2 3 3 3 3 4 4 5 5 6
La codifica dei caratteri z
Dobbiamo rappresentare le lettere dell’alfabeto
z
L’insieme di simboli comunemente usati nell’alfabeto anglosassone, incluse le cifre numeriche, lettere maiuscole e minuscole, simboli di punteggiatura, parentesi e operatori aritmetici, può essere codificato usando 7 bit (27 = 128)
z
Il metodo di codifica più diffuso tra i produttori di hardware e di software prende il nome di codice ASCII (American Standard Code for Information Interchange)
{a,b,c, …A,B,C, %, &, (, ),…0,1,2,3,.,; ?+,-*,...}
Esercizio z
Quanti bit sono necessari per codificare i giorni della settimana? E i giorni del mese?
z
I giorni della settimana sono 7: ho bisogno di 3 bit I giorni del mese sono al massimo 31: ho bisogno di 5 bit
z
La codifica dei caratteri: Il codice ASCII 0000000 NUL 0000001 SOH 0000010 STX 0000011 ETX 0000100 EOT 0000101 ENQ 0000110 ACK 0000111 BEL 0001000 BS 0001001 HT 0001010 NL 0001011 VT 0001100 NP 0001101 CR
0001110 SO 0001111 SI 0010000 DLE 0010001 DC1 0010010 DC2 0010011 DC3 0010011 DC4 0010101 NAK 0010110 SYN 0010111 ETB 0011000 CAN 0011001 EM 0011010 SUB 0011011 ESC
0011100 FS 0011101 GS 0011110 RS 0011111 US 0100000 SP 0100001 ! 0100010 " 0100011 # 0100100 $ 0100101 % 0100110 & 0100111 ' 0101000 ( 0101001 )
4
La codifica dei caratteri: Il codice ASCII
La codifica dei caratteri: Il codice ASCII 0101010 *
0111001 9
1000111 G
1010101 U
1100011 c
1110001 q
0101011 +
0111010 :
1001000 H
1010110 V
1100100 d
1110010 r
0101100 ,
0111011 ;
1001001 I
1010111 W
1100101 e
1110011 s
0101101 -
0111100 <
1001010 J
1011000 X
1100110 f
1110100 t
1011001 Y
1100111 g
1110101 u
0101110 .
0111101 =
1001011 K
1011010 Z
1101000 h
1110110 v
0101111 /
0111110 >
1001100 L
1011011 [
1101001 i
1110111 w
0110000 0
0111111 ?
1001101 M
1011100 \
1101010 j
1111000 x
0110001 1
1000000 @
1001110 N
1011101 ]
1101011 k
1111001 y
0110010 2
1000001 A
1001111 O
1011110 ^
1101100 l
1111010 z
1011111 _
1101101 m
1111011 {
0110011 3
1000010 B
1010000 P
1100000 `
1101110 n
1111100 ¦
0110100 4
1000011 C
1010001 Q
1100001 a
1101111 o
1111101 }
0110101 5
1000100 D
1010010 R
1100010 b
1110000 p
1111110 ~
0110110 6
1000101 E
1010011 S
1111111 DEL
0110111 7
1000110 F
1010100 T
0111000 8
Il codice ASCII
Problema inverso: decodifica quale testo è codificato da una data sequenza?
Sebbene 7 bit siano sufficienti per codificare l’insieme di caratteri di uso comune, il codice ASCII standard utilizza 8 bit, il primo dei quali è sempre 0 Codici ASCII con 1 iniziale sono utilizzati per codificare caratteri speciali, (caratteri accentati etc.) ma la loro codifica non è standard.
– si divide la sequenza in gruppi di otto bit (un byte); – si determina il carattere corrispondente ad ogni byte 011010010110110000000000011100000110111100101110
Codifica della parola cane
01100011 01100001 01101110 01100101 c a n e
011010010110110000000000011100000110111100101110 i
Osserva che: La decodifica è possibile (e facile) perchè i caratteri sono codificati con stringhe binarie di lunghezza costante
l
P
o
.
Altri formati z
EBCDIC (Extended binary Coded Decimal Interchange Code) formato alternativo a 8 bit
z
UNICODE nuovo standard a 16 bit contiene simboli per la maggiorparte degli alfabeti esistenti (compreso arabo, giapponese, etc…)
z
MSWINDOWS codifica proprietaria della Microsoft simile a UNICODE
5
Codifica di un documento
Esercizio z z
Un testo di 400 caratteri occupa 1600 bit, quanti caratteri ha l’alfabeto?
z
Ogni carattere occupa 1600/400 = 4 bit con 4 bit posso codificare 24 = 16 caratteri
z
z
z
Un documento può essere formattato: – i caratteri hanno una dimensione, uno stile, un font – il testo può essere giustificato, avere margini, tabulazioni, centrature, incolonnato etc. Tutte queste caratteristiche possono venire codificate e memorizzate insieme al testo formato solo-testo (text-only) rimuove tutte le informazioni di formattazione aggiuntive
6