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)
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,