Lezione 2 OPERAZIONI ARITMETICHE E LOGICHE ARCHITETTURA DI UN ELABORATORE Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore Comunicazione importante dalla prossima settimana, la lezione del venerdì si terrà: dalle 15:00 alle 17.15 in aula 311 l’orario del giovedì resta invariato. Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 1 OPERAZIONI BINARIE • Vedremo l’addizione e la sottrazione (riflettete sul fatto che tutte le operazioni di base si riconducono alla somma algebrica) • Basta ricordare che: 0 + 0 = 0 con riporto 0 0 + 1 = 1 con riporto 0 1 + 0 = 1 con riporto 0 1 + 1 = 0 con riporto 1 Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore LA SOMMA 0 + 0 = 0 con riporto 0 0 + 1 = 1 con riporto 0 1 + 0 = 1 con riporto 0 1 + 1 = 0 con riporto 1 Secondo le regole di riporto Es. 00010101 + verifica: 00001101 = 00010101 = 21 ---------------- 00001101 = 13 00100010 00100010 = 34 infatti 21 + 13 = 34 Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 2 LA SOTTRAZIONE 0-0=0 0 - 1 = 1 con prestito 1-0=1 1-1=0 Secondo le regole di fianco Es. 00010101 verifica: 00001101 = 00010101 = 21 ---------------- 00001101 = 13 00001000 00001000 = 8 infatti 21 - 13 = 8 Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore MOLTIPLICAZIONE E DIVISIONE Valgono le regole seguenti MOLTIPLICAZIONE: 0*0=0 0*1=0 1*0=0 1*1=1 DIVISIONE: segue le stesse regole della divisione decimale Es. 1100 10 =10 10 == 0 10 110 Provate da soli ad eseguire: 000101000 * 00000010 000101000 / 00000010 e verificate il risultato, convertendo in sistema binario Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 3 RAPPRESENTAZIONE DEI TESTI • Si utilizzano 52 lettere alfabetiche (maiuscole e minuscole) • 10 cifre (0..9) • Segni di interpunzione (,.;:!”?’^\ /…) • Operatori matematici + - + [ -+ / > < ecc… • Caratteri tipici (à è ì ò ù … • Altri simboli @ # | £ $ % & • In totale sono circa 220 caratteri. Abbiamo visto che per i numeri si utilizzano 8 bit. Lo stesso vale per gli altri simboli. Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore I SIMBOLI ALFABETICI • Sono anch’essi codificati da un codice binario (8 bit) • Vi sono codifiche standard. Le più famose: – ASCII (American Standard Code for Information Interchange)Æ 8 bit per carattere. Codifica 256 caratteri – ANSI (American National Standard Institute) – UNICODE Æ16 bit per ogni carattere, rappresenta ASCII e caratteri di qualsiasi lingua (può rappresentare 34168 caratteri) • Altre codifiche proprietarie: • MSWindows Æ16 bit per carattere (simile a unicode) Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 4 TAVOLA ASCII Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore ESEMPIO DI CODIFICA ASCII 01110000 01101111 01101100 • Dividendo la stringa in gruppi di byte si risale alla parola (con riferimento alla tavola): 01110000 01101111 01101100 P O I Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 5 ALGEBRA DI BOOLE • Abbiamo detto che un elaboratore opera confronti semplici. Introduciamo l’algebra booleana. • Si deve a Boole (matematico inglese, XIX sec.) • Si basa su 2 stati: – ON – acceso – OFF – spento • Le variabili booleane possono assumere solo 2 valori: 0 e 1 • Con le variabili booleane si costruiscono funzioni booleane che possono assumere solo 2 stati: TRUE e FALSE Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore TABELLE DI VERITA’ E OPERATORI • Gli operatori logici che esprimono le relazioni tra le variabili sono: • NOT, AND, OR, XOR • Esistono poi NAND e NOR (operatori universali) che permettono di esprimere qualsiasi altra delle precedenti espressioni, utilizzando un solo tipo di operatori • Ogni funzione booleana ha una sua tabella della verità Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 6 Tabelle di verità: NOT Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore Tabelle di verità: AND Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 7 Tabelle di verità: OR Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore Tabelle di verità: XOR Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 8 Tabelle di verità: NAND Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore Tabelle di verità: NOR Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 9 Algebra booleana ed elaboratore • Abbiamo detto che l’elaboratore rappresenta l’informazione in modo digitale (intervalli finiti)… • … e che traduce molte informazioni in binario (informazioni analogiche, numeri, lettere, comandi…) • Inoltre svolge operazioni utilizzando l’aritmetica binaria • L’elaboratore “ragiona” mediante confronti semplici, poiché quel che comprende con facilità è la differenza tra 0 e 1 (vero-falso, “passa corrente” – “non passa corrente” nei circuiti) • Dunque i confronti vengono effettuati grazie all’algebra booleana Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore Archittettura di un elaboratore Il modello di Von Neumann - 1 • 1946 – John Von Neumann • Modello teorico ancora valido e molto utilizzato (eccezione macchine ad elaborazione parallela) • Schematizza in modo omogeneo situazioni diverse Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 10 Il modello di Von Neumann - 2 Concettualmente si identificano i componenti: • Memoria (per procedura, dati iniziali, risultati intermedi e finali) • Funzione aritmetica (operazioni, non solo aritmetiche, sui dati) • Ingresso/Uscita (dispositivi per ricevere/inviare dati) • Controllo (per eseguire passi procedure coordinando flusso dati tra i preceenti componenti) È la filosofia alla base dei calcolatori digitali Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore Il modello di Von Neumann - 3 Si suole schematizzare così l’architettura di Von Neumann: • Quattro blocchi comunicanti tra loro mediante il bus • Bus: canale di scambio informazioni (e segnali di controllo) CPU Memoria principale Memoria secondaria Dispositivi INPUT OUTPUT BUS Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 11 Il modello di Von Neumann - 4 Corrispondentemente ai concetti visti, si ha: • CPU (Central Processing Unit) • Memorie • Dispositivi I/O • Bus: nel modello di Von Neumann è costituito da 3 bus distinti: – Bus dei dati: i dati viaggiano da e verso la CPU – Bus degli indirizzi: dati solo da CPU – Bus dei segnali di controllo: dati solo da CPU Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore Il bus • Scambio informazioni • Fisicamente: conduttori elettrici (linee) • Tre gruppi: – Linee dati – Linee indirizzi (identificano unità da usare durante trasferimento) – Linee di controllo (segnali temporizzazione, read/write, tipo dati) • Si possono avere conflitti • Dispositivi attivi: master (padroni) • Dispositivi passivi: slave (schiavi) Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 12 ESERCITAZIONE Creazione di un VideoGiornale del CdS • leggibile su cellulare o su WEB TV • redatto da voi Chi voglia far parte del Comitato di Redazione metta una o accanto al suo nome sul foglio presenze Parlatene con la Dott.sa Folgieri Giovedì prossimo Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche – arch. Elaboratore 13