Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni...

18
28/02/2007 Introduzione ai sistemi informatici 1 Introduzione ai sistemi informatici 3/ed Donatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl Informatica Informatica Pietro Storniolo [email protected] Introduzione ai sistemi informatici 3/ed Donatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl Il problema Il problema L’informazione informazione è oggi oggetto di grande interesse: oggi oggetto di grande interesse: si parla, per esempio, di societ società dell dell’informazione informazione ... si parla, per esempio, di tecnologia dell tecnologia dell’informazione informazione ... ma ci si accorge immediatamente che quello di ma ci si accorge immediatamente che quello di informazione informazione è un concetto diversificato e un concetto diversificato e complesso ... complesso ... nel 1999 GM ha trattato più MIPS di IBM nel 1996 il bilancio relativo alla gestione dell’informazione nel sistema sanitario USA è stato superiore all’intero bilancio del settore dei mass-media Ma cosa significa Ma cosa significa informazione informazione? Introduzione ai sistemi informatici 3/ed Donatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl Una transizione Una transizione L’evoluzione economico evoluzione economico-industriale della industriale della societ società occidentale può essere interpretata occidentale può essere interpretata secondo tre fasi secondo tre fasi • società pre pre-industriale industriale: gestione della materia materia • società industriale industriale: gestione dell’energia energia • società post post-industriale industriale: gestione dell’informazione informazione

Transcript of Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni...

Page 1: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 1

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

InformaticaInformatica

Pietro [email protected]

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Il problemaIl problemaLL’’informazione informazione èè oggi oggetto di grande interesse:oggi oggetto di grande interesse:• si parla, per esempio, di societsocietàà delldell’’informazioneinformazione ...• si parla, per esempio, di tecnologia delltecnologia dell’’informazioneinformazione ...

ma ci si accorge immediatamente che quello di ma ci si accorge immediatamente che quello di informazioneinformazione èè un concetto diversificato e un concetto diversificato e complesso ...complesso ...• nel 1999 GM ha trattato più MIPS di IBM• nel 1996 il bilancio relativo alla gestione dell’informazione

nel sistema sanitario USA è stato superiore all’intero bilancio del settore dei mass-media

Ma cosa significa Ma cosa significa informazioneinformazione??

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Una transizioneUna transizioneLL’’evoluzione economicoevoluzione economico--industriale della industriale della societsocietàà occidentale può essere interpretata occidentale può essere interpretata secondo tre fasisecondo tre fasi• società prepre--industrialeindustriale: gestione della materiamateria• società industrialeindustriale: gestione dell’energiaenergia• società postpost--industrialeindustriale: gestione

dell’informazioneinformazione

Page 2: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 2

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

UnUn’’altra transizionealtra transizioneLe Le retireti da sempre costituiscono per la societda sempre costituiscono per la societàà uno strumento uno strumento indispensabile di trasporto, scambio e comunicazioneindispensabile di trasporto, scambio e comunicazione

…… dapprima reti per il trasferimento di dapprima reti per il trasferimento di personepersone e e beni materialibeni materiali::• reti stradali,• reti fluviali,• acquedotti,• reti fognarie,• …

…… quindi anche reti quindi anche reti infrastrutturaliinfrastrutturali per il trasferimento di per il trasferimento di energiaenergia::• reti elettriche,• gasdotti,• reti petrolifere,• …

…… infine anche reti per il trasferimento di infine anche reti per il trasferimento di informazioneinformazione::• reti telegrafiche,• reti telefoniche,• reti televisive,• reti informatiche,• …

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Tre Tre ““mondimondi””

4. Coscienza di s4. Coscienza di séé e della mortee della morte3. Sensibilit3. Sensibilitàà (coscienza animale)(coscienza animale)

Mondo 2Mondo 2(il mondo delle esperienze soggettive)(il mondo delle esperienze soggettive)

Alcuni stadi dellAlcuni stadi dell’’evoluzione cosmica evoluzione cosmica (da K.R.(da K.R.PopperPopper))

2.2. Organismi viventiOrganismi viventi1.1. Gli elementi piGli elementi piùù pesanti;pesanti;

liquidi e cristalliliquidi e cristalli0.0. Idrogeno ed elioIdrogeno ed elio

Mondo 1Mondo 1(il mondo degli oggetti fisici)(il mondo degli oggetti fisici)

6.6. Opere dOpere d’’arte e di scienzaarte e di scienza(compresa la tecnologia)(compresa la tecnologia)

5.5. Il linguaggio umano.Il linguaggio umano.Teorie dellTeorie dell’’io e della morteio e della morte

Mondo 3Mondo 3(il mondo dei prodotti della mente umana)(il mondo dei prodotti della mente umana)

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Informazione e mondo fisicoInformazione e mondo fisico

Il punto di vista usuale:Il punto di vista usuale:

Mondo 1Mondo 1

I Promessi SposiMondo 3Mondo 3

Mondo 2Mondo 2

Cosa accade con lCosa accade con l’’introduzione di ?introduzione di ?

Page 3: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 3

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

I calcolatori: cosI calcolatori: cos’’hanno di speciale?hanno di speciale?Molti strumenti sono stati progettati e Molti strumenti sono stati progettati e realizzati per trattare informazione:realizzati per trattare informazione:• le matite servono per scrivere

(non per trasferire grafite su carta)• i violini servono per suonare

(non per produrre onde acustiche)

A differenza di questi, i calcolatori sono A differenza di questi, i calcolatori sono dispositivi programmabilidispositivi programmabili..Ma cosa significa Ma cosa significa programmabileprogrammabile??

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Elaborazione dellElaborazione dell’’informazioneinformazioneLa La programmabilitprogrammabilitàà di un di un dispositivo attiene alle modalitdispositivo attiene alle modalitààcon cui esso gestisce con cui esso gestisce informazioneinformazionePer esempio, per risolvere Per esempio, per risolvere questo problema, si può:questo problema, si può:• provare e riprovare

(= operare nel mondo fisico)• fare i conti a mente

(= operare nel “mondo 2”)• fare i conti con carta e penna

(= operare con supporti passivi)• fare i conti con una calcolatrice

(= operare con supporti “rigidi”)• oppure …

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Dati e istruzioniDati e istruzioniQuando si gestisce informazione,Quando si gestisce informazione,si opera su si opera su datidati mediante mediante istruzioniistruzioni::

XXistruzioni:istruzioni:esecuzioneesecuzione

XXistruzioni:istruzioni:controllocontrollo

XXdatidatimondo 2mondo 2mondo 1mondo 1calcolatorecalcolatore

XXistruzioniistruzioniXXdatidati

mondo 2mondo 2mondo 1mondo 1carta e pennacarta e penna

XXistruzioni:istruzioni:esecuzioneesecuzione

XXistruzioni:istruzioni:controllocontrollo

XXdatidatimondo 2mondo 2mondo 1mondo 1calcolatricecalcolatrice

XXistruzioniistruzioniXXdatidati

mondo 2mondo 2mondo 1mondo 1a mentea mente

Page 4: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 4

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

I primi calcolatori meccaniciI primi calcolatori meccanici /1/1BlaiseBlaise PascalPascal (1623(1623--1662)1662)dispositivo meccanico (ingranaggi azionati dispositivo meccanico (ingranaggi azionati da una manovella) per lda una manovella) per l’’esecuzione di esecuzione di sommesomme e e sottrazionisottrazioni..

GottfriedGottfried WilhelmWilhelm vonvon LeibnizLeibniz (1646(1646--1716)1716)introduce anche introduce anche moltiplicazionimoltiplicazioni e e divisionidivisioni(~ calcolatrice a quattro funzioni).(~ calcolatrice a quattro funzioni).

CharlesCharles BabbageBabbage (1792(1792--1871)1871)progetta e realizza un progetta e realizza un ““differencedifference engineengine””• calcola tabelle di numeri utili per la navigazione;•• unicounico algoritmo: polinomiale alle differenze polinomiale alle differenze

finitefinite;• output: forifori su una piastra di rame

(~ schede perforate).

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

I primi calcolatori meccaniciI primi calcolatori meccanici /2/2CharlesCharles BabbageBabbage (1792(1792--1871)1871)macchina programmabile: macchina programmabile: ““analyticalanalyticalengineengine””• Formata da quattro parti:

•• storestore (memoria: 1000 celle × 50 cifre),•• millmill (unità di calcolo: 4 operazioni + trasferimento

dati), •• inputinput (lettore schede),•• outputoutput (perforatore schede).

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Il periodo bellicoIl periodo bellico /1/1KonradKonrad ZuseZuse (Germania, anni (Germania, anni ’’30 e 30 e ’’40)40)• Realizza macchine calcolatrici automatiche basate su relrelèè

elettromagneticielettromagnetici.John AtanasoffJohn Atanasoff ((IowaIowa State College, anni State College, anni ’’30)30)• Macchina basata sull’aritmetica binariaaritmetica binaria.• Memoria basata su condensatoricondensatori rinfrescati periodicamente.• Troppo avanzata per la tecnologia disponibile (problemiproblemi HWHW).

GeorgeGeorge StibbitzStibbitz ((BellBell LabsLabs, anni , anni ’’30)30)• Calcolatore più primitivo rispetto a quello di Atanasoff, ma

funzionantefunzionante!! (presentato a una conferenza nel 1940)HowardHoward AikenAiken ((HarvardHarvard, anni , anni ’’40)40)• Riprende il lavoro di Babbage e lo implementa sfruttando la tecnologia

dei relrelèè elettromagneticielettromagnetici.

Page 5: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 5

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Il periodo bellicoIl periodo bellico /2/2Negli anni Negli anni ’’40 si sviluppa una nuova tecnologia: le 40 si sviluppa una nuova tecnologia: le valvole termoionichevalvole termoioniche rendono obsoleti i rendono obsoleti i relrelèèelettromagneticielettromagnetici..

COLOSSUSCOLOSSUS (Inghilterra 1943)(Inghilterra 1943)• Primo calcolatore digitale elettronico.

ENIACENIAC ((MauchleyMauchley ed ed EckertEckert -- USA 1946)USA 1946)•• ElectronicElectronic NumericalNumerical IntegratorIntegrator And ComputerAnd Computer.• Composto da 18 00018 000 valvole e 15001500 relé per un

peso complessivo di 30 t30 t e un consumo di 140 140 kwkw.

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

JohnJohn vonvon NeumannNeumannPartecipa al progetto ENIAC.Partecipa al progetto ENIAC.Due intuizioni fondamentali:Due intuizioni fondamentali:• memorizzare i programmi in forma digitaleforma digitale nella stessa

memoria dei dati per rendere più semplice la programmazione (rispetto all’utilizzo di cavi e interruttori);

• utilizzare ll’’aritmetica binariaaritmetica binaria invece di quella decimale (due valvole per bit invece di dieci per cifra).

Il suo progetto (Il suo progetto (macchina di macchina di vonvon NeumannNeumann) ) èèancora oggi alla base di quasi tutti i calcolatori ancora oggi alla base di quasi tutti i calcolatori digitali.digitali.

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

LL’’architettura di architettura di VonVon NeumannNeumannUn calcolatore deve essere in grado di:Un calcolatore deve essere in grado di:• eseguire istruzioni su dati;• controllare il flusso dell’esecuzione;• memorizzare i dati su cui operare;• memorizzare successioni di istruzioni;• interagire con gli utenti e con eventuali altri sistemi.

Sottosistemadi interfaccia

Sottosistemadi memorizzazione

Sottosistemadi elaborazione

Sottosistema di interconnessione

Ha due funzioni:1. eseguire le istruzioni;2. controllare il flusso

dell’esecuzione.

Comunica con utentio con altri dispositivi

Memorizza datie istruzioni

Page 6: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 6

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Il transistorIl transistorInventato ai Inventato ai BellBell LabsLabs nel nel 19481948 da da JohnJohn BardeenBardeen, Walter , Walter BrattainBrattain e William e William ShockleyShockley::• nel giro di 10 anni rivoluziona la ricerca sui calcolatori;• alla fine degli anni ’50 i calcolatori a valvole sono già obsoleti.

DigitalDigital EquipmentEquipment CorporationCorporation (DEC)(DEC)• fondata nel 1957 da Kenneth Olsen;• nel 1961 realizza il PDP–1, il primo minicalcolatoreminicalcolatore.

Sviluppo della tecnologia dSviluppo della tecnologia d’’integrazione:integrazione:• decine (SSI), centinaia (MSI) e migliaia (LSI) di transistor sono

integrati sullo stesso pezzo di silicio (chip);• possibilità di realizzare calcolatori più piccoli, più veloci e meno

costosi dei loro predecessori.Due famiglie di calcolatori rappresentative:Due famiglie di calcolatori rappresentative:• 360 di IBM• PDP-11 di DEC

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

VeryVery LargeLarge Scale Scale IntegrationIntegration (VLSI)(VLSI)105105––107 transistor integrati per chip.107 transistor integrati per chip.Passaggio dai Passaggio dai minicalcolatoriminicalcolatori, alle , alle workstationworkstation, ai , ai Personal ComputerPersonal Computer (PC):(PC):• usati per applicazioni fortemente interattivefortemente interattive

(elaborazione testi, fogli elettronici, …);• in origine proposti come kit da assemblarekit da assemblare, senza

software;• due architetture principali:

•• AppleApple (basato su CPU Motorola e PowerPC)• primo PC, progettato da Steve Jobs e Steve Wozniak nel ’78,•• architettura proprietariaarchitettura proprietaria!

•• IBMIBM e compatibili (CPU Intel e SW Microsoft – “Wintel”)• realizzato utilizzando componenti “off the shelf”,•• architettura di dominio pubblicoarchitettura di dominio pubblico, quindi replicabile da altri (cloni)!

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Interazione tra utenti e calcolatoriInterazione tra utenti e calcolatori

a b c

d e f

Ciclo aCiclo a--ff• interazione tra un utente e un calcolatore• esecuzione locale di un programma o accesso a documentazione locale

Ciclo aCiclo a--bb--ee--ff• interazione tra un utente e un calcolatore remoto, mediata da un secondo

calcolatore in rete con il primo• esecuzione remota o distribuita di un programma o accesso a documentazione

remotaCiclo aCiclo a--bb--cc--dd--ee--ff• interazione tra utenti mediata da calcolatori• esecuzione distribuita e cooperativa di un programma o scambio di

documentazione

Page 7: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 7

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Informazione e InformaticaInformazione e Informatica

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Informatica e telecomunicazioneInformatica e telecomunicazioneCosCos’è’è ll’’informaticainformatica??• lo studio sistematico degli algoritmi che descrivono e

trasformano l’informazione: la loro teoria, analisi, progetto, efficienza, realizzazione e applicazione[ACM – Association for Computing Machinery]

•• la scienza della rappresentazione e dellla scienza della rappresentazione e dell’’elaborazione elaborazione delldell’’informazioneinformazione

CosCos’è’è la la telecomunicazionetelecomunicazione??• la trasmissione rapidarapida a distanzadistanza dell’informazione

Attenzione:Attenzione:•• NonNon si parla di tecnologia dei calcolatoricalcolatori !• Si attribuisce ruolo centrale al concetto di informazioneinformazione !

Page 8: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 8

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Il concetto di informazioneIl concetto di informazione

Configurazione 1Configurazione 1 Configurazione 2Configurazione 2

un fogliocosparso di

macchie

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Informazione e supportoInformazione e supportoLL’’informazione informazione èè ““portata daportata da””, o , o ““trasmessa trasmessa susu””, o , o ““memorizzata inmemorizzata in””, o , o ““contenuta incontenuta in””qualcosa; questo qualcosa; questo ““qualcosaqualcosa”” però non però non èèll’’informazione stessa.informazione stessa.

Ogni supporto ha le sue caratteristiche in Ogni supporto ha le sue caratteristiche in quanto mezzo su cui può essere scritta quanto mezzo su cui può essere scritta delldell’’informazione.informazione.

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Informazione e supporti (1)Informazione e supporti (1)

La stessa informazione può essere scritta La stessa informazione può essere scritta su su supporti differentisupporti differenti..

1010109

11

8

67

Page 9: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 9

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Informazione e supporti (2)Informazione e supporti (2)

Lo Lo stesso supportostesso supporto può portarepuò portareinformazioni differentiinformazioni differenti..

farefare

burroburro

italiano

tariffa, prezzo, …inglese

to make, to do, to build, …

italiano

asino, cavalletto, somaro, …spagnolo

mantequilla, manteca, …

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Informazione e supporto (3)Informazione e supporto (3)Distinguere informazione e supporto fisico Distinguere informazione e supporto fisico èèdistinguere tra distinguere tra ““entitentitàà logichelogiche”” ed ed ““entitentitààfisichefisiche””::• l’informazione richiede un supporto fisicorichiede un supporto fisico, ma

non coincide con esso;• l’informazione è un’entità extraextra--fisicafisica, non

interpretabile in termini di materia-energia e sottoposta alle leggi della fisica solo perché basata su un supporto fisico.

LL’’informazione si può informazione si può crearecreare e e distruggeredistruggere..

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Quali caratteristiche deve avere un Quali caratteristiche deve avere un sistema fisico per supportare informazioni?sistema fisico per supportare informazioni?

Si ottiene informazione quando, dato un Si ottiene informazione quando, dato un insieme di alternative possibili, la lettura del insieme di alternative possibili, la lettura del supporto ne elimina alcune e ne seleziona supporto ne elimina alcune e ne seleziona altre.altre.Condizione necessariaCondizione necessaria perchperchéé un supporto un supporto possa portare informazione possa portare informazione èè che possa che possa assumere assumere configurazioni differenticonfigurazioni differenti, a ognuna , a ognuna delle quali venga associata una differente delle quali venga associata una differente entitentitàà di informazionedi informazione..

Page 10: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 10

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Supporto fisico: 1Supporto fisico: 1aa condizionecondizioneDeve consentire di Deve consentire di potere identificare potere identificare delle differenzedelle differenze• Es: voglio rappresentare

2 alternative

Cosa Cosa rappresentarappresentaciascuna ciascuna configurazione?configurazione?

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Configurazioni e codiciConfigurazioni e codiciA ogni configurazione del supporto deve essere associata unA ogni configurazione del supporto deve essere associata un’’entitentitàà di di informazione:informazione:• Prima Configurazione = interruttore “ONON” = “Divina CommediaDivina Commedia”;• Seconda Configurazione = interruttore “OFFOFF” = “I Promessi SposiI Promessi Sposi”.

Per interpretare le differenti configurazioni del supporto in tePer interpretare le differenti configurazioni del supporto in termini di rmini di informazione informazione èè necessario conoscere il necessario conoscere il codicecodice (cio(cioèè la regola) che a la regola) che a ogni ogni configurazione ammessa del supporto associa unconfigurazione ammessa del supporto associa un’’entitentitàà di di informazioneinformazione..

La definizione di un codice comporta che siano identificati in mLa definizione di un codice comporta che siano identificati in modo non odo non ambiguo lambiguo l’’insieme delle insieme delle possibili possibili configurazioniconfigurazioni del supporto e ldel supporto e l’’insieme insieme delle delle possibili possibili entitentitàà di informazionedi informazione a cui ci si vuole riferire.a cui ci si vuole riferire.

Variando il codice Variando il codice èè possibile riferirsi a entitpossibile riferirsi a entitàà di informazione differenti di informazione differenti utilizzando uno stesso supporto fisicoutilizzando uno stesso supporto fisico..

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

CODICE

Supporto fisico: 2a condizioneSupporto fisico: 2a condizioneDeve essere Deve essere condivisacondivisa una regola per attribuire una regola per attribuire

un un significatosignificato a ciascuna configurazionea ciascuna configurazione

Configurazione 1

Entità di informazione 1

Configurazione 2

Entità di informazione 2

Page 11: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 11

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Livelli di informazione: il telegrafoLivelli di informazione: il telegrafoSupporto fisicoSupporto fisico: conduttore in cui transita corrente continua: conduttore in cui transita corrente continua

EntitEntitàà di informazionedi informazione: : ““puntipunti”” e e ““lineelinee””, che rappresentano le lettere , che rappresentano le lettere delldell’’alfabetoalfabeto

CodiceCodice = regola che specifica la corrispondenza:= regola che specifica la corrispondenza:• passa corrente per 1 s ⇒ punto• passa corrente per 2 s ⇒ linea• non passa corrente per 1 s ⇒ separazione tra punti e linee della stessa lettera• non passa corrente per 2 s ⇒ separazione tra due lettere

•• ““passa corrente per 1 s, non passa per 1 s, passa per 2 spassa corrente per 1 s, non passa per 1 s, passa per 2 s”” = = ““punto lineapunto linea””..

Codice MorseCodice Morse = relazione tra lettere e sequenze di punti linee:= relazione tra lettere e sequenze di punti linee:• punto linea ⇒ lettera “A”• linea punto punto punto ⇒ lettera “B”• linea punto linea punto ⇒ lettera “C”• ecc.

Abbiamo associato simboli ad altri simboli!!Abbiamo associato simboli ad altri simboli!!

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Messaggi Messaggi vsvs configurazione del supportoconfigurazione del supportoConfigurazione del supporto fisicoConfigurazione del supporto fisico (livello fisico, (livello fisico, LFLF):):• passa corrente per 2s, non passa per 1s, passa per 1s, non passa per 2s,

passa per 2s, non passa per 1s, passa per 2s, non passa per 1s, passa per 2s

messaggiomessaggio, al livello logico 1 (, al livello logico 1 (LL1LL1):):• linea punto, separazione di lettera, linea linea linea

messaggiomessaggio, al livello Logico 2 (, al livello Logico 2 (LL2LL2):):• “N” “O”

messaggiomessaggio, al livello Logico 3 (, al livello Logico 3 (LL3LL3):):• “NO”, con il significato (per esempio) di “incontro non confermato”

Le relazioni tra questi livelli definiscono ognuna un codice Le relazioni tra questi livelli definiscono ognuna un codice per interpretare il significato delle entitper interpretare il significato delle entitàà che compaiono al che compaiono al livello precedente in termini delle entitlivello precedente in termini delle entitàà del livello del livello successivo: sono relazioni di significazione.successivo: sono relazioni di significazione.

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Tre diversi livelli di informazioneTre diversi livelli di informazione

Informazione Informazione sintatticasintattica

Informazione Informazione semanticasemantica

Informazione Informazione pragmaticapragmatica

Page 12: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 12

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Teoria dellTeoria dell’’informazioneinformazioneQuando si parla di Quando si parla di ““teoria dellteoria dell’’informazioneinformazione”” si fa si fa riferimento al solo livello riferimento al solo livello ““sintatticosintattico””Ambito di applicazioneAmbito di applicazione: caratterizzare le condizioni per la : caratterizzare le condizioni per la trasmissione di segnali in termini ditrasmissione di segnali in termini di•• adeguatezzaadeguatezza del supporto adottato per la trasmissione •• accuratezzaaccuratezza della trasmissione stessa.

Quali problemi si pone:Quali problemi si pone:• un certo supporto può essere utilizzato per la memorizzazione di una

certa quantità di informazione?• con quale velocità una certa quantità di informazione può essere

trasferita a distanza mediante un certo supporto?• con quale grado di accuratezza un certo messaggio è stato trasmesso?

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Informazione e incertezzaInformazione e incertezzaLa presenza di informazione La presenza di informazione èè condizionata dal fatto che il condizionata dal fatto che il supporto sia in grado di assumere supporto sia in grado di assumere diverse configurazionidiverse configurazioni..

Se la nostra ignoranza, o piSe la nostra ignoranza, o piùù formalmente la nostra formalmente la nostra incertezza, circa lincertezza, circa l’’effettiva configurazione del supporto effettiva configurazione del supporto viene ridotta dallviene ridotta dall’’accesso al supporto, allora sembra del accesso al supporto, allora sembra del tutto ragionevole assumere che si possa affermare che tale tutto ragionevole assumere che si possa affermare che tale atto ci ha atto ci ha portato dellportato dell’’informazioneinformazione..

Se fossimo in grado di misurare il Se fossimo in grado di misurare il grado di incertezzagrado di incertezza in cui in cui ci trovavamo ci trovavamo prima della letturaprima della lettura e quello successivo a essae quello successivo a essa, , la la quantitquantitàà di informazionedi informazione portata dalla configurazione che portata dalla configurazione che abbiamo letto sul supporto potrebbe essere definita proprio abbiamo letto sul supporto potrebbe essere definita proprio dalla dalla differenza tra tali gradi di incertezzadifferenza tra tali gradi di incertezza..

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Page 13: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 13

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

La codifica dellLa codifica dell’’informazioneinformazione

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Codifica dati e istruzioniCodifica dati e istruzioniAlgoritmoAlgoritmo•• descrizionedescrizione della soluzione di problemasoluzione di problema scritta in modo

da poter essere eseguita da un esecutoreesecutore (eventualmente diverso dall’autore dell’algoritmo)

• sequenza di istruzioniistruzioni che operano su datidati.ProgrammaProgramma•• algoritmo algoritmo scritto in modo da poter essere eseguito da un

calcolatorecalcolatore (esecutore automatico)

Per scrivere un Per scrivere un programmaprogramma èè necessario necessario rappresentare rappresentare istruzioniistruzioni e e datidati in un formato tale in un formato tale che che ll’’esecutore automaticoesecutore automatico sia capace di sia capace di memorizzare memorizzare e e manipolaremanipolare..

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Codifica dati e istruzioniCodifica dati e istruzioni

AlfabetoAlfabeto deidei simbolisimboli• cifre “0”, “1”, …, “9”, separatore decimale (“,”), separatore delle

migliaia (“.”) e segni positivo (“+”) o negativo (“–”).RegoleRegole di di composizionecomposizione ((sintassisintassi), ), cheche definisconodefiniscono le le successionisuccessioni ““benben formateformate””• “1.234,5” è la rappresentazione di un numero;• “1,23,45” non lo è.

CodiceCodice ((semanticasemantica))• “1.234,5” = 1×103 + 2×102 + 3×101 + 4×100 + 5×10–1

• “1,23,45” = ??

Lo Lo stessostesso alfabetoalfabeto puòpuò essereessere utilizzatoutilizzato con con codicicodici diversidiversi::• “123,456” = 1×102 + 2×101 + 3×100 + 4×10–1 + 5×10–2 + 6×10–3, [IT]• “123,456” = 1×105 + 2×104 + 3×103 + 4×102 + 5×101 + 6×100, [UK]

Page 14: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 14

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Codifica BinariaCodifica BinariaAlfabeto binarioAlfabeto binario: usiamo dispositivi con solo due stati: usiamo dispositivi con solo due statiProblema: assegnare un Problema: assegnare un codice univococodice univoco a tutti gli oggetti a tutti gli oggetti compresi in un insieme predefinito (e.g. studenti)compresi in un insieme predefinito (e.g. studenti)

Quanti Quanti oggettioggetti posso codificare con posso codificare con kk bit:bit:• 1 bit ⇒ 2 stati (0, 1) ⇒ 2 oggetti (e.g. Vero/Falso)• 2 bit ⇒ 4 stati (00, 01, 10, 11) ⇒ 4 oggetti• 3 bit ⇒ 8 stati (000, 001, …, 111) ⇒ 8 oggetti• …•• k bit k bit ⇒⇒ 22kk stati stati ⇒⇒ 22kk oggettioggetti

Quanti Quanti bitbit mi servono per codificare mi servono per codificare NN oggetti:oggetti:• N ≤ 2k ⇒ k ≥ log2N ⇒ k = k = ⎡⎡loglog22NN⎤⎤ (intero superiore)

Attenzione:Attenzione:ipotesi implicita che i codici abbiano tutti la ipotesi implicita che i codici abbiano tutti la stessa lunghezzastessa lunghezza

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Esempio di codifica binariaEsempio di codifica binariaProblema:Problema:assegnare un codice binario univoco a tutti i giorni della assegnare un codice binario univoco a tutti i giorni della settimanasettimana

Giorni della settimana: Giorni della settimana: N = 7 N = 7 ⇒⇒ k k ≥≥ loglog227 7 ⇒⇒ k = 3k = 3

Con 3 bit possiamo ottenere 8 diverse configurazioni:Con 3 bit possiamo ottenere 8 diverse configurazioni:• Ne servono 7, quali utilizziamo?• Quale configurazione associamo a quale giorno?

Attenzione:Attenzione:ipotesi che i codici abbiano tutti la stessa lunghezzaipotesi che i codici abbiano tutti la stessa lunghezza

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

I giorni della settimana in binario (1)I giorni della settimana in binario (1)

1 bit2 “gruppi”

2 bit4 “gruppi”

3 bit8 “gruppi”

Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

000 001 010 011 100 101

111 110

Lunedì Martedì

Mercoledì Giovedì

Venerdì Sabato

Domenica

00

01

10

11

Lunedì

Martedì Mercoledì

Giovedì

Venerdì

Sabato

Domenica

0

1

Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

Page 15: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 15

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

I giorni della settimana in binario (2)I giorni della settimana in binario (2)

1 bit2 “gruppi”

2 bit4 “gruppi”

3 bit8 “gruppi”

Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

000 001 010 011 100 101

111 110 Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

00

01

10

11

Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

0

1

Lunedì

Martedì

Mercoledì

Giovedì

Venerdì

Sabato

Domenica

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Codifica binaria dei caratteriCodifica binaria dei caratteriQuanti sono gli oggetti compresi nellQuanti sono gli oggetti compresi nell’’insieme?insieme?• 26 lettere maiuscole + 26 minuscole ⇒ 52• 10 cifre• Circa 30 segni d’interpunzione• Circa 30 caratteri di controllo (EOF, CR, LF, …)

circa 120 oggetti complessivi circa 120 oggetti complessivi ⇒⇒ k = k = ⎡⎡loglog22120120⎤⎤ = 7= 7Codice ASCII: utilizza 7 bit e quindi può Codice ASCII: utilizza 7 bit e quindi può rappresentare al massimo 2rappresentare al massimo 277=128 caratteri=128 caratteri• Con 8 bit (= byte) rappresento 256 caratteri (ASCII esteso)• Si stanno diffondendo codici più estesi (e.g. UNICODE) per

rappresentare anche i caratteri delle lingue orientali

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

ASCII su 7 bitASCII su 7 bit

canccanc~~}}||{{zzYYxxwwvvuuttssrrqqpp111111oonnmmllkkjjIIhhggffeeddccbbaa`̀110110__^̂]]\\[[ZZYYXXWWVVUUTTSSRRQQPP101101OONNMMLLKKJJIIHHGGFFEEDDCCBBAA@@100100??>>==<<;;::99887766554433221100011011//..--,,++**))((''&&%%$$##""!!spsp010010

11111111

11101110

11011101

11001100

10111011

10101010

10011001

10001000

01110111

01100110

01010101

01000100

00110011

00100010

00010001

00000000

Page 16: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 16

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

bit, Byte, bit, Byte, KiloByteKiloByte, , MegaByteMegaByte, , ……

bitbit = solo due = solo due statistati, , ““00”” oppureoppure ““11””..ByteByte = 8 bit, = 8 bit, quindiquindi 2288 = 256 = 256 statistatiKiloByteKiloByte [[KBKB]] = 2= 21010 Byte = 1024 Byte ~ 10Byte = 1024 Byte ~ 1033 ByteByteMegaByteMegaByte [[MBMB]] = 2= 22020 Byte = 1'048'576 Byte ~ 10Byte = 1'048'576 Byte ~ 1066 ByteByteGigaByteGigaByte [[GBGB]] = 2= 23030 Byte ~ 10Byte ~ 1099 ByteByteTeraByteTeraByte [[TBTB]] = 2= 24040 Byte ~ 10Byte ~ 101212 ByteBytePetaBytePetaByte [[PBPB]] = 2= 25050 Byte ~ 10Byte ~ 101515 ByteByteExaByteExaByte [[EBEB]] = 2= 26060 Byte ~ 10Byte ~ 101818 ByteByte

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Lo standard IEC per i prefissi binariLo standard IEC per i prefissi binari

20.89%(103)81'208'925'819'614'629'174'706'176(210)8YiYobiYotta binario

18.06%(103)71'180'591'620'717'411'303'424(210)7ZiZebiZetta binario

15.29%(103)61'152'921'504'606'846'976(210)6EiExbiExa binario

12.59%(103)51'125'899'906'842'624(210)5PiPebiPeta binario

9.95%(103)41'099'511'627'776(210)4TiTebiTera binario

7.37%(103)31'073'741'824(210)3GiGibiGiga binario

4.86%(103)21'048'576(210)2MiMebiMega binario

2.40%1031'024210KiKibiKilo binario

Diff. %SIDimensioneSimboloNomeGrandezza

Usando questi prefissi si può risolvere lUsando questi prefissi si può risolvere l’’ambiguitambiguitàà• capacità di un disco fisso: 120 GB = 111.76 GiB,• capacità di un floppy: 1.406 MiB = 1.475 MB

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Oltre al codice operativoOltre al codice operativo…… èè necessarionecessario far far riferimentoriferimento aiai datidati necessarinecessari per per completarecompletare ll’’esecuzioneesecuzione delldell’’istruzioneistruzione,,• e.g. addizione: è necessario che sia specificato (anche implicitamente)

dove leggere i due operandi da sommare e dove scrivere il risultato;

ilil numeronumero deidei datidati dada specificarespecificare èè variabilevariabile, in , in funzionefunzionedelledelle istruzioniistruzioni..

Codice Operativo Destinazione Sorgente 1 Sorgente 2 Estensione del codice operativo

Codice Operativo Destinazione Sorgente 1 Operando (immediato)

Codice Operativo Operando (immediato)

Page 17: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 17

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Numeri naturaliNumeri naturali

Sistema di numerazione posizionale in base Sistema di numerazione posizionale in base bb•ckck–1…c0 rappresenta ck×bk + ck–1×bk–1 + … + c0×b0

•b=10 ⇒ 1101dieci indica 1×103 + 1×102 + 0×10 + 1×100

Conversione Conversione binario binario ⇒⇒ decimaledecimale•basta scrivere il numero secondo la notazione posizionale utilizzando già il sistema decimale

•b=2 ⇒ 1101due indica 1×23 + 1×22 + 0×2 + 1×20 = 13dieci

Conversione Conversione decimaledecimale ⇒⇒ binariobinario•Si potrebbe utilizzare lo stesso metodo indicato sopra, ma èmolto complesso

•b=10 ⇒ 345dieci indica 11×101010 + 100×10101 + 101×10100

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Conversione Conversione decimaledecimale ⇒⇒ binariobinarioSistema di numerazione posizionale in base B che, in questo contSistema di numerazione posizionale in base B che, in questo contesto si può esto si può ipotizzare diversa da dieciipotizzare diversa da dieci

ccnn––11ccnn––22……cc11cc00 == ccnn––11××BBnn––11 ++ ccnn––22××BBnn––22 + + …… + c+ c11××BB11 + c+ c00××BB00

ccnn––11ccnn––22……cc11cc00 == ccnn––11××BBnn––11 ++ ccnn––22××BBnn––22 + + …… + c+ c11××B + cB + c00(infatti B(infatti B11 == B e BB e B00 == 1)1)

Dividendo il numero per il valore della base, il risultato che sDividendo il numero per il valore della base, il risultato che si ottiene i ottiene èè::((ccnn––11××BBnn––11 ++ ccnn––22××BBnn––22 + + …… + c+ c11××B + cB + c00)/B =)/B === ccnn––11××BBnn––22 ++ ccnn––22××BBnn––33 + + …… + c+ c11 + c+ c00/B/B

che può essere scomposto in modo da evidenziare quoziente e restche può essere scomposto in modo da evidenziare quoziente e resto:o:quoziente =quoziente = ccnn––11××BBnn––22 ++ ccnn––22××BBnn––33 ++ …… + c+ c11resto = cresto = c00

Il resto della divisione corrisponde allIl resto della divisione corrisponde all’’ultima cifra della rappresentazione in ultima cifra della rappresentazione in base B del numerobase B del numero, ma il suo valore , ma il suo valore èè indipendente dalla base che si utilizza indipendente dalla base che si utilizza per effettuare i conti.per effettuare i conti.Applicando lo stesso procedimento al quoziente si ottiene la Applicando lo stesso procedimento al quoziente si ottiene la penultimapenultima cifra cifra della rappresentazione in base Bdella rappresentazione in base BRipetendo la procedura Ripetendo la procedura èè possibile ottenere tutte le altre cifre.possibile ottenere tutte le altre cifre.

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Conversione Conversione decimaledecimale ⇒⇒ binariobinario573573diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 286286diecidieci restoresto 11diecidieci286286diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 143143diecidieci restoresto 00diecidieci143143diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 7171diecidieci restoresto 11diecidieci7171diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 3535diecidieci restoresto 11diecidieci3535diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 1717diecidieci restoresto 11diecidieci1717diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 88diecidieci restoresto 11diecidieci88diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 44diecidieci restoresto 00diecidieci44diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 22diecidieci restoresto 00diecidieci22diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 11diecidieci restoresto 00diecidieci11diecidieci : 2: 2diecidieci ⇒⇒ quozientequoziente 00diecidieci restoresto 11diecidieci

11 000000 111111 101101duedue == 573573diecidieci

(cifra binaria meno significativa)(cifra binaria meno significativa)

(cifra binaria pi(cifra binaria piùù significativa)significativa)

Page 18: Informatica - CNR2007/02/28  · ¾Un calcolatore deve essere in grado di: • eseguire istruzioni su dati; • controllare il flusso dell’esecuzione; • memorizzare i dati su cui

28/02/2007

Introduzione ai sistemi informatici 18

Introduzione ai sistemi informatici 3/edDonatella Sciuto, Giacomo Buonanno, Luca Mari Copyright © 2005 – The McGraw-Hill Companies srl

Numeri binari: operazioniNumeri binari: operazioniOperazioni di somma di numeri binari naturali.Operazioni di somma di numeri binari naturali.Con gli 8 bit utilizzati negli esempi qui riportati si possono Con gli 8 bit utilizzati negli esempi qui riportati si possono rappresentare i numeri naturali fino a 255dieci.rappresentare i numeri naturali fino a 255dieci.Operazioni che producono un risultato maggiore provocano Operazioni che producono un risultato maggiore provocano il superamento della capacitil superamento della capacitàà di rappresentazione (indicato di rappresentazione (indicato in gergo dal termine inglese in gergo dal termine inglese overflowoverflow). ).

1 1 1 1

0 0 0 1 1 0 0 1due + 2 5dieci + 0 0 1 0 1 1 0 0due + 4 4dieci + 0 0 1 1 1 1 0 0due = 6 0dieci = 0 1 0 0 1 1 1 0due = 7 8dieci = 0 1 0 1 0 1 0 1due 8 5dieci 0 1 1 1 1 0 1 0due 1 2 2dieci