Algebra di Boole e reti combinatorie - di-srv.unisa.it · ... algebra di Boole e circuiti...

Post on 16-Feb-2019

241 views 0 download

Transcript of Algebra di Boole e reti combinatorie - di-srv.unisa.it · ... algebra di Boole e circuiti...

Aritmetica in virgola mobile Algebra di Boole e reti logiche

Esercizi

Mercoledì 8 ottobre 2014

Notazione scientifica normalizzata La rappresentazione in virgola mobile che adotteremo si basa sulla notazione scientifica normalizzata

• Notazione scientifica normalizzata in base 2:

N= (-1) s M 2exp

s = segno positivo se s=0, negativo se s=1

M = Mantissa numero decimale con parte intera uguale a 1

exp = esponente opportuno (intero)

Esempi: +11,001 = (-1) 0 1,1001 21

- 1100,1 = (-1) 1 1,1001 23

+0,0011= (-1) 0 1,1 2-3

(senza polarizzazione)

polarizzazione = 127

: esempi

Aritmetica in virgola mobile

Algoritmo

Troppo difficile?

• Esiste anche la doppia precisione su 64 bit (1-11-52) (double in C)

• Non studieremo moltiplicazione e divisione • Le istruzioni MIPS che studieremo tratteranno

numeri rappresentati in complemento a 2. Per esempio: add, sub,…

• Il MIPS supporta anche il formato IEEE 754 a singola (e doppia) precisione con istruzioni particolari: Per esempio: add.s, sub.s,…

Riepilogo e riferimenti

• I numeri in virgola mobile; standard IEEE 754 a singola precisione

• Somma in virgola mobile: [PH] par. 3.5 (fino a ‘La somma in virgola mobile’)

• Abbiamo finito le rappresentazioni dell’informazione. Adesso: algebra di Boole e circuiti combinatori

• Faremo un test sul programma fin qui svolto, cioè tutte le rappresentazioni e conversioni studiate.

Mercoledì 15 ottobre?

Punto della situazione

• Abbiamo visto le varie rappresentazioni dei numeri in binario e la loro aritmetica

• Adesso vedremo la logica digitale usata dal calcolatore nell’ottica di

• Costruire l’ALU

• L’ALU è usata da quasi tutti i tipi di istruzioni dell’architettura che studieremo

Algebra di Boole e reti logiche

AND ovvero il prodotto AND(x,y) con x, y variabili che possono assumere valore Vero o Falso.

Risultato Vero se entrambe le variabili sono poste a Vero, Falso, altrimenti.

Interpretando Vero come 1 e Falso come 0

AND(x,y) corrisponde al prodotto x y.

AND(F,F) = F AND(F,V) = F AND(V,F) = F AND(V,V) = V

0 0 = 0 0 1 = 0 1 0 = 0 1 1 = 1

x y x * y 0 0 0 0 1 0 1 0 0 1 1 1

Tavola di verità

OR ovvero la somma OR(x,y) con x, y variabili che possono assumere valore Vero o Falso.

Risultato Vero se almeno una variabile è posta a Vero, Falso, altrimenti.

Interpretando Vero come 1 e Falso come 0

OR(x,y) corrisponde alla somma x + y, in cui 1+1 = 1.

OR(F,F) = F OR(F,V) = V OR(V,F) = V OR(V,V) = V

0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 1

x y x + y 0 0 0 0 1 1 1 0 1 1 1 1

Tavola di verità

NOT ovvero la negazione NOT(x) con x variabile che può assumere valore Vero o Falso.

Risultato Vero se la variabile è posta a Falso;

Falso, altrimenti.

Interpretando Vero come 1 e Falso come 0

NOT(x) corrisponde alla negazione.

NOT(V) = F NOT(F) = V

0 = 1 1 = 0

x x 0 1 1 0

XOR o OR esclusivo XOR(x,y) con x, y variabili che possono assumere valore Vero o Falso.

Risultato Vero se una variabile è posta a Vero, ma non entrambe,

Falso, altrimenti.

Interpretando Vero come 1 e Falso come 0

XOR(x,y) corrisponde a x y + x y = x y

XOR(F,F) = F XOR(F,V) = V XOR(V,F) = V XOR(V,V) = F

0 0 = 0 0 1 = 1 1 0 = 1 1 1 = 0

x y x y 0 0 0 0 1 1 1 0 1 1 1 0

La combinazione delle variabili e degli operatori viene chiamata espressione logica.

Mappa di verità o tavola di verità: tabella che definisce i valori dell’output per ogni possibile input

Circuito per l’ AND

Circuito per l’ OR

Circuito per lo XOR

Rete logica

Una rete logica è un’interconnessione di porte logiche AND, OR, NOT, in modo che ogni uscita da una porta alimenti al più un ingresso di una porta a

Valori in uscita x1= 0, x2= 0, x3= 1

Analisi di una rete: dalla rete alla funzione • Ogni rete logica calcola una funzione booleana

dei suoi ingressi

f(x1,x2,x3) = x3 ( x1 . x2) + (x1+x3)

• Nota: vedremo che vale anche l’inverso (sintesi)

Risultato principale

Corrispondenza fra funzioni logiche e reti logiche:

Analisi: data una rete determinare la funzione calcolata

Sintesi: data una funzione logica costruire una rete che la calcola

• Per ogni funzione logica possiamo costruire una rete logica che la realizza e viceversa

• Ogni funzione logica può essere espressa in termini soltanto di AND, OR, NOT.

Riferimenti

Appendice C di [PH] «The Basic of Logic Design»:

Gates, Truth tables, and Logic Equations: C.1, C.2, C.3

Oppure [P] cap. 3 (in parte)