Lezione 2

annuncio pubblicitario
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
Scarica