1 informatica e mail: [email protected] monica bianchini dipartimento di ingegneria...

71
1 Informatica Informatica E mail: mail: [email protected] [email protected] Monica Bianchini Monica Bianchini Dipartimento di Ingegneria Dipartimento di Ingegneria dell’Informazione dell’Informazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC Il primo calcolatore elettronico, l’ENIAC Electronical Numerical Integrator and Electronical Numerical Integrator and Calculator Calculator nacque per esigenze belliche (per il calcolo di tavole balistiche). Venne commissionato dal Dipartimento di Guerra degli Stati Uniti all’Università della Pennsylvania, ed il suo prototipo fu realizzato alla fine della seconda guerra mondiale, nel 1946. L’ENIAC, per la cui costruzione furono usate 18000 valvole termoioniche, occupava una stanza lunga più di 30 metri e dissipava una quantità enorme di energia elettrica. L’impiego di componenti elettroniche, tuttavia, lo rendeva capace di eseguire 300 moltiplicazioni al secondo, molte più dei precedenti calcolatori elettromeccanici.

Upload: guglielmo-dessi

Post on 01-May-2015

219 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

1

InformaticaInformatica

EEmail: mail: [email protected]@ing.unisi.it

Monica BianchiniMonica BianchiniDipartimento di Ingegneria Dipartimento di Ingegneria dell’Informazionedell’InformazioneENIAC (1946 ca., 30 tonnellate, 17000 valvole)ENIAC (1946 ca., 30 tonnellate, 17000 valvole)

ENIAC

Il primo calcolatore elettronico, l’ENIAC Electronical Numerical Integrator and CalculatorElectronical Numerical Integrator and Calculator nacque per esigenze belliche (per il calcolo di tavole balistiche). Venne commissionato dal Dipartimento di Guerra degli Stati Uniti all’Università della Pennsylvania, ed il suo prototipo fu realizzato alla fine della seconda guerra mondiale, nel 1946.

L’ENIAC, per la cui costruzione furono usate 18000 valvole termoioniche, occupava una stanza lunga più di 30 metri e dissipava una quantità enorme di energia elettrica. L’impiego di componenti elettroniche, tuttavia, lo rendeva capace di eseguire 300 moltiplicazioni al secondo, molte più dei precedenti calcolatori elettromeccanici.

ENIAC

Il primo calcolatore elettronico, l’ENIAC Electronical Numerical Integrator and CalculatorElectronical Numerical Integrator and Calculator nacque per esigenze belliche (per il calcolo di tavole balistiche). Venne commissionato dal Dipartimento di Guerra degli Stati Uniti all’Università della Pennsylvania, ed il suo prototipo fu realizzato alla fine della seconda guerra mondiale, nel 1946.

L’ENIAC, per la cui costruzione furono usate 18000 valvole termoioniche, occupava una stanza lunga più di 30 metri e dissipava una quantità enorme di energia elettrica. L’impiego di componenti elettroniche, tuttavia, lo rendeva capace di eseguire 300 moltiplicazioni al secondo, molte più dei precedenti calcolatori elettromeccanici.

Page 2: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

2

SommarioSommario

UNIVAC UNIVAC (1951)(1951)

UNIVAC

Il primo calcolatore concepito ed impostato come prodotto commerciale, fu realizzato da Eckert e Mauchly (gli stessi costruttori dell’ENIAC) per l’Ufficio Centrale di Statistica degli Stati Uniti.

L’algebra di Boole

Fu teorizzata dal matematico inglese George Boole (18101864) nel lavoro “Analisi Matematica della Logica”, pubblicato nel 1847. Include un insieme di operazioni su variabili logiche (o variabili booleane), che possono assumere i due soli valori true true e falsefalse, indicati da 1 e 0. Le tecniche sviluppate nell’algebra booleana possono essere applicate all’analisi ed alla progettazione dei circuiti elettronici, poiché essi sono realizzati con dispositivi che possono assumere solo due stati.

Su insiemi di costanti e variabili logiche possono essere definite funzioni che hanno esse stesse la caratteristica di assumere due soli valori. La definizione di una funzione booleana può essere effettuata per mezzo di una tabella di veritàtabella di verità, che indica il valore della funzione in corrispondenza di ogni possibile configurazione dei valori degli argomenti. Le funzioni booleane possono essere scritte e manipolate anche con metodi algebrici, dato un insieme di funzioni (o operazioni) elementari tramite le quali poter esprimere ogni altra funzione.

UNIVAC

Il primo calcolatore concepito ed impostato come prodotto commerciale, fu realizzato da Eckert e Mauchly (gli stessi costruttori dell’ENIAC) per l’Ufficio Centrale di Statistica degli Stati Uniti.

L’algebra di Boole

Fu teorizzata dal matematico inglese George Boole (18101864) nel lavoro “Analisi Matematica della Logica”, pubblicato nel 1847. Include un insieme di operazioni su variabili logiche (o variabili booleane), che possono assumere i due soli valori true true e falsefalse, indicati da 1 e 0. Le tecniche sviluppate nell’algebra booleana possono essere applicate all’analisi ed alla progettazione dei circuiti elettronici, poiché essi sono realizzati con dispositivi che possono assumere solo due stati.

Su insiemi di costanti e variabili logiche possono essere definite funzioni che hanno esse stesse la caratteristica di assumere due soli valori. La definizione di una funzione booleana può essere effettuata per mezzo di una tabella di veritàtabella di verità, che indica il valore della funzione in corrispondenza di ogni possibile configurazione dei valori degli argomenti. Le funzioni booleane possono essere scritte e manipolate anche con metodi algebrici, dato un insieme di funzioni (o operazioni) elementari tramite le quali poter esprimere ogni altra funzione.

IntroduzioneIntroduzione

Impatto sociale della tecnologia informaticaImpatto sociale della tecnologia informatica

Il Personal ComputerIl Personal Computer

Il sistema operativoIl sistema operativo

Bit e byteBit e byteSistemi di numerazioneSistemi di numerazione

Aritmetica binariaAritmetica binaria

La rappresentazione dei datiLa rappresentazione dei dati

Page 3: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

3

IntroduzioneIntroduzione

Page 4: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

4

Cenni storici Cenni storici 1 1

Anche se la presenza “invasiva” dell’informatica nella vita di tutti i giorni è un fenomeno relativamente recente, non recente è la necessità di avere a disposizione strumenti e metodi per contare rapidamente, elaborare dati, “calcolare”

Le prime testimonianze di strumenti per contare risalgono a 30.000 anni faI primi esempi di algoritmi metodi di calcolo “automatico” sono stati ritrovati in Mesopotamia su tavolette babilonesi risalenti al 18001600 a.C.

Il sogno di costruire macchine capaci di effettuare calcoli automatici affonda le radici nel pensiero filosofico del ‘600:

Pascal e Leibniz non solo affrontarono il problema di automatizzare il ragionamento logicomatematico (già studiato da Cartesio), ma si cimentarono nella realizzazione di semplici macchine per calcolare

Page 5: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

5

Cenni storici Cenni storici 2 2

La macchina alle differenzemacchina alle differenze, concepita da Babbage nel 1833, rappresenta il primo esempio di macchina programmabile di utilità generale (rimase un progetto: troppo complessa e critica la sua costruzione per le tecnologie dell’epoca)Fu Herman Hollerith, nel 1890, a sviluppare la macchina macchina a schede perforatea schede perforate, per compiere le statistiche del censimento decennale degli Stati Uniti

I dati venivano immessi su schede di cartone opportunamente perforate, le stesse schede che sono state usate fino a due decenni or sonoLe schede venivano successivamente “contate” da una sorta di pantografo che permetteva diversi tipi di elaborazioni (totali, medie, statistiche, etc.)Si impiegarono due anni e mezzo ad analizzare i dati (contro i sette anni del censimento del 1880), nonostante l’incremento di popolazione da 50 a 63 milioni

Page 6: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

6

Cenni storici Cenni storici 3 3

Successivamente la macchina a schede perforate venne utilizzata con successo per i censimenti in Austria, Norvegia e Russia, tanto che Hollerith decise di fondare una società: la Computing Tabulating Computing Tabulating Recording CompanyRecording Company che, nel 1923, divenne l’International Business MachineInternational Business Machine, o IBMIBMCon l’invenzione del tubo a vuototubo a vuoto (1904), del transistortransistor (1947) e, infine, dei circuiti integraticircuiti integrati (1969), l’evoluzione dei computer divenne inarrestabile

Attualmente la potenza di calcolo degli elaboratori decuplica ogni 56 anni

Page 7: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

7

Cenni storici Cenni storici 4 4

La costruzione dei primi calcolatori risale all’inizio degli anni ‘40, grazie alla tecnologia elettronica; i primi esemplari venivano programmati mediante connessioni elettriche e commutatori (ENIACENIAC, Mark I Mark I)

Il nome di Von Neumann è legato invece ai primi calcolatori a programma memorizzato realizzati alla fine degli anni ‘40 (EDSACEDSAC, WhirlwindWhirlwind, IASIAS, UNIVACUNIVAC)

La diffusione dei calcolatori a livello mondiale è avvenuta negli anni ‘60 e ‘70

Page 8: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

8

Cenni storici Cenni storici 5 5

EDSAC (1949)EDSAC (1949)ENIAC (1946)ENIAC (1946) Mark I (1948)Mark I (1948)

UNIVAC (1952)UNIVAC (1952)Whirlwind Whirlwind (1949)(1949)

IAS (1952)IAS (1952)

Page 9: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

9

Cenni storici Cenni storici 6 6

Tuttavia, l’esplosione dell’informatica come fenomeno di massa è datata 1981, anno in cui l’IBM introdusse un tipo particolare di elaboratore: il Personal ComputerPersonal Computer (PC)La particolarità dei PC consisteva nell’essere “assemblati” con componenti facilmente reperibili sul mercato (e quindi a basso costo)

Possibilità per qualsiasi casa produttrice di costruire “cloni”

Attualmente i PC, o meglio il loro componente fondamentale il microprocessoremicroprocessore è utilizzato in tutti i settori applicativi (non solo per elaborare dati):

Telefoni cellulariRicevitori satellitari digitaliBancomat e carte di creditoLavatrici e forni a microonde...

Page 10: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

10

Cenni storici Cenni storici 7 7

L’esigenza di realizzare sistemi di elaborazione dotati di più processori operanti in parallelo è stata sentita fin dalla preistoria dell’informatica

In una relazione, datata 1842, del medico italiano Menabrea sulla macchina analitica di Babbage si fa riferimento alla possibilità di usare più macchine dello stesso tipo in parallelo per accelerare calcoli lunghi e ripetitivi

Solo la riduzione dei costi dell’hardware ha consentito, verso la fine degli anni ‘60, l’effettiva costruzione dei primi supercalcolatori, come le macchine CDC6600CDC6600 e IlliacIlliac e, successivamente, il CrayCray e le macchine vettorialiRecentemente, gli ulteriori sviluppi della microelettronica hanno permesso la realizzazione di calcolatori a parallelismo massiccio e a “grana fine”, caratterizzati dall’interconnessione di decine di migliaia di unità di elaborazione estremamente elementari: le reti neuralireti neurali, capaci di “simulare” il comportamento del cervello umano, sulla base degli studi di McCulloch e Pitts (1943)

Page 11: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

11

Cenni storici Cenni storici 8 8

CDC 6600 CDC 6600 (1963)(1963)

Illiac (1955)Illiac (1955)

PC IBM (1981)PC IBM (1981) Portatile e Palmare Portatile e Palmare (2004)(2004)

Cray 1 (1976)Cray 1 (1976) Cray X1 (2002)Cray X1 (2002)

Page 12: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

12

Che cos’è l’informatica Che cos’è l’informatica 1 1

InformaticaInformatica fusione delle parole informazioneinformazione e automaticaautomatica l’insieme delle discipline che studiano gli strumenti per l’elaborazione automatica dell’informazione e i metodi per un loro uso corretto ed efficace

L’infomatica è la scienza della rappresentazione e L’infomatica è la scienza della rappresentazione e dell’elaborazione dell’informazionedell’elaborazione dell’informazione

L’accento sull’ “informazione” fornisce una spiegazione del perché l’informatica stia rapidamente diventando parte integrante di tutte le attività umane: laddove deve essere gestita dell’informazione, l’informatica è un valido strumento di supportoIl termine “scienza” sottolinea il fatto che, nell’informatica, l’elaborazione dell’informazione avviene in maniera sistematica e rigorosa, e pertanto può essere automatizzata

Page 13: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

13

Che cos’è l’informatica Che cos’è l’informatica 2 2

L’informatica non è, quindi, la scienza e la tecnologia dei calcolatori elettronici: il calcolatore è lo strumento che la rende “operativa”

L’elaboratoreelaboratore (computer, calcolatore) è un’apparecchiatura digitaledigitale, elettronicaelettronica ed automaticaautomatica capace di effettuare trasformazioni sui dati:

DigitaleDigitale: i dati sono rappresentati mediante un alfabeto finito, costituito da cifre (digitdigit), che ne permette il trattamento mediante regole matematicheElettronicaElettronica: realizzazione tramite tecnologie di tipo elettronicoAutomaticaAutomatica: capacità di eseguire una successione di operazioni senza interventi esterni

Page 14: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

14

Caratteristiche dell’elaboratoreCaratteristiche dell’elaboratore

In particolare, l’elaboratore……èè una macchina una macchina, costituita da circuiti elettronici digitali e da componenti elettromeccaniche, ottiche e magnetiche...è velocissimoè velocissimo, nel compiere le operazioni per le quali è stato progettato...è puntualeè puntuale, nell’applicare le regole che conosce...è duttileè duttile e si adatta bene ad eseguire nuove tecniche, purché questo gli venga “spiegato” in modo dettagliato e non ambiguo...ha una buona memoriaha una buona memoria, estremamente ampia ed organizzata in modo razionale...non è intelligentenon è intelligente, qualunque sia l’accezione di questo termine, non è adatta a descriverne le caratteristiche...non è in grado di compiere deduzioninon è in grado di compiere deduzioni, o ragionamenti di altro tipo in modo autonomo...non è in grado di comprendere un problemanon è in grado di comprendere un problema...non è in grado di capire la soluzionenon è in grado di capire la soluzione di un problema, né di capire se la soluzione raggiunta è quella giusta

Page 15: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

15

La macchina universaleLa macchina universale

ProgrammaProgramma: sequenza di operazioni atte a predisporre l’elaboratore alla soluzione di una determinata classe di problemi

Il programma è la descrizione di un algoritmoalgoritmo in una forma comprensibile all’elaboratore

AlgoritmoAlgoritmo: sequenza di istruzioni attraverso le quali un operatore umano è capace di risolvere ogni problema di una data classe; non è direttamente eseguibile dall’elaboratore

L’elaboratore è una macchina universalemacchina universale: cambiando il programma residente in memoria, è in grado di risolvere problemi di natura diversa (una classe di problemi per ogni programma)

Page 16: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

16

L’architettura alla Von NeumannL’architettura alla Von Neumann

La capacità dell’elaboratore di eseguire successioni di operazioni in modo automatico è determinata dalla presenza di un dispositivo di memoriamemoria

Nella memoria sono registrati i datidati e...

...la descrizione delle operazioni da eseguire (nell’ordine secondo cui devono essere eseguite): il programmaprogramma, la “ricetta” usata dall’elaboratore per svolgere il suo compito

Il programma viene interpretato dall’unità di controllounità di controllo

Modello diModello di Von NeumannVon Neumann

Page 17: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

17

Ancora sull’informatica... Ancora sull’informatica...

L’informatica è lo studio sistematico degli algoritmi L’informatica è lo studio sistematico degli algoritmi che descrivono e trasformano l’informazione: la loro che descrivono e trasformano l’informazione: la loro teoria, analisi, progetto, efficienza, realizzazione (ACM teoria, analisi, progetto, efficienza, realizzazione (ACM Association for Computing Machinery) Association for Computing Machinery)

NotaNota: È possibile svolgere un’attività concettualmente di tipo informatico senza l’ausilio del calcolatore, per esempio nel progettare ed applicare regole precise per svolgere operazioni aritmetiche con carta e penna; l’elaboratore, tuttavia, è uno strumento di calcolo potente, che permette la gestione di quantità di informazioni altrimenti intrattabili

Page 18: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

18

Impatto sociale della Impatto sociale della tecnologia informaticatecnologia informatica

Page 19: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

19

Vantaggi e svantaggi dell’Information Vantaggi e svantaggi dell’Information TechnologyTechnology

La tecnologia informatica è l’innovazione più importante in ambito scientifico dall’inizio della Rivoluzione Industriale: fornisce la capacità di completare attività ripetitive rapidamente, facilmente, efficacemente, per migliorare le tecnologie mediche, esplorare lo spazio, per le comunicazioni, etc.

Tuttavia, la tecnologia informatica ha introdotto il rischio, soprattutto a causa di Internet, della perdita della privacy, della penetrazione e diffusione di informazioni riservate, di intromissione non autorizzata nelle comunicazioni, di accesso ai sistemi bancari con possibilità di danni economici catastrofici

Page 20: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

20

Vantaggi Vantaggi 1 1

I calcolatori hanno avuto un impatto immenso sulla società, sull’economia, e nella vita quotidiana

Sono impiegati per l’informazione, nei servizi al consumatore, nelle comunicazioni, nel controllo dei processi, nell’istruzione, negli strumenti medicali e per la ricerca, nella pianificazione delle attività commerciali, nella gestione delle risorse, nelle previsioni meteorologiche, per la progettazione di oggetti di utilità quotidiana, per auto, aerei, satelliti, navicelle spaziali...

Esistono calcolatori palmaricalcolatori palmari in grado di interpretare la scrittura manuale, visualizzare filmati, inviare fax

Page 21: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

21

Vantaggi Vantaggi 2 2

Inoltre, l’informatica ha indotto…Miglioramento delle condizioni di lavoroAumento della velocità di esecuzione e della qualità del lavoro prodottoRiduzione del margine di errore nell’esecuzione di lavori complessiPossibilità di utilizzo di apparecchi programmati per l’esecuzione di lavori rischiosi o in ambienti ostiliRapidità ed economia delle comunicazioniRapidità ed efficacia nella ricerca delle informazioniRiduzione dei supporti cartacei e dell’ingombro degli archivi

Page 22: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

22

Applicazioni medicaliApplicazioni medicali

Controllo delle funzioni vitali primarie e dosaggio farmacologico automatico

TAC (Tomografia Assiale Computerizzata) e Risonanza Magnetica: si elaborano i dati generati da un campo magnetico attorno al corpo umano, e si producono immagini degli organi interni, non rilevabili con i raggi X

Interventi di microchirurgia guidati dall’elaboratore

Interfacce intelligenti di comunicazione per disabili: mouse vocali, riconoscitori vocali, scanner e sintetizzatori vocali

Servizi di telesoccorso e telemedicina

Page 23: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

23

Gestione delle informazioniGestione delle informazioni

Nel 1993, la biblioteca della Facoltà di Legge della Columbia University cancellò il progetto di costruire un edificio da 20mil$ per acquistare un calcolatore da 1.5mil$, per memorizzare i contenuti di decine di migliaia di libri vecchi e soggetti a deterioramento; oggi le biblioteche digitalibiblioteche digitali sono molto diffuse

Riduzione dei consumi/rifiuti cartacei: invece di gettare nel cestino un documento obsoleto, lo si cancella semplicemente da una memoria di massa

Facilità di accesso alla maggior parte dello scibile umano attraverso il World Wide WebWorld Wide Web (WWW)

Page 24: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

24

AutomazioneAutomazione

I robot vengono impiegati nelle catene di montaggio per l’assemblaggio veloce ed accurato dei prodotti di uso quotidiano (elettrodomestici, automobili, etc.)

Vengono impiegati per lavori in ambienti considerati pericolosi o a rischio per le persone (per ispezionare strutture e cavi di comunicazione sui fondali marini)

Il SojournerSojourner ha orbitato intorno a Marte per esplorarlo e le comunicazioni satellitari hanno permesso a milioni di persone di osservarne le immagini al televisore o sullo schermo del proprio calcolatore

Page 25: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

25

Banche e pubbliche Banche e pubbliche amministrazioniamministrazioni

I settori bancario, telefonico e della pubblica amministrazione hanno creato archivi informatizzati e centralizzati che rendono efficiente e trasparente il rapporto con il cittadino:

Consentono l’erogazione immediata di certificatiConsentono la telelettura dei contatori e la domiciliazione bancaria delle bollette, garantendo maggiore fedeltà nel rilevamento dei consumiAttraverso Internet, si può ottenere accesso ai servizi di homehomebankingbanking che permettono, ad esempio, la stampa sulla propria stampante personale del proprio estratto conto

SmartSmartcardcard, tessere “intelligenti” in grado di contenere informazioni ed effettuare operazioni autonomamente (senza riferimento ad un host)

Esempio: servizi integrati per i turisti offerti dal comune di Siena con smartcard per cellulare

Page 26: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

26

TrasportiTrasporti

Le automobili di ultima generazione sono in grado di effettuare un controllo di tutti i loro componenti, segnalando eventuali malfunzionamenti

Gli impianti di frenatura ABS sono controllati da un piccolo computer

Grazie ai sistemi satellitari di geoposizionamento (GPS) ed a particolari sensori di cui può essere dotata l’autovettura, la guida può essere affidata al pilota automatico

Page 27: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

27

CambiamentiCambiamenti

Nel 1940, i primi ricercatori che crearono i calcolatori elettronici stimarono che in USA sarebbero stati necessari non più di una mezza dozzina di elaboratori

Nel 1976, il New York TimesNew York Times pubblicò un libro dal titolo “La scienza nel ventesimo secoloLa scienza nel ventesimo secolo”, nel quale il calcolatore veniva menzionato una sola volta, e indirettamente, in relazione al calcolo delle orbite dei pianeti

Oggi, la presenza del calcolatore è invasiva nella vita quotidiana

Occorre che le persone si adattino alla prospettiva che alcuni lavori stanno diventando/diventeranno obsoleti: taluni temono questo cambiamento e lo considerano distruttivo (software apartheid software apartheid )

Page 28: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

28

L’ambiente digitale: L’ambiente digitale: esiste un grande progetto?esiste un grande progetto?

L’obiettivo apparente dell’ambiente digitaleambiente digitale è quello di fornire voce e dati, multimedialità ed interattività ad alta velocità, ovunque, a basso costo, con affidabilità e sicurezzaMa che aspetto avrà l’ambiente digitale? Alcuni ritengono che sia opportuno seguire un modello regolamentato, mentre altri sono convinti che il motore dell’evoluzione debba essere la competizioneL’espansione progressiva del mondo delle informazioni, in termini di produttività e ricchezza, si accompagna con un inevitabile e crescente divario “digitale”Il divario digitale è una delle tante sfide da affrontare mentre la tecnologia delle informazioni rivoluziona il mondo

Digital DivideDigital Divide è l’espressione utilizzata per definire la disparità esistente nel mondo tra chi ha la possibilità di accedere ed utilizzare le tecnologie dell’informazione e della comunicazione e chi invece, per ragioni differenti, ne è escluso

Page 29: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

29

Il Personal ComputerIl Personal Computer

Page 30: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

30

Hardware Hardware 1 1

a cui si aggiunge l’hardware esterno, costituito da periferiche quali stampanti, mouse o modem

HardwareHardware: componenti fisiche dell’elaboratore; la forma e le prestazioni dell’hardware variano in funzione del tipo di elaboratore

Principali componenti hardware:unità di sistemaschermotastiera

Page 31: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

31

Hardware Hardware 2 2

Unità di sistemaUnità di sistema: è il cuore dell’elaboratore, contiene tutti i circuiti elettronici che ne consentono il funzionamento

CaseCase dell’unità di sistema dell’unità di sistema: contiene un alimentatore, le unità a disco, una scheda di sistema e varie schede adattatrici Scheda di sistemaScheda di sistema: contiene i microprocessori, la memoria, i circuiti di controllo, e i connettori che la collegano alle periferiche (per esempio, la tastiera, lo schermo, il mouse)

Tutti i PC sono composti dagli stessi componenti fisici La struttura per blocchi distinti è la caratteristica peculiare dei PC siano essi desktopdesktop, laptoplaptop, notebooknotebook : unità di sistema, monitor e tastiera rappresentano i blocchi costitutivi fondamentaliUniformità si ha anche nell’aspetto funzionale delle componenti che costituiscono un PC

Page 32: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

32

SoftwareSoftware

SoftwareSoftware: l’insieme dei programmi installati sul computer e delle informazioni che l’elaboratore utilizza per effettuare i suoi compiti

ProgrammiProgrammi: costituiti da una serie di istruzioni che l’elaboratore è in grado di comprendere ed eseguire

il sistema operativosistema operativo (SOSO, Microsoft WINDOWSMicrosoft WINDOWS o LINUXLINUX) fornisce i dati e le routine necessari all’elaboratore per “funzionare” e comunicare con gli utenti; il SO gestisce le operazioni di lettura/scrittura su disco o in memoria, l’output su schermo, interpreta i tasti che vengono premuti sulla tastiera o sul mouse, gestisce file e cartelle, etc.il software applicativosoftware applicativo è l’insieme dei programmi che “girano” sull’elaboratore e svolgono compiti e funzioni specifiche (es.: programmi di elaborazione testi, quali WordWord, database come AccessAccess, fogli elettronici come ExcelExcel, programmi destinati alla comunicazione come Outlook ExpressOutlook Express, destinati alla grafica come AutoCADAutoCAD, o al calcolo come MatlabMatlab, o di utilità, come Norton UtilitiesNorton Utilities)

DatiDati: informazioni interpretate e/o create dai programmi

Page 33: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

33

Il sistema operativoIl sistema operativo

Page 34: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

34

Il sistema operativo Il sistema operativo 1 1

Tutte le piattaforme hardware e software richiedono un sistema operativosistema operativo (SO)

I programmi e le applicazioni in esecuzione sul sistema si rivolgono al SO mediante “richieste”, inoltrate attraverso specifiche system call system call

All’accensione del PC, occorre attendere alcuni istanti prima di poter iniziare a lavorare: durante questa pausa il computer “carica” il SOUn SO è un programma che gestisce processi, amministra la memoria, controlla file e cartelle, sorveglia il flusso di informazioni con le periferiche hardware e presenta all’utente del PC un’interfaccia

Page 35: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

35

Il sistema operativo Il sistema operativo 2 2

Solitamente, il SO è caratterizzato da un nucleo di moduli essenziali, il kernelkernel

La struttura e le funzionalità del nucleo, la sua architettura, hanno una forte influenza sulle modalità di programmazione e sulla cultura tecnica che cresce intorno alle macchine su cui un SO è installatoEsempiEsempi:

SO multiSO multiutenteutente: permettono a più persone di accedere allo stesso computer da postazioni differenti; il SO deve prendersi carico della gestione dei profili d’accesso dei diversi utenti e dei diversi livelli di sicurezza a cui ciascun utente è abilitato, poiché non tutti possono eseguire le stesse operazioni e devono essere previsti differenti profili d’accesso corrispondenti a differenti livelli di permessoSO multiprocessingSO multiprocessing: possono gestire l’utilizzo di più processori sullo stesso computer

Page 36: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

36

Il sistema operativo Il sistema operativo 3 3

Il SO raccoglie ciò che si scrive sulla tastiera, visualizza le informazioni sullo schermo, memorizza i file in cartelle sul disco, si tiene in contatto con le periferiche, mette a disposizione dell’utente un’interfaccia per lavorare; si occupa di assicurare una corretta gestione della memoria e dei processi e della sicurezza dei datiAll’avvio del PC, durante la fase di bootboot, il SO viene caricato in memoria e si attiva per una serie di funzionalità…

In sistemi multitasking, in cui più programmi vengono eseguiti contemporaneamente, determina quali applicazioni debbano essere eseguite e con che ordine di priorità; decide quanto tempo debba essere assegnato a ciascun processo prima del contextcontextswitchswitchGestisce la condivisione della memoria tra le applicazioni in esecuzioneGestisce il flusso di I/O da componenti e periferiche esterne, come hard disk, stampanti e porteInforma l’utente sull’andamento delle procedure attivate e sugli eventuali errori occorsiPrende in carico la gestione di procedure di routine (es., la stampa)

Page 37: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

37

I driver di dispositivo I driver di dispositivo 1 1

Il SO è l’interfaccia tra l’hardware ed il software applicativo e garantisce i servizi di base che assicurano il funzionamento dell’elaboratore

I moderni SO sono costituiti da un numero elevato di piccoli moduli, ognuno dei quali è formato da varie sezioni destinate ad eseguire una singola funzione

Le sezioni che controllano direttamente l’hardware si chiamano driver di dispositivodriver di dispositivo, perché “pilotano” i dispositivi

Ogni driver è formato da una serie di istruzioni che “spiegano” come controllare uno specifico componente hardware

Page 38: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

38

I driver di dispositivo I driver di dispositivo 2 2

All’accensione, il bootbootstrap loaderstrap loader carica il kernel che provvede al caricamento degli opportuni driver dei dispositivi, tra cui quelli per la tastiera, per lo schermo, per il mouse, per le porte, etc.

L’uso dei driver fornisce ai programmi applicativi un’interfaccia indipendente dai dispositivi: lo stesso programma applicativo funziona su tutti i PC che abbiano installato l’apposito driver

Page 39: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

39

ProspettiveProspettive

I SO si stanno evolvendo verso un sempre maggior numero di funzionalità, un tempo accessorie interfacce grafiche utente, funzionalità di interconnessione in rete, di riconoscimento vocale che tendono a collocarsi accanto ai tradizionali canali di inputoutput La sfida maggiore: affidabilitàaffidabilità e sicurezzasicurezzaQuando il PC si blocca, spesso occorre spegnere il computer e attendere che il sistema venga riavviato, con perdita di tempo/dati: oggi i SO tendono a una maggiore protezione nei confronti di questo tipo di eventualità

EsempioEsempio: le nuove versioni di Windows hanno introdotto una modalità più raffinata di protezione del sistema, per cui se un’applicazione si blocca può essere chiusa (in gergo, “terminata”) senza trascinare nella sua caduta l’intero sistema

Page 40: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

40

Bit e byteBit e byte

Page 41: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

41

Sistemi di numerazioneSistemi di numerazione

Sistemi di numerazione posizionaliposizionali:

La basebase del sistema di numerazioneLe cifrecifre del sistema di numerazioneIl numero è scritto specificando le cifre in ordine, ed il

valore del numero dipende dalla posizione relativaposizione relativa delle cifre

EsempioEsempio: Il sistema decimale (Base 10)

Cifre : 0 1 2 3 4 5 6 7 8 90 1 2 3 4 5 6 7 8 9

5641 = 5 103 + 6 102 + 4 101 + 1 100

Posizione: 3 2 1 0

Page 42: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

42

Sistemi in base BSistemi in base B

La base definisce il numero di cifre diverse nel sistema di numerazioneLa cifra di minor valore è sempre lo 0; le altre sono, nell’ordine, 1, 2, …, B1; se B>10 occorre introdurre B10 simboli in aggiunta alle cifre decimali

N = cnBn + cn1Bn1

+…+ c2B2 + c1B1

+c0B0

Un numero frazionariofrazionario N’ si rappresenta con la scrittura (0.c1c2…cn)B

Un numero interointero N si rappresenta con la scrittura (cncn1…c2c1c0)B

N’ = c1B1 + c2B2

+…+ cnBn

cn è la cifra più significativacifra più significativa, c0 la meno significativameno significativa

Page 43: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

43

Numeri interi senza segnoNumeri interi senza segno

Con n cifre, in base B, si rappresentano tutti i numeri interi positivi da 0 a Bn1 (Bn numeri distinti)

EsempioEsempio: base 10

2 cifre: da 0 a 1021 = 99

000102….9899

EsempioEsempio: base 2

2 cifre: da 0 a 221 = 3

00011011

102 = 100 valori

22 = 4 valori

Page 44: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

44

Il sistema binario (B=2)Il sistema binario (B=2)

La base 2 è la più piccola per un sistema di numerazioneLa base 2 è la più piccola per un sistema di numerazione

Cifre: 0 1 bitbit (binary digitbinary digit)

EsempiEsempi:

(101101)2 = 125 + 024 + 123 + 122 + 021 + 120 = 32 + 0 + 8 + 4 + 0 + 1 = (45)10

(0.0101)2 = 021 + 122 + 023 + 124 = 0 + 0.25 + 0 + 0.0625 = (0.3125)10

(11.101)2 = 121 + 120 + 121 + 022 + 123 = 2 + 1 + 0.5 + 0 + 0.125 = (3.625)10

FormaFormapolinomipolinomiaa

Page 45: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

45

Un bytebyte è un insieme di 8 bit (un numero binario a 8 cifre)

Con un byte si rappresentano gli interi fra 0 e 281 = 255

Il byte è l’elemento base con cui si rappresentano i dati nei calcolatori; si utilizzano sempre dimensioni multiple (di potenze del 2) del byte: 2 byte (16 bit), 4 byte (32 bit), 8 byte (64 bit)…

Dal bit al byteDal bit al byte

b7b6b5b4b3b2b1b0

00000000000000010000001000000011…………….1111111011111111

28 = 256 valori distinti

Page 46: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

46

Dal byte ai kilobyteDal byte ai kilobyte

24 = 1628 = 256216 = 65536

210 = 1024 (K=Kilo)220 = 1048576 (M=Mega)230 = 1073741824 (G=Giga)

1 Kb = 210 byte = 1024 byte1 Mb = 220 byte = 1048576 byte1 Gb = 230 byte = 1073741824 byte1 Tb = 240 byte = 1099511627776 byte (TerabyteTerabyte)

Page 47: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

47

Esempi Esempi 1 1

In qualsiasi base, l’essere il sistema di numerazione posizionaleposizionale, impone che combinazioni diverse di cifre uguali rappresentino numeri diversi; ad esempio:

(319)10 (193)10

(152)6 (512)6, infatti... (152)6=162+561+260=36+30+2=(68)10

(512)6=562+161+260=180+6+2=(188)10

Numeri che hanno identica rappresentazione, in basi diverse, hanno valori diversi:

(234)10 (234)8 , infatti...

(234)8 = 282 + 381 + 480 = 264 + 38 + 4 = 128+24+4 = (156)10

Osservazione:Osservazione: più piccola è la base, minore è il valore del numero rappresentato dalla stessa sequenza di cifre

Page 48: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

48

Esempi Esempi 2 2

La notazione posizionale si applica anche per il calcolo del valore dei numeri frazionari, infatti...

(0.872)10 = 8101 + 7102 + 2103

= 8/10 + 7/100 + 2/1000 = 0.8 + 0.07 + 0.002

Quante cifre occorreranno per rappresentare il numero decimale 36 in base 2? Sappiamo che con n cifre si rappresentano i numeri da 0 a 2n1, quindi...

per n=1 (con una cifra) si rappresentano 0...211 0,1per n=2: 0...221 0...3per n=3: 0...231 0...7per n=4: 0...241 0...15per n=5: 0...251 0...31per n=6: 0...261 0...63

Effettivamente possiamo verificare che (100100)2=(36)10, infatti...

100100=125+024+023+122+021+020

= 32 + 4 = 36

con 66 cifre necessarie per la codifica del numero in base 2

Page 49: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

49

Esempi Esempi 3 3

QuesitoQuesito: Per quale base B risulterà vera l’uguaglianza17 + 41 + 22 = 102 ?

Se i numeri sono rappresentati in base B, sappiamo che:(17)B = 1B1+7B0 = B+7

(41)B = 4B1+1B0 = 4B+1

(22)B = 2B1+2B0 = 2B+2

(102)B = 1B2+0B1+2B0 = B2+2

da cui...B+7+4B+1+2B+2 = 7B+10 = B2+2

Si ottiene un’equazione di 2° grado: B2 7B 8 = 0Risolvendo: = 49+32 = 81

B = (7 )/2 =(79)/2 = 1

(7+9)/2 = 8 È la È la soluzione!soluzione!

Non può essere una base

Page 50: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

50

Che valore decimale assume il numero (1C5)16?

Abbiamo detto che per un sistema di numerazione in base B, la cifra di minor valore è sempre lo 0; le altre sono, nell’ordine, 1,2,…,B1; quindi nel sistema esadecimale (in base 16) dovremmo avere le cifre da “0” a “15”...

... che rappesentiamo, con un solo carattere, con A=10, B=11, C=12, D=13, E=14, F=15Quindi...(1C5)16 = 1(16)2 + 12(16)1 + 5(16)0

= 256 + 192 + 5 = (453)10

Esempi Esempi 4 4

Page 51: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

51

Da decimale a binario Da decimale a binario 1 1

Si divide ripetutamente il numero interointero decimale per 2 fino ad ottenere un quoziente nullo: le cifre del numero binario sono i resti delle divisioni; la cifra più significativa è l’ultimo resto

Esempio 1Esempio 1: convertire in binario (43)10

43 : 2 = 21 + 121 : 2 = 10 + 110 : 2 = 5 + 0 5 : 2 = 2 + 1 2 : 2 = 1 + 0 1 : 2 = 0 + 1

resti

bit più significativo

(43)10 = (101011)2

Page 52: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

52

Da decimale a binario Da decimale a binario 2 2

Esempio 2Esempio 2: convertire in binario (270)10

NotaNota (banale): i numeri pari terminano per 0, i dispari per 1

270 : 2 = 135 + 0135 : 2 = 67 + 1 67 : 2 = 33 + 1 33 : 2 = 16 + 1 16 : 2 = 8 + 0 8 : 2 = 4 + 0 4 : 2 = 2 + 0 2 : 2 = 1 + 0 1 : 2 = 0 + 1

(270)10 = (100001110)2

Page 53: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

53

Si moltiplica ripetutamente il numero frazionariofrazionario decimale per 2, fino ad ottenere una parte decimale nulla o, dato che la condizione potrebbe non verificarsi mai, per un numero prefissato di volte; le cifre del numero binario sono le parti intere dei prodotti successivi; la cifra più significativa è il risultato della prima moltiplicazione

Da decimale a binario Da decimale a binario 3 3

EsempioEsempio: convertire in binario (0.21875)10 e (0.45)10 .45 2 = 0.9

.90 2 = 1.8

.80 2 = 1.6

.60 2 = 1.2

.20 2 = 0.4 etc.

(0.45)10 (0.01110)2

.21875 2 = 0.4375.4375 2 = 0.875.875 2 = 1.75.75 2 = 1.5.5 2 = 1.0

(0.21875)10 = (0.00111)2

bit più significativo

Page 54: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

54

Da binario a decimaleDa binario a decimale

Oltre all’espansione esplicita in potenze del 2 forma polinomiaforma polinomia…

…si può operare nel modo seguente: si raddoppia il bit più significativo e si aggiunge al secondo bit; si raddoppia la somma e si aggiunge al terzo bit… si continua fino al bit meno significativo

EsempioEsempio: convertire in decimale (101011)2

(101011)2 = 1 25 + 0 24 + 1 23 + 0 22 + 1 21 + 1 20 = (43)10

bit più significativo

1 x 2 = 2 + 0 2 x 2 = 4 + 1 5 x 2 = 10 + 0 10 x 2 = 20 + 1 21 x 2 = 42 + 1 = 43

(101011)2 = (43)10

EsercizioEsercizio

Si verifichino le seguenti corrispondenze:

a) (110010)2=(50)10

b) (1110101)2=(102)10

c) (1111)2=(17)10

d) (11011)2=(27)10

e) (100001)2=(39)10

f) (1110001110)2=(237)10

EsercizioEsercizio

Si verifichino le seguenti corrispondenze:

a) (110010)2=(50)10

b) (1110101)2=(102)10

c) (1111)2=(17)10

d) (11011)2=(27)10

e) (100001)2=(39)10

f) (1110001110)2=(237)10

Page 55: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

55

Aritmetica binaria: addizioneAritmetica binaria: addizione

0 + 0 = 00 + 1 = 11 + 0 = 11 + 1 = 0 con riporto di 1

EsempiEsempioo 1 11 1

01011011+0101101010110101

riporti

181

91+90

Page 56: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

56

Aritmetica binaria: Aritmetica binaria: moltiplicazionemoltiplicazione

0 x 0 = 00 x 1 = 01 x 0 = 01 x 1 = 1

EsempioEsempio 1100111 x 101 1100111 0000000 11001111000000011

110011 x 10000 = 11001100000000x 16 = 24

Page 57: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

57

Conversioni di baseConversioni di base

Notiamo che valgono le seguenti uguaglianze:(000)2 = (0)8 (0000)2 = (0)16

(001)2 = (1)8 (0001)2 = (1)16

(010)2 = (2)8 (0010)2 = (2)16

(011)2 = (3)8 (0011)2 = (3)16

(100)2 = (4)8 (0100)2 = (4)16

(101)2 = (5)8 (0101)2 = (5)16

(110)2 = (6)8 (0110)2 = (6)16

(111)2 = (7)8 (0111)2 = (7)16

(1000)2 = (8)16

(1001)2 = (9)16

(1010)2 = (A)16

(1011)2 = (B)16

(1100)2 = (C)16

(1101)2 = (D)16

(1110)2 = (E)16

(1111)2 = (F)16

Tabella di Tabella di conversione conversione binario/ottalebinario/ottale

Tabella di Tabella di conversione conversione binario/esadecimalebinario/esadecimale

0001 1010 0101 = (1A5)16

(421)10 = (110100101)2

110 100 101 = (645)8

Page 58: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

58

Sistema esadecimaleSistema esadecimale

La base 16 è molto usata in campo informaticoLa base 16 è molto usata in campo informatico

Una cifra esadecimale corrisponde a 4 bit: si possono rappresentare numeri binari lunghi con poche cifre (1/4)La conversione da binario ad esadecimale è immediata: si raggruppano le cifre binarie in gruppi di 4 (da destra) e si sostituscono le opportune cifre esadecimaliEsempiEsempioo:

(3A2F)16 = 3163 + 10162 + 2161 + 15160 = 34096 + 10256 + 216 + 15 = (14895)10

EsempiEsempioo:

1101 1001 0001 1011 0100 0011 0111 1111 D 9 1 B 4 3 7 F

(D91B437F)16

Page 59: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

59

Da esadecimale a binarioDa esadecimale a binario

Viceversa, la conversione da esadecimale a binario si ottiene espandendo ciascuna cifra con i 4 bit corrispondenti

EsempioEsempio: convertire in binario il numero esadecimale 0x0x0c8f

Notazione usata in molti linguaggi di programmazione per rappresentare numeri esadecimali

0 c 8 f 0000 1100 1000 1111

Il numero binario ha 4 x 4 =16 bit

Page 60: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

60

La rappresentazione dei La rappresentazione dei datidati

Page 61: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

61

Interi con segnoInteri con segno

Il bit più significativo rappresenta il segno: 0 per i numeri positivi, 1 per quelli negativi: esiste uno zero positivo (00…0) e uno zero negativo (10…0)Se si utilizzano n bit, si rappresentano tutti i numeri compresi fra (2n11) e 2n11

EsempioEsempio: con 4 bit si rappresentano i numeri fra 7 ((231)) e +7 (231)

0000 00001 10010 20011 30100 40101 50110 60111 7

1000 01001 11010 21011 31100 41101 51110 61111 7

positivi negativi

Page 62: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

62

Numeri in virgola mobileNumeri in virgola mobile

La rappresentazione dei numeri frazionari in virgola mobile è, utilizzando la notazione scientificanotazione scientifica (es. 120 = 1.2102 = 0.12103),…

Singola precisioneSingola precisione

Il valore è(1)S 0.M 2E

031 2223

23 bit8 bit

Mantissa(o Caratteristica)

Segno Esponente

0 0000111

11111010111000000000000

(125.4375)10 = (1111101.0111)2 = 0.11111010111 27

Page 63: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

63

Codifica dei caratteri alfabeticiCodifica dei caratteri alfabetici

Oltre ai numeri, molte applicazioni informatiche elaborano caratteri (simboli)Gli elaboratori elettronici trattano numeri: si codificano caratteri e simboli per mezzo dei numeriPer poter scambiare dati (testi) in modo corretto, occorre definire uno standard di codificaLa codifica deve prevedere le lettere dell’alfabeto, le cifre numeriche, i simboli, la punteggiatura, i caratteri speciali per certe lingue (æ, ã, ë, è, …)

A 01000001

3 00110011

$ 00100100

Page 64: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

64

Codifica ASCIICodifica ASCII

American Standard Code for Information InterchangeAmerican Standard Code for Information Interchange: definisce una tabella di corrispondenza fra ciascun carattere e un codice a 7 bit7 bit (128 caratteri)I caratteri, in genere, sono rappresentati con 1 byte1 byte (8 bit): i caratteri con il bit più significativo a 1 (quelli con codice dal 128 al 255) fanno parte di un’estensione della codificaLa tabella comprende sia caratteri di controllocaratteri di controllo (codici da 0 a 31) che caratteri stampabilicaratteri stampabiliI caratteri alfabetici/le cifre hanno codici ordinati secondo l’ordine alfabetico/numerico

A 65B 66…….Y 89Z 90

a 97b 98…….y 121Z 122

0 481 49…….8 569 57

cifre maiuscole minuscole

Page 65: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

65

Caratteri di controllo ASCIICaratteri di controllo ASCII

I caratteri di controllo (codice da 0 a 31) hanno funzioni specialiSi ottengono o con tasti specifici o con la combinazione Ctrl+carattereCtrl+carattere

Ctrl Dec Hex Code Nota^@ 0 0 NULL carattere nullo^A 1 1 SOH partenza blocco….. …. …. …… …………………^G 7 7 BEL beep^H 8 8 BS backspace^I 9 9 HT tabulazione orizzontale^J 10 A LF line feed (cambio linea)^K 11 B VT tabulazione verticale^L 12 C FF form feed (alim. carta)^M 13 D CR carriage return (a capo)…… …. … …. …………………….^Z 26 1A EOF fine file^[ 27 1B ESC escape…. …. ….. ….. ………..^_ 31 1F US separatore di unità

Page 66: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

66

Caratteri ASCII stampabiliCaratteri ASCII stampabili

Dec Hx Chr Dec Hx Chr Dec Hx Chr Dec Hx Chr Dec Hx Chr Dec Hx Chr

32 20 SPACE 48 30 0 64 40 @ 80 50 P 96 60 ` 112 70 p33 21 ! 49 31 1 65 41 A 81 51 Q 97 61 a 113 71 q34 22 ” 50 32 2 66 42 B 82 52 R 98 62 b 114 72 r 35 23 # 51 33 3 67 43 C 83 53 S 99 63 c 115 73 s36 24 $ 52 34 4 68 44 D 84 54 T 100 64 d 116 74 t37 25 % 53 35 5 69 45 E 85 55 U 101 65 e 117 75 u38 26 & 54 36 6 70 46 F 86 56 V 102 66 f 118 76 v39 27 ’ 55 37 7 71 47 G 87 57 W 103 67 g 119 77 w40 28 ( 56 38 8 72 48 H 88 58 X 104 68 h 120 78 x 41 29 ) 57 39 9 73 49 I 89 59 Y 105 69 i 121 79 y42 2A * 58 3A : 74 4A J 90 5A Z 106 6A j 122 7A z43 2B + 59 3B ; 75 4B K 91 5B [ 107 6B k 123 7B {44 2C , 60 3C < 76 4C L 92 5C \ 108 6C l 124 7C |45 2D - 61 3D = 77 4D M 93 5D ] 109 6D m 125 7D }46 2E . 62 3E > 78 4E N 94 5E ^ 110 6E n 126 7E ~47 2F / 63 3F ? 79 4F O 95 5F _ 111 6F o 127 7F DEL

NotaNota: il valore numerico di una cifra può essere calcolato come differenza del suo codice ASCII rispetto al codice ASCII della cifra 0 (es. ‘5’ - ‘0’ = 5348 = 5)

Page 67: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

67

Tabella ASCII estesaTabella ASCII estesa

I codici oltre il 127 non sono compresi nello standard originario

Page 68: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

68

Codifica delle immagini Codifica delle immagini 1 1

Le immagini vengono anch’esse codificate come una sequenza di bit: il processo di “traduzione” da un’immagine ad una sequenza binaria prende il nome di digitalizzazionedigitalizzazione

L’immagine è suddivisa in punti o pixel pixel (per pictpicture ure elelement ement ), e ciascun punto viene codificato con un numero, che corrisponde ad un colore o ad un particolare tono di grigio

Si uitilizzano un numero di colori o di sfumature che sia una potenza del 2, in modo da codificare l’informazione legata a ciascun pixel con un opportuno numero di bit

Page 69: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

69

Codifica delle immagini Codifica delle immagini 2 2

Le immagini vengono memorizzate come lunghe sequenze di bit: per interpretarle è necessario conoscere...

...le dimensioni dell’immagine (base ed altezza in numero di pixel), detta anche risoluzionerisoluzione

...il numero di colori (o toni di grigio) disponibili per ogni pixel

Se un immagine viene codificata ad una data risoluzione, potrà comunque essere presentata su un dispositivo a più bassa risoluzione, a patto di “ignorare” parte dell’informazione

Page 70: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

70

Codifica delle immagini Codifica delle immagini 3 3

Come è avvenuto per i caratteri, anche per le immagini sono stati definiti standard di codifica, che assicurano la compatibilità fra sistemi diversi, per quanto concerne la trasmissione e la visualizzazione delle immagini

TIFFTIFF Tagged Image File FormatTagged Image File Format

JPEGJPEG

PNGPNG Portable Network GraphicsPortable Network Graphics

Per ridurre lo spazio necessario per memorizzare le immagini si utilizzano tecniche di compressionecompressione (utili anche per la trasmissione su rete Internet)

Page 71: 1 Informatica E mail: monica@ing.unisi.it Monica Bianchini Dipartimento di Ingegneria dellInformazione ENIAC (1946 ca., 30 tonnellate, 17000 valvole) ENIAC

71

Codifica delle immagini Codifica delle immagini 4 4

Le tecniche di compressione si dividono in...Tecniche lossless:Tecniche lossless: non provocano perdita di informazione, sono adatte a codificare immagini in cui sono presenti ampie aree monocromatiche si codificano in maniera compatta insiemi di pixel aventi le stesse caratteristiche

Tecniche lossly:Tecniche lossly: provocano perdita di informazione, facendo decadere la qualità dell’immagine

Normalmente ai formati JPEG e PNG, molto diffusi per lo scambio di immagini su Internet, si applicano metodi di compressione lossly