Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Informatica Generale A-D, Appunti di Elementi di Informatica

Appunti di informatica generale sezione A-D della professoressa Valentina Gliozzi.

Tipologia: Appunti

2023/2024

In vendita dal 21/11/2024

valentina-del-fante
valentina-del-fante 🇮🇹

4.3

(8)

10 documenti

1 / 78

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
INFORMATICA GENERALE
1-RAPPRESENTAZIONE DELLE INFORMAZIONI
I computer non elaborano solamente numeri, infatti possono elaborare anche testi, immagini,
suoni, filmati… È sufficiente che l’informazione sia rappresentabile in modo digitale.
Rappresentazione analogica usa un SEGNALE analogico:
– insieme continuo di valori, trasmettono molte
informazioni
– sensibili alle interferenze
– Es.: variazione di luminosità di una lampadina
alogena
Rappresentazione digitale usa SEGNALE digitale:
-insieme discreto di valori, ad esempio due stati
– semplici da distinguere
– Es.: interruttore on/off
• Analogico: basato su segnale analogico e su una qualche similitudine o analogia tra la
rappresentazione e l'informazione rappresentata
• Digitale: basato su una rappresentazione simbolica di informazioni discrete
Vantaggi del digitale:
– semplice
– non ambiguo (non sensibile alle interferenze)
– riproducibile senza errori
Segnale binario: segnale discreto su due valori
bit: binary digit (cifra binaria)
Elemento di base per rappresentare le informazioni
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e

Anteprima parziale del testo

Scarica Informatica Generale A-D e più Appunti in PDF di Elementi di Informatica solo su Docsity!

INFORMATICA GENERALE

1-RAPPRESENTAZIONE DELLE INFORMAZIONI

I computer non elaborano solamente numeri, infatti possono elaborare anche testi, immagini, suoni, filmati… È sufficiente che l’informazione sia rappresentabile in modo digitale. Rappresentazione analogica usa un SEGNALE analogico:

  • insieme continuo di valori, trasmettono molte informazioni
  • sensibili alle interferenze
  • Es.: variazione di luminosità di una lampadina alogena Rappresentazione digitale usa SEGNALE digitale: -insieme discreto di valori, ad esempio due stati
  • semplici da distinguere
  • Es.: interruttore on/off
  • Analogico: basato su segnale analogico e su una qualche similitudine o analogia tra la rappresentazione e l'informazione rappresentata
  • Digitale: basato su una rappresentazione simbolica di informazioni discrete Vantaggi del digitale:
  • semplice
  • non ambiguo (non sensibile alle interferenze)
  • riproducibile senza errori Segnale binario: segnale discreto su due valori bit: binary digit (cifra binaria) Elemento di base per rappresentare le informazioni

Perché il sistema binario?

  • è semplice
  • può rappresentare (quasi) ogni informazione COME VIENE REALIZZATO UN BIT: •presenza/ assenza di carica elettrica •direzione di magnetizzazione •presenza/ assenza di corrente/tensione •passaggio/non passaggio di luce Un bit può assumere due valori (0 e 1), quindi con un bit possiamo rappresentare due informazioni Es.: sì/no, on/off, su/giù, vero/falso Associamo il valore di un bit con un’informazione Ad es., 0=no 1=sì, oppure 0=giù 1=su, oppure 0=off 1=on, oppure 0=falso 1=vero La corrispondenza informazione e valore del bit è una convenzione! Come fare per rappresentare più di due informazioni usando i bit? Combiniamo più bit per rappresentare ogni informazione; 2 bit = 4 informazioni: 00, 01, 10, 11 Es.: Un esame con 4 possibili esiti: insufficiente (00), sufficiente (01), buono (10), ottimo (11) Con 1 bit si rappresentano 2 informazioni (2^1) Con 2 bit si rappresentano 4 informazioni (2^1 * 2 = 2^2) Con 3 bit si rappresentano 8 informazioni (2^2 * 2 = 2^3) Con N bit si rappresentano 2^N informazioni. Problema inverso: se abbiamo K informazioni, di quanti bit abbiamo bisogno per rappresentarle? Dobbiamo utilizzare un numero di bit sufficiente per esprimerle tutte, per cui dobbiamo scegliere N in modo che 2N >=K

N.B.: Siamo abituati a usare il sistema a base 10 per rappresentare i numeri. Pertanto è comune “confondere” numero e numerale. Se vogliamo evitare ambiguità, usiamo la notazione 3704^ Binario: “alfabeto” di 2 cifre di base -> 0, 1

  • il numero di cifre coincide con il numero di bit
  • numerale 101^2: – 1 volta 2^2, 0 volte 2^1, 1 volta 2^
  • La potenza di 2 da considerare dipende dalla posizione della cifra Notazione posizionale: la posizione di una cifra in un numerale indica il suo peso in potenze di 2 I pesi sono:
  • 2^0 = 1 (posizione 0)
  • 2^1 = 2 (posizione 1)
  • 2^2 = 4 (posizione 2)
  • 2^3 = 8 (posizione 3) Massimo numero rappresentabile: il numero più grande esprimibile con un dato numero di cifre (decimali, binarie, …) NON coincide con il numero di informazioni rappresentabili! Per esempio, con 1 bit, rappresento 2 valori ma valore massimo è 1 (< 2) Con 2 bit rappresento 4 valori diversi ma numero massimo è 3 (<4) [Questo è perché si incomincia a contare da 0] Analogamente, con 2 cifre decimali rappresento 100 numeri, ma il numero più grande (massimo numero rappresentabile) è 99^10. Numeri a N cifre
  • Sistema decimale:
  • 10N numeri diversi
  • da 0^10 a 10^N – 1 –massimo numero rappresentabile: 10^N – 1
  • Sistema binario:
  • 2^N numeri diversi
  • da 0^2 a 2^N – 1
  • massimo numero rappresentabile: 2^N – 1 CONVERSIONE DA BASE 2 A BASE 10 È sufficiente moltiplicare ogni bit per il suo peso e sommare. Esempio: 11010^2 = 12^4 + 12^3 + 02^2 + 12^1 + 0*2^0 = 16 + 8 + 2 = 26 Somma di potenze di 2! Osservazione: un numero binario che termina con 0 è pari, altrimenti (con 1) è dispari Perché? Perché gli altri addendi sono sicuramente pari! CONVERSIONE DA BASE 10 A BASE 2 In altre parole, come “comporre” il numero come somma esclusivamente di potenze di 2? Come 6 = 4 + 2 cioè sono settati a 1 i bit in
  • posizione 2 (perché 4=22) e
  • posizione 1 (perché 2=21) Quindi 6^10 = 110

Problema: insufficiente per rappresentare i caratteri più comuni (per es. lettere accentate) Soluzione: codice ASCII esteso che usa 8 bit -> al massimo 2^8 (256) caratteri Esempio di codifica ASCII A partire da una sequenza di bit in codice ASCII, si vuole conoscere la rappresentazione in caratteri: 011010010110110000100000010100000110111100101110 si divide la sequenza in gruppi di 8 bit (ogni gruppo è un byte) 01101001 01101100 00100000 01010000 01101111 00101110 I L P O. le cifre da 0 a 9 rappresentate in ASCII sono caratteri (simboli) e non quantità numeriche, quindi:

  • NON possono essere utilizzate per rappresentare quantità da utilizzare in calcoli aritmetici
  • Non è così strano: tutti i giorni usiamo i numeri telefonici, che sono sequenze di simboli, con essi non facciamo calcoli aritmetici
  • Di conseguenza, se chiediamo al computer di ordinare alfabeticamente (lessicograficamente) le stringhe (sequenze di caratteri) “3” e “20431”, le metterà in questo ordine:
  1. 20431
  2. 3 Problema: 256 caratteri dell’ASCII esteso sono insufficienti per alcuni sistemi di scrittura (per es. quello cinese o giapponese). Quindi non esiste un unico ASCII esteso, ma uno (o più) diverso per ogni lingua (per es., ISO 8859-1 per Europa occidentale, ISO 8859-2 per Mitteleuropa, ISO 8859-7 per Grecia, KOI-8 / ISO 8859-5 / CP1251 per Russia, EUC e Shift-JIS per Giappone, …). È problematico rappresentare testi complessi, che comprendano sistemi di scrittura diversi. Soluzione: definire uno standard (cioè una convenzione) che
  • utilizzi più bit
  • comprenda tutti i sistemi di scrittura

Unicode -Copre (quasi) tutti i sistemi di scrittura (e le lingue) del mondo, compreso IPA e Braille. -“Unicode provides a unique number for every character, no matter what the platform, no - matter what the program, no matter what the language.” -Utilizza fino a 4 byte per ogni carattere -Attualmente sono rappresentati oltre 98000 caratteri UTF (Unicode Transformation Format) definisce come codificare il numero di un carattere Unicode come sequenza di bit

  • UTF-
  • alcuni caratteri codificati con 8 bit, altri con 16 bit, altri (pochi) con 32 bit
  • compatibile con ASCII: i caratteri codificati con 8 bit coincidono con i caratteri ASCII
  • quindi, la più usata per e-mail e pagine web
  • UTF-
  • alcuni caratteri codificati con 16 bit, altri (pochi) con 32 bit
  • usata internamente da Windows CODIFICA DELLE IMMAGINI Vi sono varie tecniche utilizzate per memorizzare in modo digitale un’immagine, e poi elaborarla. Per semplificare, immaginiamo di dover codificare un’immagine in bianco e nero (dual tone, con soli due colori). Immagine da codificare. Immagine suddivisa da una griglia formata da linee a distanza costante.

La rappresentazione di un’immagine mediante la codifica dei pixel viene chiamata codifica bitmap. E le immagini non in bianco e nero? Grigie o a colori?

  • Con un solo bit per pixel si possono codificare solo due colori (tipicamente bianco e nero)
  • Per codificare più informazioni, dobbiamo usare più bit Ad es., tonalità di grigio: per ogni quadratino si stabilisce il livello medio di grigio si codifica ogni livello di grigio (se uso 4 bit -> 16 livelli di grigio, se uso 8 bit -> 256 livelli di grigio, se uso k bit -> 2^k tinte diverse) Problema: come associare una rappresentazione binaria a ogni possibile colore di un pixel? Modello più usato: Truecolor (o RGB)
  • Tre colori primari: rosso, verde e blu (Red, Green, Blue: RGB)
  • N.B.: sono diversi dai colori primari usati per gli inchiostri
  • Gli altri colori vengono ottenuti sommando i tre colori primari
  • Monitor e televisori funzionano così
  • 256 valori possibili per ogni colore primario (da 0 a 255) Occupazione delle immagini a colore: Es.: immagine 150 x 200 pixel truecolor Occorrono 3 byte (24 bit) per pixel, quindi occupa 150 * 200 * 3 byte = 90˙000 byte Esistono tecniche di compressione delle immagini che consentono di ridurre la dimensione dello spazio occupato.

Per esempio, una tecnica consiste nel codificare aree dello stesso colore in modo “abbreviato” è un esempio di tecnica lossless , senza perdita di informazione cioè, quando decomprimiamo l’immagine, questa è identica all’originale Formati compressi lossless: gif, tiff, png Le tecniche di compressione lossy , invece, causano perdita di informazione, cioè, il processo di compressione “scarta” alcuni dati quando si decomprime l’immagine, questa è diversa dall’originale: è degradata in qualità A quale scopo? La compressione lossy permette di risparmiare molto più spazio della lossless Formati compressi lossy: jpeg, png CODIFICA DELLE IMMAGINI IN MOVIMENTO

  • Codifica di sequenze di immagini (dette fotogrammi o frame)
  • Visto lo spazio elevato richiesto, occorrono tecniche di memorizzazione efficienti: per esempio, sono memorizzate solo le differenze tra un fotogramma e l’altro
  • Esistono vari formati, soprattutto lossy: mpeg, divx, avi (microsoft), quicktime (apple) (memorizzano anche i suoni) CODIFICA DEI SUONI
  • Il suono è uno dei mezzi principali di comunicazione
  • Anche i suoni possono essere codificati in digitale
  • Un suono è un’onda di pressione che si ha in presenza di un mezzo (l’aria)
  • Quando un suono viene rilevato dall’orecchio o da un microfono, viene trasformato in uno stimolo – o segnale – elettrico

Nell’esempio, non tutte le combinazioni di 4 bit sono visualizzate (e usate) Ogni campione viene approssimato al livello più vicino, al valore indicato con il cerchio. Ogni campione sarà quindi espresso dal numero binario corrispondente al livello più prossimo. Il segnale rappresentato con la sequenza 0001 0011 0100 0010 0010 0011 0010 0000 1101 1101 1101 0001 0010 0010 sarà quindi ricostruito con il seguente segnale:

  • La sequenza dei valori numerici ottenuta dai campioni è quindi digitalizzata. Si ha una discretizzazione in tempo e una sul valore
  • CD musicali: 44100 campionamenti al secondo, 16 bit per campione
  • Diversi formati: mov, wav, mpeg, mp3, avi, midi

4-ARCHITETTURA ELABORATORI

Tipi di calcolatori:

  • Computer multiutente (multiuser)
  • supercomputer: i più potenti, basati su centinaia o migliaia di processori che lavorano in parallelo
  • mainframe e server: svolgono funzioni centralizzate; ad essi sono collegati altri computer o terminali
  • minicomputer: simili a mainframe ma meno potenti
  • terminali: postazioni senza capacità di elaborazione, devono essere collegati a un server
  • Personal computer –desktop e workstation –notebook –tablet –smartphone Architettura dell’elaboratore:
  1. La CPU (Central Processing Unit) esegue i programmi eseguendo le istruzioni di cui sono composti
  2. Avviene l’input/output e la memorizzazione su memoria secondaria LA MEMORIA PRINCIPALE: LA RAM Insieme alla CPU è una componente fondamentale del calcolatore
  • Permette di memorizzare sia il programma che i dati
  • Fisicamente è formata da componenti elettronici (transistor, resistenze, condensatori) miniaturizzati
  • Ogni unità elementare può trovarsi a due diversi livelli di tensione elettrica (o carica del condensatore): ecco il corrispettivo fisico del bit È strutturata in una sequenza di celle (o locazioni) di memoria
  • Ogni cella memorizza un byte
  • Le celle sono numerate in sequenza: indirizzo Quali operazioni si possono compiere sulla memoria?
  • lettura del contenuto di una cella
  • scrittura in una cella
  • Per leggere e scrivere in una cella è necessario conoscerne l’indirizzo
  • Specificando l’indirizzo di una cella, la CPU è in grado di leggere e/o modificare il valore del byte memorizzato in quella cella
  • Lo spazio di indirizzamento è l’insieme o il numero delle celle indirizzabili direttamente
  • Il numero di celle indirizzabili è una potenza di 2; con:
  • 16 bit si indirizzano 2^16 = 65.536 celle
  • 32 bit si indirizzano 2^32 = 4.294.967.296 celle …
  • numero di celle indirizzabili = numero di informazioni rappresentabile con un certo numero di bit
  • Random Access Memory (RAM): memoria ad accesso casuale
  • Perché si chiama “ad accesso casuale”?
  • Si può accedere direttamente alle varie celle, una volta noto il loro indirizzo
  • Il tempo necessario per accedere ad una cella è lo stesso, indipendentemente dalla posizione della cella nella sequenza
  • Il termine “random” (casuale) indica proprio il fatto che non vi sono differenze nell’accesso alle varie celle della memoria La RAM è veloce: il tempo di lettura/scrittura di una cella è compreso – in media – tra 5 e 30 nanosecondi (miliardesimi di secondo = 10^-9 s)
  • La RAM è volatile: formata da componenti elettronici, se viene tolta l’alimentazione anche per un breve periodo di tempo (frazioni di secondo) tutto ciò che contiene viene perso (e la macchina deve ripartire)
  • La RAM è relativamente costosa LA ROM Read-Only Memory, memoria in sola lettura
  • Non può essere modificata (a meno che non sia di un tipo particolare, EPROM)
  • Non è volatile
  • Veloce quasi quanto la RAM
  • Solitamente usata per memorizzare programmi e dati necessari all’avvio dell’elaboratore
  • programmi di bootstrap (avvio dell’elaboratore)
  • configurazione del sistema LA MEMORIA CACHE Stesse proprietà della RAM, ma:
  • più veloce (ma più piccola e costosa) della RAM
  • localizzata tra la CPU e la RAM
  • memorizza i dati di uso più frequente, evitando alla CPU di doverli recuperare tutte le volte dalla RAM
  • influisce pesantemente sulle prestazioni e sul costo della CPU
  • dimensioni tipiche sono 512 KB, 1 MB, 2 MB

La CPU è formata da:

  • Control Unit
  • Arithmetic Logic Unit
  • Registri La Control Unit (CU) È la parte più importante del processore. Funzioni:
  • esegue le istruzioni dei programmi
  • coordina le attività del processore
  • controlla il flusso delle istruzioni tra il processore e la memoria NON ha il compito di controllare il risultato delle istruzioni! Ciclo di Fetch-decode-execute La CU svolge la sua attività in modo ciclico; Ciclo di fetch-decode-execute (o ciclo della macchina): L’esecuzione (passo execute) comporta l’invio di comandi opportuni all’unità relativa:
  • Calcoli → Arithmetic Logic Unit
  • Lettura/scrittura dati → memoria
  • Acquisizione/stampa → dispositivi di I/O La frequenza con cui è eseguito il ciclo di fetch-decode-execute è scandita dal clock (orologio interno): ad ogni impulso di clock la CU esegue un ciclo
  • La velocità di elaborazione di una CPU dipende dalla frequenza del suo clock

La Arithmetic Logic Unit (ALU)

  • Esegue le operazioni di tipo aritmetico (ad es. somme) e logico (ad es. confronti)
  • Preleva gli operandi dai registri e deposita il risultato delle operazioni in uno (o più) registri I Registri
  • Piccole celle di memoria con tempi di accesso molto più bassi rispetto alla memoria primaria
  • Mantengono le informazioni necessarie per eseguire l’istruzione corrente •Hanno dimensione di 16, 32 o 64 bit (da cui CPU a 16, 32 o 64 bit)
  • Sono in numero molto limitato (10, 20, 64 o 128), visto che sono all’interno della CPU
  • Si dividono in registri:
  • generali Sono in numero ridotto: 8, 16, 32, 64, 128... in funzione dell’architettura Sono usati come celle di memoria temporanea; contengono gli operandi e i risultati delle istruzioni in esecuzione In alcune architetture, alcuni registri hanno funzioni privilegiate; ad es. l’accumulatore in genere contiene il risultato delle operazioni
  • speciali (PC, IR) Program Counter :
  • È un registro speciale
  • Contiene l’indirizzo in memoria principale della prossima istruzione da eseguire
  • Quando un programma viene avviato, l’indirizzo della prima istruzione viene caricato nel Program Counter
  • All’esecuzione di un’istruzione, il PC viene modificato per contenere l’indirizzo della prossima istruzione da eseguire (non necessariamente quella immediatamente successiva) Instruction Register:
  • È un registro speciale
  • Contiene l’istruzione attualmente in esecuzione
  • La CU legge l’istruzione contenuta in IR e la esegue