Fondamenti Di Informatica I - DISI, University Of Trento

3y ago
13 Views
2 Downloads
2.11 MB
78 Pages
Last View : 29d ago
Last Download : 3m ago
Upload by : Brenna Zink
Transcription

m1Fondamenti di Informatica IMonica BianchiniDipartimento di Ingegneria dell’InformazioneENIAC (1946 ca.)E-mail: monica@dii.unisi.itFondamenti di Informatica I a.a. 20072007-081

Diapositiva 1m1monica; 22/01/2006

SommarioIntroduzioneil calcolo automatico dalla preistoria ai giorninostriL’algebra di Booleda Analisi Matematica della Logica (1847) alprogetto degli elaboratori digitaliSistemi di numerazioneda additivo a posizionale, da decimale a binario,a esadecimale: l’alfabeto dell’elaboratoreUNIVAC (1951)La rappresentazione dei dati el’aritmetica degli elaboratoridai bit ai numeri, ai testi, alle immagini, allamusica, ai video in digitaleFondamenti di Informatica I a.a. 20072007-082

IntroduzioneFondamenti di Informatica I a.a. 20072007-083

Cenni storici 1Anche se la presenza “invasiva” dell’informatica nella vita ditutti i giorni è un fenomeno relativamente recente, nonrecente è la necessità di avere a disposizione strumenti emetodi per contare rapidamente, elaborare dati, “calcolare”Le prime testimonianze di strumenti per contare risalgono a30.000 anni faI primi esempi di algoritmi procedure di calcolo “automatico” sono stati ritrovati in Mesopotamia su tavolette babilonesirisalenti al 1800 1600 a.C.Il sogno di costruire macchine capaci di effettuare calcoliautomatici affonda le radici nel pensiero filosofico del ‘600:Pascal e Leibniz non solo affrontarono il problema, già studiatoda Cartesio, di automatizzare il ragionamento logico matematico, ma si cimentarono nella realizzazione di semplicimacchine per calcolare (capaci di effettuare somme esottrazioni)Fondamenti di Informatica I a.a. 20072007-084

Cenni storici 2La macchina alle differenze,differenze concepita da Babbage nel 1833,rappresenta il primo esempio di macchina programmabile diutilità generaleLa prima programmatrice nella storia dell’informatica è AdaAugusta Byron, contessa di LovelaceIn seguito, lo stesso Babbage progetta la macchina analitica(mai realizzata, troppo complessa e critica la sua costruzioneper le tecnologie meccaniche dell’epoca)Fondamenti di Informatica I a.a. 20072007-085

Cenni storici 3Fu Herman Hollerith, nel 1890, a sviluppare la macchina aschede perforate,perforate per compiere le statistiche del censimentodecennale degli Stati UnitiI dati venivano immessi su schede di cartone opportunamenteperforate, le stesse schede che sono state usate fino a duedecenni or sonoLe schede venivano successivamente “contate” da una sorta dipantografo che permetteva diversi tipi di elaborazioni (totali,medie, statistiche, etc.)Si impiegarono due anni e mezzo ad analizzare i dati (contro isette anni del censimento del 1880), nonostante l’incremento dipopolazione da 50 a 63 milioniFondamenti di Informatica I a.a. 20072007-086

Cenni storici 4Successivamente la macchina a schede perforate venneutilizzata con successo per i censimenti in Austria, Norvegiae Russia, tanto che Hollerith decise di fondare una società:la Computing Tabulating Recording Company che, nel 1923,divenne l’International Business Machine, o IBMNel 1932, il tedesco Konrad Zuse realizza una macchinaelettromeccanica in grado di eseguire calcoli con controlloprogrammato, ed introduce il sistema di numerazione binario(la cui algebra era stata definita da Leibniz e da Boole)Fondamenti di Informatica I a.a. 20072007-087

Cenni storici 5Durante la seconda guerra mondiale, fioriscono i progetti dielaboratori da utilizzarsi per scopi belliciEnigma,Enigma realizzata dai tedeschi percodificare le comunicazioni militariRed Purple,Purple di costruzione giapponeseComputer Colossus,Colossus costruito dagli inglesiper la decifrazione dei messaggi tedeschi,alla cui progettazione e realizzazionecollaborò Alan Turing,Turing permise la vittoriaanglo americana sull’AtlanticoFondamenti di Informatica I a.a. 20072007-08La macchina Enigma8

Cenni storici 6Con l’invenzione del tubo a vuoto (1904), del transistor(1947) e, infine, dei circuiti integrati (1969), l’evoluzione deicomputer divenne inarrestabileAttualmente la potenza di calcolo degli elaboratori decuplicaogni 5 6 anni ( ma non può durare, almeno con letecnologie in uso)Fondamenti di Informatica I a.a. 20072007-089

Cenni storici 7La costruzione dei primi calcolatori risale all’inizio degli anni‘40, grazie alla tecnologia elettronica; i primi esemplarivenivano programmati mediante connessioni elettriche ecommutatori (ENIAC,ENIAC Mark I)IIl nome di Von Neumann è legato invece ai primi calcolatori aprogramma memorizzato realizzati alla fine degli anni ‘40(EDSAC,EDSAC Whirlwind,Whirlwind IAS,IAS UNIVAC)UNIVACPer la prima volta, vige il principio di unitarietà dirappresentazione di dati e istruzioni, che vengono codificati,all’interno dell’elaboratore, in maniera indistinguibileLa diffusione dei calcolatori a livello mondiale è avvenuta neidecenni ‘60 e ‘70Fondamenti di Informatica I a.a. 20072007-0810

Cenni storici 8ENIAC (1946)Whirlwind (1949)Fondamenti di Informatica I a.a. 20072007-08Mark I (1948)IAS (1952)EDSAC (1949)UNIVAC (1952)11

Cenni storici 9Tuttavia, l’esplosione dell’informatica come fenomeno dimassa è datata 1981, anno in cui l’IBM introdusse un tipoparticolare di elaboratore: il Personal Computer (PC)La particolarità dei PC consisteva nell’essere “assemblati” concomponenti facilmente reperibili sul mercato (e quindi abasso costo)Possibilità per qualsiasi casa produttrice di costruire “cloni”Attualmente i PC, o meglio il loro componente fondamentale il microprocessore è utilizzato in tutti i settoriapplicativi (non solo per elaborare dati):Telefoni cellulariRicevitori satellitari digitaliBancomat e carte di creditoLavatrici e forni a microonde.Fondamenti di Informatica I a.a. 20072007-0812

Cenni storici 10L’esigenza di realizzare sistemi di elaborazione dotati di piùprocessori operanti in parallelo è stata sentita fin dalla preistoriadell’informaticaIn una relazione dello scienziato, generale e uomo politico italianoMenabrea, datata 1842, sulla macchina analitica di Babbage, si fariferimento alla possibilità di usare più macchine dello stesso tipo inparallelo, per accelerare calcoli lunghi e ripetitiviSolo la riduzione dei costi dell’hardware ha consentito, verso la finedegli anni ‘60, l’effettiva costruzione dei primi supercalcolatori,come le macchine CDC6600 e Illiac e, successivamente, il Cray e lemacchine vettorialiA partire dagli anni ‘90, gli ulteriori sviluppi della microelettronicahanno permesso la realizzazione di calcolatori a parallelismomassiccio e a “grana fine”, caratterizzati dall’interconnessione didecine di migliaia di unità di elaborazione estremamenteelementari: le reti neurali,neurali capaci di “simulare” il comportamentodel cervello umano, sulla base degli studi di McCulloch e Pitts(1943)Fondamenti di Informatica I a.a. 20072007-0813

Cenni storici 11Cray 1 (1976)Illiac (1955)Cray X1 (2002)CDC 6600 (1963)PC IBM (1981)Fondamenti di Informatica I a.a. 20072007-08Portatile e Palmare (oggi)14

Frasi celebri ed altro “Penso che ci sia mercato nel mondo per non più di cinquecomputer.” (Thomas Watson, Presidente di IBM, 1943)“Ho girato avanti e indietro questa nazione (USA) e ho parlatocon la gente. Vi assicuro che questa moda dell’elaborazioneautomatica non vedrà l’anno prossimo.” (Editor di libriscientifici di Prentice Hall, 1947)“Nel futuro i computer verranno a pesare non più di unatonnellata e mezzo.” (Popular Mechanichs, 1949)Nel 1976, il New York Times pubblicò un libro dal titolo Lascienza nel ventesimo secolo,secolo nel quale il calcolatore venivamenzionato una sola volta e indirettamente, in relazione alcalcolo delle orbite dei pianeti“Non c’è ragione perché qualcuno possa volere un computer acasa sua.” (Ken Olson, fondatore di Digital, 1977)Fondamenti di Informatica I a.a. 20072007-0815

Che cos’è l’informatica 1Informatica fusione delle parole informazione eautomatica l’insieme delle discipline che studiano glistrumenti per l’elaborazione automatica dell’informazione e imetodi per un loro uso corretto ed efficaceL’informatica è la scienza delladell’elaborazione dell’informazionerappresentazioneeL’accento sull’ “informazione” fornisce una spiegazione delperché l’informatica sia ormai parte integrante di molte 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 sistematicae rigorosa, e pertanto può essere automatizzataFondamenti di Informatica I a.a. 20072007-0816

Che cos’è l’informatica 2L’informatica non è, quindi, la scienza e la tecnologia deicalcolatori elettronici: il calcolatore è lo strumento che larende “operativa”L’elaboratore (computer, calcolatore) è un’apparecchiaturadigitale,digitale elettronica ed automatica capace di effettuaretrasformazioni sui dati:Digitale:Digitale i dati sono rappresentati mediante un alfabeto finito,costituito da cifre (digit),digit che ne permette il trattamentomediante regole matematicheElettronica:Elettronica realizzazione tramite tecnologie di tipo elettronicoAutomatica:Automatica capacità di eseguire una successione di operazionisenza interventi esterni“La disumanità del computer sta nel fatto che, una voltaprogrammato e messo in funzione, si comporta in manieraperfettamente onesta.” (Isaac Asimov)Fondamenti di Informatica I a.a. 20072007-0817

L’architettura di Von NeumannLa capacità dell’elaboratore di eseguire successioni dioperazioni in modo automatico è determinata dalla presenzadi un dispositivo di memoriaNella memoria sono registrati i dati e.la descrizione delle operazioni da eseguire su di essi(nell’ordine secondo cui devono essere eseguite): ilprogramma,programma la “ricetta” usata dall’elaboratore per svolgere ilsuo compitoIl programma viene interpretato dall’unità di controllo Modello di Von NeumannFondamenti di Informatica I a.a. 20072007-0818

La macchina universaleProgramma:Programma sequenza di operazioni atte a predisporrel’elaboratore alla soluzione di una determinata classe diproblemiIl programma è la descrizione di un algoritmo in una formacomprensibile all’elaboratoreAlgoritmo:Algoritmo sequenza finita di istruzioni attraverso le quali unoperatore umano è capace di risolvere ogni problema di unadata classe; non è direttamente eseguibile dall’elaboratoreL’elaboratore è una macchina universale:universale cambiando ilprogramma residente in memoria, è in grado di risolvereproblemi di natura diversa (una classe di problemi per ogniprogramma)Fondamenti di Informatica I a.a. 20072007-0819

Ancora sull’informatica.L’informatica è lo studio sistematico degli algoritmi chedescrivono e trasformano l’informazione: la loro teoria,analisi, progetto, efficienza, realizzazione (ACM Association for Computing Machinery)Nota:Nota È possibile svolgere un’attività concettualmente di tipoinformatico senza l’ausilio del calcolatore, per esempio nelprogettare ed applicare regole precise per svolgereoperazioni aritmetiche con carta e penna; l’elaboratore,tuttavia, è uno strumento di calcolo potente, che permette lagestione di quantità di informazioni altrimenti intrattabiliFondamenti di Informatica I a.a. 20072007-0820

L’algebra di BooleFondamenti di Informatica I a.a. 20072007-0821

ati;leparentesiesiste una relazione di precedenza fra gli operatori NOT, AND e OR, nell’ordine in cui sono stati elencati; le odomodoconsueto.consueto.Algebra BooleanaContempla due costanti 0 e 1 (falso e vero)veroCorrispondono a due stati che si escludono a vicendaPossono descrivere lo stato di apertura o chiusura di ungenerico contatto o di un circuito a più contatti01Si definiscono delle operazioni fra i valori booleani:AND,AND OR,OR NOT sono gli operatori fondamentaliFondamenti di Informatica I a.a. 20072007-0822

L’operazione di ORSi definisce l’operazione di somma logica (OR):il valore della somma logica è il simbolo 1 se il valore dialmeno uno degli operandi è il simbolo 10 00 11 01 1 0111Fondamenti di Informatica I a.a. 20072007-0800010 00 111011 01 123

L’operazione di ANDSi definisce l’operazione di prodotto logico (AND):il valore del prodotto logico è il simbolo 1 se il valore ditutti gli operandi è il simbolo 10 00 11 01 1 0001000 0101 0Fondamenti di Informatica I a.a. 20072007-08010 1111 124

La negazione NOTSi definisce l’operatore di negazione (NOT):l’operatore inverte il valore della costante su cui opera0 11 0Dalla definizione 0 01 1Fondamenti di Informatica I a.a. 20072007-0825

Variabili binarieUna variabile binaria indipendente può assumere unodei due valori 0 e 10x1Date n variabili binarie indipendenti, la loro sommalogica (OR) è1 se almeno una xi vale 1x1 x2 xn 0 se x1 x2 xn 0Fondamenti di Informatica I a.a. 20072007-0826

L’elementoL’elementox’x’ NOT(x)NOT(x) IlIlcomplementocomplementoèèunico.unico.AND e NOT con variabili binarieDate n variabili binarie indipendenti, il loro prodottologico (AND) è0 se almeno una xi vale 0x1 x2 xn 1 se x1 x2 xn 1La negazione di una variabile x èx 0x 1Fondamenti di Informatica I a.a. 20072007-08sesex 1x 027

eleggex x x x x·xx·x x .Alcune identitàSi verificanox 1 xx 0 0x x xx 1 1x 0 xx x xAd esempio x 1 xx 1x 00 1 01 1 1OK!Fondamenti di Informatica I a.a. 20072007-0828

Altre proprietàPer gli operatori AND e OR valgono le seguenti proprietà:commutativa x1 x2 x2 x1x1 x2 x2 x1associativax1 x2 x3 x1 (x2 x3)x1 x2 x3 x1 (x2 x3)distributiva del prodotto rispetto alla somma x1 x2 x1 x3 x1 (x2 x3)Per l’operatore NOT si provano le seguenti identità:x x 1x x 0x xFondamenti di Informatica I a.a. 20072007-0829

Configurazioni delle variabiliDate n variabili binarie indipendenti x1, x2, , xn, questepossono assumere 2n configurazioni distinteAd esempio per n 3 si hanno 8 configurazioni000 001 010 011100 101 110 111x1x2x3Una configurazione specifica è individuata univocamenteda un AND (a valore 1) di tutte le variabili, dove quellecorrispondenti ai valori 0 compaiono negate010Fondamenti di Informatica I a.a. 20072007-08x1x2x330

Funzioni logicheUna variabile y è una funzione delle n variabiliindipendenti x1, x2, , xn, se esiste un criterio che facorrispondere in modo univoco ad ognuna delle 2nconfigurazioni delle xi un valore di yy F(x1,x2, ,xn)Una rappresentazione esplicita di una funzione è latabella di verità, in cui si elencano tutte le possibilicombinazioni di x1, x2, , xn, con associato il valore di yy x1 x2Fondamenti di Informatica I a.a. 20072007-08x1x2y00110101011131

Una tabella di veritàDate tre variabili booleane (A,B,C), si scriva la funzioneF che vale 1 quando solo due di esse hanno valore 1AB CF00001111001100110001011001010101Si può scrivere la funzionecome somma logica delleconfigurazioni corrispondentiagli 1F(A,B,C) ABC ABC ABCForma canonica: somma di prodotti (OR di AND) tutte le funzioni logiche si possono scrivere in questa formaFondamenti di Informatica I a.a. 20072007-0832

ESEMPIESEMPI1)1)La’assorbimento x1x x1x· ·x2x )2)LeLeleggileggididiDeDeMorganMorganUn esempio: lo XOR(x(x x1’· x2’1 x2x)’)’12 x1’· x2’( (’ eindicarelalanegazione).negazione).( (x1x· x· 2x)’)’ x1x’ ’ x2x’ ’1212DalleDalle leggileggi didi DeDe MorganMorgan sisi evinceevince cheche lala sceltascelta delledelle funzionifunzioni OR,OR, ANDAND ee NOT,NOT, comecome funzionifunzioni primitive,primitive, ’operazione OR può essere espressa tramite AND e NOT.3)3)La funzione XOR verifica la disuguaglianza di itale.più facile realizzazione circuitale.x1x2XOR001101010110L’espressione come somma di prodotti è quindi.XOR x1x2 x1x2Fondamenti di Informatica I a.a. 20072007-0833

Un circuito con due interruttoriI due interruttori corrispondono a due variabili (A,B) avalori booleani le variabili assumono i due valori 0 e 1che corrispondono alle due posizioni dell’interruttoreAA0011BLAABA 0 B 0AA0011BLBA 1 B 0Fondamenti di Informatica I a.a. 20072007-08AA0011BLBABLA 0 B 10011010110010011BBLL A B A BA 1 B 134

Un esercizioProgettare un circuito per accendere e spegnere unalampada da uno qualsiasi di tre interruttori indipendentiL 0Cambia lostato di uninterruttorequalsiasi000111A0B0L 1000111A0Fondamenti di Informatica I a.a. 20072007-08C0B1C035

Analisi delle combinazioniSi considera cosa accade a partire dalla configurazione di partenza,cambiando lo stato di un interruttore per voltaL 0L 1ABCABC001011L 0L 1L 0ABCABCABC000010101ABC111L 0L 1ABCABC100110Fondamenti di Informatica I a.a. 20072007-08L 136

Scrittura della funzione logicaDalle otto combinazioni si ottiene la tabella di verità dellafunzione logicaABCL00001111001100110101010101101001Si può scrivere la funzione L come somma logica diprodotti logiciL A B C A B C A B C A B CFondamenti di Informatica I a.a. 20072007-0837

Come collegare gli interruttoriSi può manipolare l’espressione di L usando la proprietàdistributiva dell’AND rispetto all’ORL A B C A B C A B C A B CL A (B C B C) A (B C B C)BCABCABCBC1 0 0Fondamenti di Informatica I a.a. 20072007-08BCABCABCBC1 0 138

EserciziEsercizio 1Siano a2, a1, b2, b1 i bit che rappresentano due numeri interipositivi (A a2a1 e B b2b1). Sia r una variabile booleana chevale 1 se e solo A è maggiore di B (A B). Ad esempio,quando A 11 e B 10, allora a2 1, a1 1, b2 1, b1 0 e r 1. Siscriva la forma canonica che definisce r come funzione di a2,a1, b2, b1.Esercizio 2I signori A, B, C e D fanno parte di un consiglio diamministrazione. Sapendo che hanno a disposizione leseguenti quote di possesso azionario A 40%, B 25%,C 20%, D 15%, formalizzare tramite tabella di verità (consuccessiva estrazione della forma canonica) la funzionebooleana che decide quando il consiglio di amministrazioneè in grado di approvare una mozione.Fondamenti di Informatica I a.a. 20072007-0839

Esercizi (continua)Esercizio 3Il direttore di una squadra di calcio vuol comprare 4giocatori dal costo di 2, 5, 6 e 8 milioni di euro, ma ha adisposizione solo 8 milioni. Siano a2, a5, a6, a8 variabilibooleane che valgono 1 se e solo se si acquistano,rispettivamente, i giocatori da 2, 5, 6, 8 milioni. Sia r unavariabile che è vera se e solo se l’insieme di giocatori che sidecide di comprare costa meno della cifra disponibile. Adesempio, se a2 1, a5 1, a6 0, a8 0, allora r 1. Si scriva laforma canonica che definisce r come funzione delle variabilia2, a5, a6, a8.Fondamenti di Informatica I a.a. 20072007-0840

Sistemi di numerazioneFondamenti di Informatica I

progetto degli elaboratori digitali Sistemi di numerazione da additivo a posizionale, da decimale a binario, a esadecimale: l’alfabeto dell’elaboratore La rappresentazione dei dati e l’aritmetica degli elaboratori dai bit ai numeri, ai testi, alle immagini, alla musica, ai video in digitale Sommario UNIVAC (1951)

Related Documents:

PowerMart, Metadata Manager, Informatica Data Quality, Informatica Data Explorer, Informatica B2B Data Transformation, Informatica B2B Data Exchange, Informatica On Demand, Informatica Identity Resolution, Informatica Application Information Lifecycle Management, Informatica Complex Event Pro

Jun 14, 2019 · Informatica, Informatica Platform, Informatica Data Services, PowerCenter, PowerCenterRT, PowerCenter Connect, PowerCenter Data Analyzer, PowerExchange, PowerMart, Metadata Manager, Informatica Data Quality, Informatica Data Explorer, Informatica B2B Data Transformation, Informatica B2B Data Exchange Informatica

Informatica, Informatica Platform, Informatica Data Services, PowerCenter, PowerCenterRT, PowerCenter Connect, PowerCenter Data Analyzer, PowerExchange, PowerMart, Metadata Manager, Informatica Data Quality, Informatica Data Explorer, Informatica B2B Data Transformation, Informatica B2B Data Exchange and Informatica .

Informatica, Informatica Platform, Informatica Data Services, PowerCenter, PowerCenterRT, PowerCenter Connect, PowerCenter Data Analyzer, PowerExchange, PowerMart, Metadata Manager, Informatica Data Quality, Informatica Data Explorer, Informatica B2B Data Transformation, Informatica B2B Data Exchange Informatica

Informatica, Informatica Platform, Informatica Data Services, PowerCenter, PowerCenterRT, PowerCenter Connect, PowerCenter Data Analyzer, PowerExchange, PowerMart, Metadata Manager, Informatica Data Quality, Informatica Data Explorer, Informatica B2B Data Transformation, Informatica B2B Data Exchange Informatica

Informatica, Informatica Platform, Informatica Data Services, PowerCenter, PowerCenterRT, PowerCenter Connect, PowerCenter Data Analyzer, PowerExchange, PowerMart, Metadata Manager, Informatica Data Quality, Informatica Data Explorer, Informatica B2B Data Transformation, Informatica B2B Data Exchange and Informatica

PowerMart, Metadata Manager, Informatica Data Quality, Informatica Data Explorer, Informatica B2B Data Transformation, Informatica B2B Data Exchange Informatica On Demand, Informatica Identity Resolution, Informatica Application Information Lifecycle Management, Informatica Complex Event Processing, Ultra Messaging, . Informatica Master Data .

Informatica Dynamic Data Masking Installation and Upgrade Guide . Informatica Data Explorer, Informatica B2B Data Transformation, Informatica B2B Data Exchange Informatica On Demand, Informatica Identity Resolution, Informatica Application Information Lifecycle Management, Informatica Complex Event Processing, Ultra Messaging,