Soluzioni. Prego di inviare le segnalazioni a questo indirizzo: Giacomo Bucci

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Soluzioni. Prego di inviare le segnalazioni a questo indirizzo: Giacomo Bucci"

Transcript

1 Soluzioni Questo documento contiene le soluzioni alla quasi totalità degli esercizi proposti nel libro Architettura e organizzazione dei calcolatori elettronici - Fondamenti, Mc-Graw Hill Le soluzioni vengono riportate capitolo per capitolo, mantenendo la numerazione del libro, senza ripetere il testo degli esercizi. Il lettore si accorgerà presto che il modo di esporre è alquanto schematico e che in più passaggi l italiano potrebbe essere migliorato. Molti degli esercizi proposti sono di carattere progettuale e pertanto viene presentata per essi una soluzione tra le tante possibili (non la soluzione). Non escludo che un lettore attento possa identificare soluzioni migliori. Quel lettore è invitato a comunicarmele, in modo da arricchire questo documento a vantaggio dei lettori futuri. Anche chi formulasse migliori algoritmi riguardanti gli esercizi sulla programmazione assembler è invitato a comunicarmeli. Ho fatto il possibile per rendere lo scritto privo di errori, ma so che questo è un obiettivo (quasi) irraggiungibile. Sarò grato a coloro che mi segnaleranno errori di qualunque genere. Naturalmente sarò altrettanto e più grato a chi mi segnalerà errori nel volume sopra menzionato. Prego di inviare le segnalazioni a questo indirizzo: Bucci@dsi.unifi.it Giacomo Bucci Aggiornato al 4 maggio

2 Attenzione! C è un errore malizioso L inchiostro della stampa non aveva finito di asciugarsi quando si è scoperto che a pagina 214 del testo si nasconde un errore capace di portare fuori strada. Trattandosi di un errore piuttosto rilevante abbiamo deciso di darne avviso anche in questo documento. La sequenza corretta di passi per l esecuzione dell istruzione ST V[Rb],RA è questa: T1: RB out, TI in T2: 0 16 IR[15:0] out, ADD, TO in T3: TO out, MAR in T4: RA out, SELDTRdir, DTR in T5: SELDTRdir, DTR out, MWR T6: SELDTRdir, DTR out, MWR Conseguentemente la sequenza completa (fetch-esecuzione) è questa: T1: PC out, MAR in, SEL4, ADD, TO in T2: MRD, TO out, PC in T3: MRD, DTR in T4: DTR out, IR in T5: RB out, TI in T6: 0 16 IR[15:0] out, ADD, TO in T7: TO out, MAR in T8: RA out, SELDTRdir, DTR in T9: SELDTRdir, DTR out, MWR T10: SELDTRdir, DTR out, MWR A pagina 217 il periodo: T4 da tutte le istruzioni e su T8 e T9 dall istruzione ST. Dunque il comando DTR out può essere espresso come: DTR out = T4 + (T8+T9) ST si trasforma nel seguente: T4 da tutte le istruzioni e su T9 e T10 dall istruzione ST. Dunque il comando DTR out può essere espresso come: DTR out = T4 + (T9+T10) ST Naturalmente sono stati trovati altri errori e refusi nel testo. Si suggerisce vivamente di esaminare l Errata corrige sul sito. 2

3 1 Esercizio 1.3 Dal 1985 ad oggi (2004) ci sono 19 anni. Al tasso di crescita del 60% all anno avremmo avuto crescita pari a (1, 6) 19 = Conviene ragionare in millisecondi: 1,5 min = 1, = ms. Ne consegue che oggi occorrerebbero = 11, 9 ms Sessanta giri in meno di un secondo: un po difficile per lo spettatore seguire lo svolgersi della corsa! Esercizio 1.4 Cogliamo l occasione per risolvere anche l Esercizio 1.2. Dal 1991 ad oggi (2004) ci sono 13 anni. Essendo, per ipotesi, pari a 1 le prestazioni nel 91, al tasso di crescita del 60% all anno avremmo prestazioni pari a (1, 6) 13 = 450, 4. Se la crescita fosse stata solo tecnologica le prestazioni sarebbero pari a (1, 44) 13 = 114, 5. Se la crescita fosse stata solo architetturale le prestazioni sarebbero pari a (1, 16) 13 = 6, 9. Esercizio 1.5 Il lasso di tempo è pari a = 9 anni. Le prestazioni della CPU sarebbero cresciute di (1, 6) 9 = 68, 72 volte; quelle della memoria di (1, 07) 9 = 1, 84. Dunque le prestazioni complessive sarebbero cresciute di un fattore pari a 0, 5 68, , 5 1, 84 = 35, 28 Con un impatto della CPU è pari al 30% le prestazioni complessive sarebbero cresciute di un fattore pari a 0, 3 68, , 7 1, 84 = 21, 90 Esercizio 1.6 Dal 1998 al 2004 ci sono 6 anni. In 6 anni la crescita delle prestazioni della CPU sarebbe pari a (1, 6) 6 = 16, 78. Le prestazioni della memoria sarebbero cresciute di (1, 07) 6 = 1, 50 volte. Se le prestazioni del sistema nel suo complesso fossero cresciute come quelle della CPU, esse sarebbero pari a Se fossero cresciute come quelle della memoria sarebbero pari a 150. Poiché la crescita è stata di 3 volte, si deduce che la CPU ha contribuito solo per un 10% al miglioramento delle prestazioni. Si deve concludere che il nostro produttore fabbrica sistemi mal bilanciati e che la sua produzione non tiene dietro allo sviluppo tecnologico.

4 2

5 2 Esercizio 2.1 La conversione da base decimale a binaria di un numero intero si ottiene per successive divisioni per 2 (Paragrafo 2.2.1). La successione dei resti rappresenta, dalla cifra meno significativa alla più significativa, il numero binario. Mostriamo il processo di conversione in riferimento al numero La successione di quozienti e resti ottenuti dividendo per 2 è: (71,1), (35,1), (17,1), (8,1), (4,0), (2,0), (1,0), (0,1) dunque: = Applicando lo stesso procedimento si ottiene: = ; = Per quanto si riferisce ai numeri frazionari si tratta di applicare la tecnica del Paragrafo 2.5. Considerando, ad esempio, il numero 0,7155 e limitandoci alle prime otto cifre significative si ha: 0, = 1, 431 0, = 0, 862 0, = 1, 724 0, = 1, 448 0, = 0, 896 0, = 1, 792 0, = 1, 584 0, = 1, 168 Dunque 0, = 0, Per i numeri in virgola si applicano ambedue le regole. Considerando il numero 11,77, relativamente a 11 si ha questa successione di quozienti e resti ottenuti dividendo per 2: (5,1), (2,1), (1,0), (0,1) dunque: = mentre per la parte frazionaria (fermandosi alla sesta cifra decimale) si ha: 0, 77 2 = 1, 54 0, 54 2 = 1, 08 0, 08 2 = 0, 16 0, 16 2 = 0, 32 0, 32 2 = 0, 64 0, 64 2 = 1, 28 (2.1) dunque 0, = 0, In conclusione 11, 77 = 1011,

6 Esercizio 2.2 Per la conversione da binario a decimale si calcola il polinomio delle potenze di 2 i cui coefficienti sono dati dalla stringa binaria di partenza (Paragrafo 2.2.1). Pertanto al numero corrisponde il polinomio: = In modo del tutto analogo si ottiene: = e = Esercizio 2.3 La conversione da una generica base alla base decimale si ottiene col metodo del calcolo del polinomio di potenze della base di partenza. Al numero 1AB0 16 corrisponde il polinomio: A B = = Esercizio 2.4 Per la conversione del numero si ha: = Esercizio 2.5 La conversione dalla base decimale ad una base generica si ottiene per successive divisioni del numero da convertire per la base di arrivo. Per il numero si ottiene: 3500: : Tenuto conto che = C 16, = A 16, = D 16, ne consegue: = DAC 16 La conversione a base 8 si ottiene in modo del tutto analogo: Dunque = : : : Analogamente si ottiene: = ; = Esercizio 2.6 La conversione tra basi che sono potenze l una dell altra si ottiene raggruppando opportunamente le cifre del numero espresso nella base più piccola (Paragrafo 2.2.2). Dunque basta convertire prima il numero dato nella base più piccola e poi effettuare le altre conversioni. Ad esempio: In maniera analoga: D15 16 = = = = = = = = = = 6E

7 Esercizio 2.7 La conversione tra basi che non comprendono la base decimale né siano tra loro potenze l una dell altra, richiede il passaggio dalla base di partenza alla base decimale calcolando il polinomio corrispondente e dalla base decimale alla base di arrivo utilizzando le successive divisioni. Per la converversione di da base 3 a base 16 si ha: = = Segue: 524: 16 C 32: In conclusione: = 20C 16 Per la conversione di 3201 da base 4 a base 7 si ha: e quindi: Dunque: = (225) : : = (441) 7 Per le altre conversioni si ha: = ; = Esercizio 2.8 Il numero 9 è una potenza del 3; dunque il passaggio tra le due basi si ottiene raggruppando opportunamente le cifre (come nel passaggio tra la base 2 e la base 4). A tal fine si faccia riferimento alla Tabella = = Esercizio = = Nell illustrazione che segue viene calcolato il risultato della prima somma binaria (si indica il riporto solo se è 1): Riporti Primo addendo = Secondo addendo Risultato Mancano moltiplicazioni e divisioni Dunque = In modo analogo si ha: = Per quanto riguarda le sottrazioni binarie si ha invece (si indica il prestito solo se è 1): 1 Prestiti Minuendo = Sottraendo Risultato Dunque = Analogamente: =

8 Esercizio 2.10 L operazione di somma si esegue cifra per cifra come se fosse in base dieci; al risultato si toglie il numero degli elementi della base in cui sono espressi i numeri da sommare. Ciò che si ottiene è un risultato parziale della somma richiesta. Si procede così fino al termine tenendo conto dei riporti delle somme parziali precedenti. Per la somma in base 3 si ha: Per la differenza in base 8 si ha: 1 Riporti Primo addendo = Secondo addendo Risultato 1 Prestiti Minuendo = Sottraendo Risultato Naturalmente il modo meno soggetto a errore per eseguire operazioni aritmetiche fra numeri espressi in una base diversa da quella decimale, si convertono i numeri nella base dieci, si esegue l operazione in questa base e si converte poi il risultato nella base di partenza. Essendo = e = ed essendo = ; poichè = ne consegue = Analogamente: = e 4 6 = 4 10 ; : 4 10 = ; poichè = ne consegue : 4 6 = Esercizio 2.11 Scegliamo di effettuare l operazione richiesta in base ottale, per cui, si ha: A0E3 16 = = ovvero Verifica: = = A0E3 16 = A E = Quindi = Esercizio = = Considerando quanto detto al Paragrafo 2.7 si ha: 14, 3 10 = 1110, = 1, , Quindi la trasformazione richiesta è: Segno=0; Mantissa= Esponente= Esercizio 2.16 Ponendo la sequenza in ordine testuale e rappresentandola a byte si ha: Dalla tabella di codifica ASCII si ottiene la stringa 4C 31 6A L 1 y 3 7 6

9 Esercizio 2.17 Mostriamo la soluzione in forma del tutto generale. Si assume che la stringa di caratteri ASCII sia memorizzata nel vettore V di dimensioni pari alla lunghezza della stringa. Si assuma inoltre che tutti i caratteri contenuti in V siano effettivamente caratteri corrispondenti ai 10 digit decimali (0,1,...9). L algoritmo di conversione della stringa in rappresentazione binaria può essere schematizzato come: Z 0 for i = 1 to n Z Z 10 + num(v [i]) dove num(c) è la funzione che trasforma la codifica ASCII di un carattere numerico nel corrispondente valore. In pratica si tratta di sottrarre dalla codifica ASCII del carattere il numero esadecimale 30 corrispondente alla codifica di 0. Nel caso specifico la stringa 2836 è codificata in memoria con questa sequenza esadecimale: Esercizio 2.18 Numero Codifica BCD Tabella 2.1 Codifica BCD dei numeri in Esercizio: i singoli raggruppamenti di quattro bit del codice BCD costituiscono la codifica binaria delle cifre decimali. Se si effettua la somma tra la rappresentazione binaria di due digit BCD si hanno tre possibili risultati: la somma è minore di 9: il risultato è già codificato in BCD (es.: = 5); la somma eccede 9 ma non dà riporto: occorre ricodificare il risultato in BCD aggiungendo 6. Da questa situazione può risultare un riporto per la cifra di sinistra (es.: 9+2 = 11 ovvero 1001b+0010b = ); la somma eccede 9 e dà riporto (es.: = 17); anche in questo caso occorre ricodificare il risultato aggiungendo 6. L esecuzione della somma procede da destra verso sinistra. Nel caso specifico si ha: = 17 ovvero 1001b b = 10001b che ricodificato in BCD (sommando 6) è Dunque la cifra a destra della somma è 7 con riporto = 11 ovvero 0111b b b = 1100b che ricodificato in BCD (sommando 6) è Dunque la somma di 7 con 4 e col riporto della cifra a destra è 2 con riporto di 1. In conclusione il risultato è 127. In Tabella 2.2 viene mostrato il processo relativo a questa somma. In Figura 2.1 lo schema a blocchi dell algoritmo di somma di due cifre BCD (il riporto su questa riga si somma a sinistra) Tabella 2.2 Somma BCD di 79 con 48 attraverso una somma binaria e normalizzazione. 7

10 Figura 2.1 Algoritmo per la somma di due cifre BCD attraverso un sommatore binario di 4 bit. Il blocco somma 6 normalizza la rappresentazione binaria a rappresentazione BCD. 8

11 3 Esercizio 3.1 X Y Z XY Z X Y XY Z + X Y Tabella 3.1 Tabella di verità funzione (a), Esercizio 3.1. A A B C A + C A B A B(A + C) Tabella 3.2 Tabella di verità funzione (b), Esercizio 3.1. Sono state riportate le variabili nella forma con cui entrano nell espressione. Esercizio 3.2 L espressione X + X Y + XZ si semplifica applicando al proprieta di assorbimento. X + X Y + XZ = X(1 + Z) + X Y = X + X Y = = X + X Y = (X + X)(X + Y ) = = 1(X + Y ) = X + Y L espressione A(B C + B + C) si semplifica applicando la proprietà di assorbimento e successivamente la proprietà distributiva. A(B + C) = AB + AC L espressione A B(A + C)(B + C) si semplifica nel modo seguente A B(A + C)(B + C) = (A BA + A BC)(B + C) = A BC(B + C) = A BC

12 Esercizio 3.3 La rete corrispondente alla funzione (a) è mostrata a sinistra in Figura 3.1, mentre la semplificazione è a destra. Equivalentemente la rete corrispondente alla funzione (b) è mostrata a sinistra in Figura 3.2, mentre la semplificazione a destra. Figura 3.1 Rete originale e semplificata del punto (a) dell Esercizio 3.3. Figura 3.2 Rete originale e semplificata del punto (b) dell Esercizio 3.3. Esercizio 3.4 Si vuole arrivare a scrivere l uguaglianza di De Morgan nella forma: x 1 + x x n = x 1 x 2... x n Posto x 2 + x x n = X, sostituendo nella precedente e applicando il teorema di De Morgan per due variabili si ha: x 1 + x x n = x 1 + X = x 1 X = x 1 (x x n ). Applicando iterativamente la semplificazione si ottiene l uguaglianza richiesta. Esercizio 3.7 Si faccia riferimento alla prima forma canonica. Data la generica funzione f(x 1, x 2,..., x n ) è sempre possibile riportarla alla forma canonica: Se f(x 1, x 2,..., x n ) contiene generici termini di somme e prodotti, è sempre possibile riportare f ad una somma di prodotti svolgendo le operazioni algebriche (i prodotti) in f. Quando f è in forma di somma di prodotti è sempre possibile riportare i singoli prodotti a mintermini, moltiplicandoli con termini in forma (x i +x i ), x i essendo una variabile che non compare nel prodotto. 10

13 Esempio: sia data f(x 1, x 2,..., x n ) = x 1 (x 2 + x 3 ) + x 2 x 3. x 1 (x 2 + x 3 ) + x 2 x 3 = x 1 x 2 + x 1 x 3 + x 1 x 3 (x 2 + x 2 ) = = x 1 x 2 (x 3 + x 3 ) + x 1 x 3 (x 2 + x 2 ) + x 1 x 2 x 3 + x 1 x 2 x 3 = = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 = = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3. Esercizio 3.8 La funzione di uscita della rete può essere scritta come f = wxy + wxy + wxy. Questa si semplifica nel modo che segue. f = wxy + wxy + wxy = wxy + wxy + wxy + wxy = xy + wx = x(w + y) Esercizio 3.9 L espressione di z si ricava direttamente dalla specifica prendendo la parola allora come OR e la parola quando come AND. z = (x + y)c 1 + xyc 2 + xyc 3 Con le mappe si può verificare che questa è l espressione minima (occorre tenere conto delle condizioni di indifferenza). Esercizio 3.10 (x + y)(x + y) = xx + xy + xy + yy = x + x(y + y) + 0 = x + x = x Esercizio 3.11 Per la funzione (a) si ha: F = (x + yz)(wx + z)(y + z) = wy + wz + xzy + xz + xwz + xywz + yz. x y y w z wy wz xzy xz xywz yz F Tabella 3.3 Tabella di verità della funzione (a) dell Esercizio La mappa di F è in Figura 3.3. La copertura di F fornisce l espressione minima: F = yz + yw + wz + xz. Per la funzione (b) si ha: F = xy(x + w(yz + yz)) = (x + y)(x + w(yz + y + z)) = (x + y)(x + wyz + wy + wz) = xywz + xwy + xwz + xy + wz + y + ywz = wz + y + xy + xwz. Riportando F sulla mappa e coprendo come in Figura 3.4 si ottiene la funzione F = y + x + wz. 11

14 Figura 3.3 Mappa della funzione (a) dell Esercizio x x y y w w z z wz xy xwz F Tabella 3.4 Tabella di verità della funzione (b) dell Esercizio Figura 3.4 Mappa di della funzione (b) dell Esercizio Per la funzione (c) si ha: F = wxyz(x + (wx + z)y + z(x + y)) = wxyz(x + (wxy + z y) + zx + zy) = wxyz(x + wxy + z y + zx + zy) = wxyz(x) = wxyz. Non è quindi necessario procedere alla creazione della tabella di verità e della mappa in quanto la funzione è già ridotta al minimo. Per la funzione (d) si ha: F = (w + x + y + z)(y + zx) = wy + wzx + xy + zx + xyz + zy + x = x + zy + wy. E facile verificare che l espressione non è ulteriormente semplificabile. Del resto per essa vale la tabella di verità di Tabella 3.5 e la mappa di Karnaugh di Figura 3.5 dalla quale si ottiene F = x + zy + wy. 12

15 x y y w z zy wy F Tabella 3.5 Tabella di verità della funzione (d) dell Esercizio Figura 3.5 Mappa della funzione (d) dell Esercizio Esercizio 3.12 Prima di tutto si riportano le espressioni in forma SP. y = x 1 x 2 (x 1 x 3 + x 2 x 3 x 4 + x 2 x 4 ) + x 3 x 4 (x 1 + x 2 + x 3 ) = = x 1 x 2 x 1 x 3 + x 1 x 2 x 2 x 3 x 4 + x 1 x 2 x 2 x 4 + x 3 x 4 x 1 + x 3 x 4 x 2 + x 3 x 4 x 3 = = 0 + x 1 x 2 x 3 x x 3 x 4 x 1 + x 3 x 4 x = = x 1 x 2 x 3 x 4 + x 1 x 3 x 4 + x 2 x 3 x 4 d = x 1 x 4 (x 2 x 3 + x 2 x 3 ) + x 1 x 2 x 3 x 4 = x 1 x 2 x 3 x 4 + x 1 x 2 x 3 x 4 + x 1 x 2 x 3 x 4 Si disegna quindi la mappa, riportando gli 1 della funzione e le condizioni di indifferenza. Con la copertura di Figura 3.6 si ottiene f = x 2 x 4 + x 1 x 3 x 4 Esercizio 3.13 In un decodificatore BCD si hanno 6 condizioni di indifferenza, come si può notare dalla Tabella del paragrafo del testo. Si tratta quindi di coprire le caselle della mappa che in Figura 3.13 sono condizioni di indifferenza. E facile verificare che si ottiene: Z = AB + AC = A(B + C) dove Z è il segnale che indica la presenza di codice non BCD. La Figura 3.7 mostra la rete conseguente. 13

16 Figura 3.6 Mappa per l Esercizio Figura 3.7 Rete dell Esercizio Esercizio 3.14 La dimostrazione può essere fatta nel seguente modo: x 1 (x 2 x 3 ) = x 1 (x 2 x 3 ) + x 1 (x 2 x 3 ) = x 1 (x 2 x 3 + x 3 x 2 ) + x 1 (x 2 x 3 + x 3 x 2 ) = x 1 (x 2 x 3 x 3 x 2 ) + x 1 x 2 x 3 + x 1 x 2 x 3 = x 1 (x 2 + x 3 )(x 3 + x 2 ) + x 1 x 2 x 3 + x 1 x 2 x 3 = x 1 (x 2 x 3 + x 2 x 3 ) + x 1 x 2 x 3 + x 1 x 2 x 3 = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 Mentre: (x 1 x 2 ) x 3 = (x 1 x 2 )x 3 + x 3 (x 1 x 2 ) = (x 1 x 2 + x 1 x 2 )x 3 + x 3 (x 2 x 1 + x 1 x 2 ) = x 1 x 2 x 3 + x 1 x 2 x 3 + x 3 (x 1 x 2 x 2 x 1 ) = x 1 x 2 x 3 + x 1 x 2 x 3 + x 3 (x 1 + x 2 )(x 2 + x 1 ) = x 1 x 2 x 3 + x 1 x 2 x 3 + x 3 (x 1 x 2 + x 1 x 3 ) = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 Dunque x 1 (x 2 x 3 ) = (x 1 x 2 ) x 3, e pertanto vale la proprietà associativa. Ne consegue x 1 (x 2 x 3 ) = (x 1 x 2 ) x 3 = x 1 x 2 x 3. 14

17 Esercizio 3.15 Data l espressione x 1 + x 2 (x 3 + x 4 (x 5 + x 6 (...))) complementando due volte e applicando il teorema di De Morgan si ha: x 1 + x 2 (x 3 + x 4 (x 5 + x 6 (...))) = x 1 + x 2 (x 3 + x 4 (x 5 + x 6 )) = = x 1 x 2 (x 3 + x 4 (x 5 + x 6 )) = = x 1 x 2 (x 3 + x 4 (x 5 + x 6 )) = = x 1 (x 2 (x 3 + x 4 (x 5 + x 6 ))) = = x 1 (x 2 (x 3 + x 4 (x 5 + x 6 ))) = = x 1 (x 2 x 3 (x 4 (x 5 + x 6 ))) = = x 1 (x 2 x 3 (x 4 (x 5 + x 6 ))) = = x 1 (x 2 x 3 x 4 (x 5 + x 6 )) = = x 1 (x 2 x 3 x 4 x 5 x 6 ). La regola è che una rete di SPSPSP... si trasforma in una rete di soli NAND sostituendo tutte le porte della rete data con porte NAND e complementando gli ingressi di ordine dispari nell espressione (il primo termine della SPSPSP... ha indice 1). Si veda la Figura 3.8. In modo analogo si prova che le reti PSPSPS... si trasformano in reti di soli NOR. Figura 3.8 A sinistra è mostrata la rete originaria dell Esercizio 3.15, mentre a destra la sua trasformazione in sole porte NAND. Esercizio 3.16 La trasformazione si ottiene con la tecnica dei pallini del paragrafo del testo. A partire dalla rete originale di Figura 3.9 si introducono i pallini di negazione come a sinistra di Figura Ciò richiede l introduzione dei negatori degli ingressi A, B, C, D, E. La rete a sinistra di Figura 3.9 si ridisegna come a destra, usando l usuale simbolo del NAND. In altre parole si tratta di sostituire tutte le porte con porte NAND e di negare gli ingressi di livello dispari (si confronti con l Esercizio 3.15). La Figura 3.11 mostra a sinistra l applicazione dei pallini e a destra la rete risultate in forma di soli NOR. Esercizio 3.17 L aggiunta sull uscita di una porta AND (OR) in una rete SP (PS) trasforma la rete SP (PS) in una PSP (SPS). Le reti SPS si trasformano in reti di NAND e le reti PSP in reti di NOR. Si veda l Esercizio

18 Figura 3.9 Rete originale Esercizio Figura 3.10 Successione dei passaggi per arrivare alla rete equivalente in forma di sole porte NAND. Figura 3.11 Successione dei passaggi per arrivare alla rete equivalente in forma di sole porte NOR. 16

19 Esercizio 3.18 Applicando il teorema di De Morgan si ottiene che la rete a destra in Figura 3.20 del testo rappresenta la funzione logica: F (A, B) = AB AB. AB AB = (A + B)(A + B) = AA + AB + A B + BB = AB + A B = (A + B)(A + B) = AB + BA = A B. Esercizio 3.19 Prima di tutto si riporta la funzione alla forma canonica attraverso espansioni e successive semplificazioni. Si ottiene: A = xyz + xyz + xyz + xyz, ovvero f(x, y, z) = (4, 5, 6, 7). Dunque le linee 4, 5, 6, 7 del mux vengono fissate a 1 mentre le rimanenti vengono impostate a 0, come in Figura Figura 3.12 Rete dell Esercizio Esercizio 3.20 Anzitutto occorre dare la forma canonica delle due funzioni di uscita. A = xy + x yz = xyz + xyz + x yz = (1, 6, 7) B = x + xy + z = = xy + x y + xyz + xyz + xz + xz = xyz + xyz + x yz + x y z + xyz + xyz + xyz + xyzx xz = x yz + x y z + xyz + xyz + xyz + xyz + xyz = (0, 1, 2, 3, 5, 6, 7). Le due espressioni permettono di fissare i collegamenti interni della PROM di Figura 3.13, (in essa il collegamento è rappresentato da una cerchiata). Esercizio 3.21 Il dispositivo SN7485 può essere utilizzato come decodificatore attraverso l impostazione fissa di opportuni ponticelli. Il numero 240h corrisponde al numero b. Con la realizzazione di Figura 3.14, i contatori chiusi impostano lo zero quelli aperti l uno. 17

20 Figura 3.13 PROM 8x2 che realizza le funzioni A = xy + yxz e B = x + xy + z. Figura 3.14 Rete dell Esercizio Esercizio 3.22 Il numero esadecimale 240 corrisponde in binario al numero Assumendo pari a 4 il fan-in delle porte AND si può predisporre una rete di decodifica per ogni parola di 4 bit. L uscita Z viene abilitata solo se gli ingressi corrispondono alla codifica binaria di 240. La rete è mostrata in Figura

21 Figura 3.15 Rete di decodifica indirizzo 240h. Esercizio Esercizio 3.23 Con riferimento alla Figura 3.48 del testo, si indichino con τ R e con τ S i tempi di commutazione che la cella FA richiede per calcolare rispettivamente il riporto e la somma. In una somma di n bit il riporto deve propagarsi attraverso n celle. Dunque i tempi di commutazione sono pari a R = nτ R per il riporto R n 1 e pari a S = (n 1)τ R +τ S per la somma. Poichè per il full adder si ha τ R = 3τ e τ S = 2τ, dove τ è il ritardo di commutazione della singola porta logica, si ottiene: S = 3τ(n 1) + 2τ = (3n 1)τ. Esercizio 3.24 Il look-ahead carry generator in Figura 3.50 ha in totale 29 porte: Esercizio 3.25 Il sommatore a 64 bit è composto da: 8 XOR 14 NAND 4 OR 3 NOT 16 full adder a quattro bit con τ R = 3τ 4 look-ahead carry generator 1 livello con τ R = τ 1 look-ahead carry generator 2 livello con τ R = τ Poiché con il look-ahead carry generator non si deve attendere la propagazione del riporto ne deriva che R = 3τ + τ + τ = 5τ. Per quanto si riferisce alla somma si ha S = 6τ, in quanto si deve tener conto di un ulteriore tempo τ di commutazione della porta XOR. Esercizio 3.26 Con riferimento alla Figura 3.58 del testo si osservi che c 3 = 1 comporta R i = 0. Ciò rende rende 0 le uscite delle tre porte AND a due ingressi nella parte a destra. Ne consegue che l unico contributo diverso da zero, come ingresso alla porta che restituisce S i, può essere fornito solo dalla porta AND a tre 19

22 ingressi. Poichè R i 1 = 1 la porta in questione ha in ingresso A i B i della stessa Figura. Adesso, poiche c 1 = 1 l ingresso A i di Figura 3.58 corrisponde ad A i di Figura 3.56, mentre l ingresso B i corrisponde, sempre in Figura 3.56 e 3.57, all ingresso B i. In conclusione, con riferimento alla schematizzazione di Figura 3.57, la configurazione di controllo c 3 c 2 c 1 c 0 R i 1 = fa generare alla ALU l uscita S = AB. 20

23 4 Esercizio 4.1 La rete di Figura 4.1 del testo è un latch realizzato con porte NOR. Sostituendo le porte NOR con porte NAND si ottiene la rete di Figura 4.1. Figura 4.1 Rete dell Esercizio 4.1. Nella Tabella 4.1 si può analizzare il comportamento del dispositivo in funzione degli ingressi. Si evidenzia che, nel caso di ingresso 00, la rete sequenziale ha le uscite Z non determinate. S R A Z 1 1 q q 1 0 q q Tabella 4.1 Comportamento del latch in funzione degli ingressi. Esercizio 4.2 Seguendo la tecnica dei pallini, dalla Figura 4.1 del testo, riportata a sinistra in Figura 4.2, si ottiene il latch a destra. Successivamente, si esegue la sostituzione con porte NAND, ottenendo il latch a sinistra di Figura 4.3, la cui realizzazione in logica negativa è mostrata a destra. Rispetto al precedente latch di NOR la differenza che intercorre tra i due è la stessa che esiste tra la logica positiva e negativa; ovvero le reti hanno lo stesso funzionamento a patto di considerare gli 0 come 1 e viceversa. (Si veda anche l Esercizio 4.1)

24 Figura 4.2 Latch di soli NOR di Figura 4.1 del testo e sua trasformazione in rete di NAND. Figura 4.3 Latch di soli NAND in logica positiva, a sinistra, e in logica negativa, a destra. Esercizio 4.4 In Figura 4.4 viene presentato lo schema generale di soluzione del problema. Si tratta di definire la rete combinatoria che nel caso (a) ha come ingressi S, R e y, e la cui uscita T ha l effetto di far commutare il flip flip in modo che appaia come un SR. Questo schema, mutatis mutandis, si usa per qualunque trasformazione tra diversi tipi di flip flop. Figura 4.4 Schematizzazione del problema della creazione di un FFSR sfruttando un FFT. Lo schema è valido anche nel caso generale. Il problema del caso (a) è schematizzato in Figura 4.4. In Tabella 4.2 sono mostrati gli ingressi richiesti per le possibili transizioni dei due tipi di FF. La mappa di y in funzione di S, R e y è mostrata a sinistra in Figura 4.5, applicando il procedimento descritto al paragrafo A.5 del testo, dalla mappa di y si passa alla mappa di T, che assume la forma a destra in Figura 4.5, la cui copertura porta alla seguente espressione per T: T = Sy + Ry 22

25 y y S R T Tabella 4.2 Transizioni di stato e corrispondenti ingressi per i Flip Flop SR e T. La rete corrispondente è riportata in Figura 4.6. Figura 4.5 Mappe Esercizio 4.4a. Figura 4.6 Rete Esercizio 4.4a. Il punto (b) chiede di ricavare un FFSR da un FFD e un FFJK da un FFD. In Tabella 4.3 sono mostrate le 3 tabelle di transizione per i FF usati. Mentre in Figura 4.7 le mappe relative alle transizioni. y y S R J K D Tabella 4.3 Transizioni di stato e corrispondenti ingressi per i FFSR, FFJK e FFD Poichè per un FFD vale l equazione di stato y = D, si tratta semplicemente di imporre D = S +Ry per il caso della trasformazione FFSR FFD e D = Jy + Ky per la trasformazione FFJK FFD. Si trovano così le reti mostrate rispettivamente a sinistra e destra in Figura

26 Figura 4.7 Mappa Esercizio 4.4b (FFSR e FFJK da FFD). Figura 4.8 Reti che realizzano, a sinistra un FFSR a partire da un FFD, mentre a destra un FFJK da un FFD. Per quanto ci si riferisce alla costruzione di un FFD da un FFT, si riportano in Tabella 4.4 le transizioni di stato e in Figura 4.9 le mappe di T corrispondenti. In Figura 4.10 la rete risultante. y y T D Tabella 4.4 Transizioni di stato e corrispondenti ingressi per i FFT e FFD Figura 4.9 Mappa Esercizio 4.4c (FFD da FFT). T = y D. 24

27 Figura 4.10 Rete che realizza un FFD da un FFT. Esercizio 4.5 Il valore F0h corrisponde a b. Qualunque sia il tipo di FF utilizzato per realizzare il registro, si tratta di legare PR e CL a massa o a Vcc in modo da portare i singoli FF al valore richiesto all atto della messa sotto tensione (Figura 4.11). La rete a destra di Figura 4.11 genera il segnale Clear/Set quando viene asserito R. Si noti la presenza di un inverter Schmitt triggered, per generare un onda il più possibile quadra. Figura 4.11 A sinistra i collegamenti necessari per il caricamento in presenza di un segnale di Clear/Set; a destra la rete che genera il segnale Clear/Set. Esercizio 4.6 La rete che deve essere progettata, ha un unico ingresso (x) e una sola uscita (z) che al 5 clock presenta la parità, mentre sui precedenti presenta x. In Figura 4.12 è mostrato lo schema in questione. Figura 4.12 Schema per l Esercizio 4.6. In Figura 4.13 c è il diagramma di transizione degli stati. La notazione usata per etichettare gli archi 25

28 è quella relativa al modello di Mealy. La colonna a sinistra (senza apici) individua un numero pari di 1, quella a destra un numero dispari. Supponendo di seguire lo schema a parità pari, sul 5 clock si ha z=0 se si è nello stato 4, altrimenti z=1 se si è nello stato 4, (indipendentemente da x). Figura 4.13 Diagramma degli stati per l Esercizio 4.6. Si può ora ricavare la tabella di flusso e delle transizioni di stato (Tabella 4.5). SP x z 0 1,0 1,1 1 2,0 2,1 2 3,0 3,1 3 4,0 4,1 4 0,0 0,0 1 2,0 2,1 2 3,0 3,1 3 4,0 4,1 4 0,1 0,1 Tabella 4.5 Tabella di flusso corrispondente al diagramma di stato di Figura 4.13 Codificando gli stati come sotto si ottengono le mappe in Figura :0000 1: :1001 2: :1010 3: :1011 4: :1100 Si noti che questa non è la codifica più conveniente in termini di minimizzazione della rete, ma è quella più naturale (rende comprensibile lo stato). Dalle mappe si ricavano le seguenti funzioni di stato e uscita, dalle quali può essere dedotto lo schema della rete. y 0 = y 1(y 0 x) y 1 = y 2(y 3 + y 0 ) y 2 = y 0y 3 + y 0 y 1 y 2 y 3 = y 3(y 0 y 2 + y 0 y 2 ) + y 0 y 1 y 2 y 3 z = y 0 y 1 y 2 y 3 x + x(y 0 + y 1 ). 26

29 Figura 4.14 Mappe che rappresentano la Tabella 4.5 secondo la codifica indicata.esercizio 4.6. Soluzione alternativa Possiamo scomporre il problema in modo da avere Un contatore che fornisce il segnale c sul 5 clock Una rete che calcola p (parità) Una rete che presenta su z il segnale x sui clock da 0 a 3, e p clock 4. Ne deriva lo schema di Figura Figura 4.15 Schema riassuntivo della soluzione alternativa all Esercizio 4.6. Il generatore di parità di Figura 4.15 ha il diagramma di stato di Figura Il diagramma rappresenta una macchina di Mealy. In ingresso c è la coppia x, c. L ingresso c è dato dall uscita di un semplice contatore modulo 5. Dalla copertura della mappa si ricava: p = yx + yc + yxc La rete che realizza il generatore di parità è in Figura

30 Figura 4.16 A sinistra è mostrato il diagramma di stato del generatore di parità dell Esercizio 4.6, sugli archi viene riportato xc/p. A destra la mappa relativa. Figura 4.17 Generatore di parità dell Esercizio 4.6 risultante dalla soluzione alternativa. 28

31 Esercizio 4.7 La sequenza riconosciuta è Z 1 =1 solo dopo il fronte di clock che ha fatto caricare nel registro questa configurazione (il quinto fronte). Con riferimento alla notazione di Figura 4.18, se i FF commutano sul fronte di salita (a sinistra in Figura), Z è 1 durante il 1 del clock che ha caricato mentre se i flip flop commutano sul fronte di discesa (a destra in Figura), Z è 1 durante 2 del medesimo clock. Figura 4.18 Tempi di commutazione per i FF dell Esercizio 4.7. Esercizio 4.8 Il diagramma della macchina che riconosce la sequenza è rappresentato in Figura Essendo 5 gli stati da codificare, ci servono 3 bit. Ad esempio si può utilizzare la seguente codifica: A 000 B 001 C 011 D 010 E 100 dalla quale deriva la Tabella delle transizioni 4.6. Notare che la rete riconosce le finestre, ma in modo non sovrapposto. A titolo di esempio si mostra l uscita in riferimento a un flusso di dati in ingresso: x z Figura 4.19 Diagramma di stato del riconoscitore della sequenza 10011, riconosciuta in ordine da sinistra a destra. Esercizio 4.8. Le corrispondenti mappe sono mostrate nella Figura 4.20, la cui copertura porta alle funzioni a destra nella stessa Figura. La rete è realizzata in Figura Per analizzare quale delle due soluzioni sia la migliore in termini di porte e FF basta semplicemente contare. La Figura 4.60 del testo risolve il problema con uno shift register, che sarà composto da 5 FF, 2 29

32 y 1 y 2 y 3 x y 1 y 2 y 3 z Tabella 4.6 Tabella delle transizioni del riconoscitore della sequenza 10011, Esercizio 4.8. y 1 = y 2y 3 x y 2 = y 3x + y 1 x y 3 = y 3x + y 1 x z = y 1 x Figura 4.20 Mappe e funzioni relative alla Tabella di transizione 4.6 dell Esercizio 4.8. Figura 4.21 Rete logica che riconosce la sequenza Esercizio 4.8. porte NOT e 2 porte AND. La soluzione presentata in Figura 4.21 utilizza 1 porta NOT, 5 porte AND, 2 porte OR e 3 FF. Dire quale delle due soluzioni sia la migliore è difficile. Un analisi di questo tipo ha però poco senso, in quanto va visto come i componenti vengano resi disponibili sul mercato. Si hanno allora delle sorprese. Per costruire lo shift register a 5 bit di Figura 4.60 occorre utilizzare il componente SN74198, un 8 bit Universale Bidirezionale Shift Register, a 28 piedini 30

33 mentre per le altre 4 porte si può utilizzare, facendo qualche trasformazione, il componente SN7400, costituito da 4 porte NAND a 2 ingressi, con un totale di 14 piedini. Con 2 componenti si risolve il circuito. Per la rete in Figura 4.21 servono 2 componenti SN7474, ognuno dei quali è composto da 2 FFD Positive Edge Triggered a 14 piedini, e per le porte, basta utilizzare 2 integrati SN7400, specificati sopra (ciò presuppone però una strutturazione della rete in forma di soli NAND). Nel primo caso si è quindi utilizzato 2 componenti integrati con un totale di 42 piedini di collegamento, mentre nel secondo caso sono serviti 4 integrati per un totale di 56 piedini collegati. Specifiche sugli integrati, specificatamente sulla serie SN74xx si trovano su: Esercizio 4.9 La rete di Figura 4.61 è un contatore modulo 3 realizzato con FFJK. Tenuto conto del funzionamento del FFJK (Tabella 4.7), il comportamento della rete, a partire dallo stato 00 è quello di Tabella 4.8. J K y 0 0 y y Tabella 4.7 Modalità di funzionamento del flip flop JK. Clock n y 0 y 1 y 0 y Tabella 4.8 Funzionamento del contatore di Figura Con y 0 e y 1 si indicano rispettivamente l uscita del FF di sinistra e di destra di Figura Esercizio 4.10 Utilizzando per gli stati A,B,C la seguente codifica: A 00, B 01 e C 10, si ottiene la tabella delle transizioni mostrata in Figura Figura 4.22 Tabella delle transizioni Esercizio Alla tabella delle transizioni corrispondono le mappe a destra di Figura 4.23 dalle quali si ricavano le funzioni a sinistra della stessa Figura. Infine la realizzazione della rete è mostrata in Figura

34 y 0 = y 0x + y 1 x y 1 = y 0 y 1 x z = y 0 Figura 4.23 Mappe e funzioni della Tabella 4.22 dell Esercizio Figura 4.24 Rete logica dell Esercizio Esercizio 4.11 Cominciamo con la realizzazione tramite FFJK. Per semplicità consideriamo il caso n = 2. Si tratta di collegare i flip flop in modo tale che ciascun FF divida la frequenza del clock per 2 e di usare lo stato del FF come clock per il successivo. Con FFJK ciò si ottiene come in Figura Ovviamente se n > 2 si tratta di aggiungere il corrispondente numero di FF. Nel caso di flip flop D, la divisione di frequenza del primo FF (y 0 ) comporta che esso deve cambiare stato ad ogni clock, ciò impone che l ingresso sia il complemento dello stato. Dunque: D 0 = y 0 da cui deriva la rete di sinistra in Figura Per quanto riguarda il secondo FF, esso si comporterà come il precedente, ma userà come clock il segnale y 0. Ne deriva la rete a destra di Figura

35 Figura 4.25 Realizzazione del contatore dell Esercizio 4.11 con FFJK. L uscita y 0 è un segnale periodico con frequenza pari a metà di quella del clock. Il segnale y 1 ha frequenza pari a metà di quella di y 0. Figura 4.26 A sinistra la divisione di frequenza in un FFD; a destra la realizzazione del contatore dell Esercizio 4.11 con FFD. L uscita y 0 è un segnale periodico con frequenza pari a metà di quella del clock. Il segnale y 1 ha frequenza pari a metà di quella di y 0. Esercizio 4.12 Per progettare un contatore sincrono modulo N 2 n conviene partire direttamente dalla tabella di flusso, si tratta di una tabella degenere, in quanto è priva di ingressi. In Figura 4.27 vengono riportati la tabella di flusso di un generico contatore sincrono modulo N, quella di un contatore modulo 5 e la tabella delle transizioni di stato corrispondenti a quest ultima (avendo codificato gli stati in modo naturale). Dalla copertura delle mappe a sinistra in Figura 4.28, ricaviamo le funzioni a destra nella stessa Figura. Mentre in Figura 4.29 è mostrata la rete che realizza il contatore. 33

36 Sp Sf N-2 N-1 N-1 0 Sp Sf y 1 y 0 y 1 y Figura 4.27 Tabella di flusso di un contatore modulo N (a sinistra), tabella di flusso di un contatore modulo 5 (al centro) e transizione degli statio per quest ultimo (a destra). y 0 = y 1y 2 y 1 = y 2y 1 + y 1 y 2 y 2 = y 0 y 2 Figura 4.28 Mappe e funzioni che realizzano il contatore modulo 5 dell Esercizio Figura 4.29 Rete che realizza il contatore modulo 5 dell Esercizio Esercizio 4.13 Il flip flop T cambia stato quando l ingresso T è a 1. Dunque, essendo tutti gli ingressi dei flip flop permanentemente a 1 essi sono soggetti a cambiare stato ad ogni clock. Il primo FF commuta in tutti i clock, il secondo essendo collegato all uscita del primo commuta con frequenza dimezzata, il terzo con frequenza ulteriormente dimezzata. Si veda la Tabella 4.9. Si deduce che quello di Figura 4.62 del testo è un contatore asincrono modulo 8. 34

37 Clock n y 3 y 2 y 1 y 3 y 2 y Tabella 4.9 Funzionamento della rete di Figura In neretto le variabili di stato corrispondenti ai FF che ricevono il clock. Esercizio 4.14 In Figura 4.30 viene riportato il diagramma di stato in cui gli stati sono già codificati. Ad esso corrisponde la Tabella 4.10 e le mappe di Figura 4.31, dalle quali si ricavano le funzioni a destra nella stessa Figura. Se si impiegano dei FFD queste espressioni corrispondono agli ingressi dei FF. Si ottiene allora la rete in Figura Figura 4.30 Diagramma di stato per l Esercizio Sui rami sono riportati i valori dell ingresso. Si noti che il passaggio tra le due modalità di conteggio avveniene solo in corrispondenza dello stato 100. y 0 y 1 y 2 x Tabella 4.10 Tabella transizione stati Esercizio

38 y 0 = y 1y 2 + y 0 y 2 + y 0 y 1 x, y 1 = y 0 y 1 y 2 + y 2 y 1 y 2 = y 0 y 2 + y 1 y 2 y. Figura 4.31 Mappe dell Esercizio 4.14, dalla cui copertura si ricavano le funzioni a destra. Figura 4.32 Rete logica Esercizio Esercizio 4.15 Si faccia riferimento a un contatore sincrono realizzato con FFJK. Indicando con y 1... y n le uscite dei FF, il generico F F i esimo deve avere un ingresso pari a (y 1 y 2... y i 1 ) y i se conta in salita e pari a (y i+1 y i+2... y n ) y i se conta in discesa. La Figura 4.33 illustra la struttura dell i-esimo dispositivo. 36

39 Figura 4.33 FF i esimo dell Esercizio Il segnale UD imposta la modalità di funzionamento. Con UD=1 conta in avanti mentre con UD=0 il dispositivo conta all indietro. Esercizio 4.17 Per risolvere l Esercizio si possono usare due contatori a caricamento parallelo. Per il numero A possiamo usare un up-couter e per B possiamo utilizzare un down-counter. Si caricano entrambi i numeri nei contatori e si inizia il conteggio. Quando si attiva il CO di B, in A avremo la somma dei due numeri. CO è il segnale che un contatore attiva quando raggiunge il valore massimo, se è un up-coutero minimo se è un down-counter, serve a capire se siamo arrivati a fine conteggio. Avendo fatto proseguire il conteggio di A per B volte abbiamo eseguito la somma dei due numeri. L unica attenzione è riguardo all overflow, cioè A+B deve sempre essere inferiore al massimo valore conteggiabile dal contatore A, altrimenti si avrebbe un reset dello stesso e un mal funzionamento della rete. Il collegamento dei due contatori è in Figura Esercizio 4.18 A parte il clock, l unico segnale di comando è X. Esso deve servire a comandare il caricamento di RA e RB e ad avviare il conteggio, a cui sarà legati il trasferimento del risultato il RC al momento dovuto. Per quanto si riferisce al caricamento di RA e RB la specifica sottintende che esso deve essere fatto in parallelo. Si deve quindi immaginare l esistenza di due percorsi che portano in RA e RB i dati da caricare. Supporremo di effettuare il caricamento dei registri secondo la tecnica (sincrona) rappresentata dalle Figure 4.29 e 4.37 del testo. Facciamo l ipotesi che il comando di caricamento prevalga sullo scorrimento in modo che il clock che trova il segnale di caricamento a 1 faccia solo caricare. In conclusione si tratta di generare due opportuni segnali temporali noti, RAeB in e RC in. Il segnale RAeB in può essere anche usato per azzerare lo stato del flip flop che memorizza il riporto. RAeB in deve essere asserito solo sul clock su cui si caricano i registri (clock 0). Poichè non è specificata la durata di X, occorre generare RAeB in da X. Supponendo che i registri RA e RB operino sul fronte di discesa del clock, conviene che RAeB in duri esattamente un periodo di clock, ma tra i fronti di salita. Dunque RAeB in deve avere la temporizzazione di Figura Il segnale viene portato a 1 sul fronte di salita del clock che trova X a 1 e riportato a 0 sul fronte di salita seguente. In tal modo RA e RB vengono caricati sul fronte di discesa intermedio del clock 0. I successivi 5 impulsi di clock determinano il caricamento in RA dei bit di somma (calcolati via via). La somma viene perciò a trovarsi in RA dal fronte intermedio del clock 5. Se anche RC opera sul fronte di discesa il trasferimento del risultato in questo registro può essere effettuato sul clock successivo (clock 6), avendo asserito RC in. 37

40 Figura 4.34 Sommatore A+B. Esercizio Si noti che il passaggio a 1 di x fa operare i due contatori. Il passaggio a 1 di CO ferma l incremento del contatore di sinistra. I valori di A e B devono essere precaricati nei due contatori prima del passaggio a 1 di x (non mostrato in figura). Figura 4.35 Temporizzazione dei segnali RAeB in e RC rispetto al clock ed al segnale X. Esercizio

41 In conclusione si deve progettare la rete (di Moore, operante sui fronti di salita) che genera i segnali temporizzati RAeB in e RC in, come in Figura La schematizzazione della rete è riportata in alto in Figura Figura 4.36 In alto: schema della rete per la generazione dei segnali RAeB in e RC in a partire dal segnale X e dal clock. In basso: il diagramma di stato della rete. Le uscite sono ordinatamente, RAeB in e RC in. Si tratta di un problema analogo a quello della generazione del segnale di WAIT del Paragrafo del testo. Il diagramma di stato è quello in basso in Figura Un eventuale ritorno a 1 di X prima della conclusione dell operazione è ininfluente. Si noti che, diversamente, da quanto indicato nel testo, il trasferimento in RC avviene sul (fronte di discesa del) clock 6. In Figura 4.37 è riportato lo schema finale della soluzione. Esercizio 4.19 Per eseguire il trasferimento al 7 clock, basta aggiungere uno stato al diagramma di Figura Esercizio 4.20 La rete di Figura 4.52 del testo riconosce il passaggio allo stato basso di X. L inconveniente presentato da questa rete sta nel fatto che un disturbo su X (spike), in grado di far commutare il flip-flop a cui è presentato come clock, induce la generazione di un WAIT. 39

42 Figura 4.37 Schema finale della interconnessione tra la rete di generazione dei segnali RAeB in e RC in e lo schema di somma dell esercizio. Si noti che il segnale RAeB in viene usato anche per azzerare lo stato del flip-flop usato per tenere traccia del riporto. 40

43 5 Esercizio 5.1 Si riporta la sequenza di istruzioni aggiungendo come commento l effetto della loro esecuzione. Dunque al termine R3 contiene 24. Esercizio 5.2 LD R1, 10 ; R1 <- 10 LD R2, 7 ; R2 <- 7 ADD R3, R1, R2 ; R3 < = 17 ADD R3, R3, R2 ; R3 < = 24 SUB R2, R2, R2 ; R2 <- 7-7 = 0 ADD R3, R3, R2 ; R3 < = 24 Si risolve l esercizio con riferimento al caso in cui si abbia R1=10, R2=20, R3=30 e R4=40. Dopo i primi 3 PUSH lo stato dello stack è quello di Figura 5.1. Figura 5.1 Stato dello stack dopo i primi 3 PUSH. Il POP elimina 30 dalla testa dello stack, assegnandolo a R2. Il successivo PUSH (PUSH R4), deposita 40, per cui i due POP successivi assegnano rispettivamente i valori 40 e 20 a R1 e R3, prelevandoli dallo stack. In conclusione la situazione finale è quella di Figura 5.2.

44 Figura 5.2 Contenuto dei registri e dello stack a conclusione delle istruzioni. Esercizio 5.3 Per la macchina registro-registro lo statement può essere tradotto come di seguito (si assume, ovviamente, un ampio numero di registri): LD R1, a ; Carica le - LD R2, b ; - variabili - LD R3, c ; - nei singoli - LD R4, d ; - registri - LD R5, e MUL R6, R3, R4 ; R6 <- c * d ADD R6, R6, R2 ; R6 <- R6 + b SUB R6, R6, R5 ; R6 <- R6 - e MUL R6, R6, R1 ; R6 <- R6 * a ST x, R6 ; Memorizza il risultato in x Per una macchina registro-memoria (si assume un solo registro accumulatore implicato in tutte le operazioni. LD c MUL d ADD b SUB e MUL a ST x Per una macchina a stack: ; ACC <- c * d ; ACC <- ACC + b ; ACC <- ACC - e ; ACC <- ACC * a PUSH c ; Inserisce le due - PUSH d ; - variabili MUL PUSH b ; Stack <- c * d ADD ; Stack <- Stack + b PUSH e SUB ; Stack <- Stack - e PUSH a MUL ; Stack <- Stack + a POP x ; Estrae il risultato 42

45 Esercizio 5.4 In forma generale l istruzione MOV ha questo significato: MOV dest,source e indica che il contenuto di source viene copiato in dest. Il precedente contenuto di dest viene perduto, mentre il contenuto di source resta invariato. Le combinazioni consentite sono le seguenti (source,dest): registro,memoria memoria,registro registro,registro memoria,immediato registro,immediato memoria,registro di segmento registro di segmento,memoria registro,registro di segmento registro di segmento,registro Consente molte modalità di indirizzamento e il formato è variabile a seconda di questo. Si riportano alcuni esempi. MOV AX,VAR ; EA= Offset(VAR) e AX<-M[EA] indirizzamento diretto MOV VAR(BX),CX ; EA= Offset(VAR)+BX e M[EA]<-CX indirizzamento relativo ai registri MOV R1,R2 ; R1<-R2 indirizzamento di registro MOV DX,2700 ;DX<-2700 indirizzamento immediato Esercizio 5.5 L istruzione MOVS viene utilizzata nello spostamento di stringhe (dove per stringa si intende una qualsiasi sequenza di byte, word, ecc.). A tale scopo: Il Flag di direzione (DF) indica la direzione; posto a 0 la stringa viene processata secondo indirizzi crescenti mentre posto a 1 secondo indirizzi decrescenti. Le istruzioni per azzerare e settare il DF sono CLD e STD; Il registro CX dà il numero di iterazioni; L indirizzo iniziale della stringa sorgente in DS:SI e quello della stringa di destinazione in ES:DI; L itruzione in questione come operando dell istruzione REP (è un istruzione di ripetizione). La sintassi che ne deriva è perciò: [REP] MOVS <destinazione>, <sorgente> [REP] MOVSB <destinazione>, <sorgente> [REP] MOVSW <destinazione>, <sorgente> dove le ultime due istruzioni sono utilizzate per il byte e la word. Ecco un esempio: SOURCE DB AMBARABA DEST DB 10 DUP(?) CLD MOV CX, LENGTH MOV SI, OFFSET MOV DI, OFFSET MOVSB SOURCE SOURCE DEST 43

Esercizio 4.3. Esercizio 4.4

Esercizio 4.3. Esercizio 4.4 4 Esercizio 4.3 La rete di Figura 4.1 del testo è un latch realizzato con porte NOR. Sostituendo le porte NOR con porte NAND si ottiene la rete di Figura 4.1. Figura 4.1 Rete dell Esercizio 4.3. Nella

Dettagli

Esercitazioni di Reti Logiche. Lezione 4

Esercitazioni di Reti Logiche. Lezione 4 Esercitazioni di Reti Logiche Lezione 4 Progettazione dei circuiti logici combinatori Zeynep KIZILTAN zkiziltan@deis.unibo.it Argomenti Procedura di analisi dei circuiti combinatori. Procedura di sintesi

Dettagli

Esercitazioni di Reti Logiche

Esercitazioni di Reti Logiche Esercitazioni di Reti Logiche Sintesi di Reti Combinatorie & Complementi sulle Reti Combinatorie Zeynep KIZILTAN Dipartimento di Scienze dell Informazione Universita degli Studi di Bologna Anno Academico

Dettagli

Architetture degli Elaboratori I II Compito di Esonero (A) - 16/1/1997

Architetture degli Elaboratori I II Compito di Esonero (A) - 16/1/1997 1 II Compito di Esonero (A) - 16/1/1997 Non è ammessa la consultazione di nessun testo, nè l utilizzo di nessun tipo di calcolatrice. Ogni esercizio riporta, fra parentesi, il suo valore in trentesimi

Dettagli

I Indice. Prefazione. Capitolo 1 Introduzione 1

I Indice. Prefazione. Capitolo 1 Introduzione 1 I Indice Prefazione xi Capitolo 1 Introduzione 1 Capitolo 2 Algebra di Boole e di commutazione 7 2.1 Algebra di Boole.......................... 7 2.1.1 Proprietà dell algebra.................... 9 2.2

Dettagli

(71,1), (35,1), (17,1), (8,1), (4,0), (2,0), (1,0), (0,1) 0, 7155 2 = 1, 431 0, 431 2 = 0, 862 0, 896 2 = 1, 792 0, 724 2 = 1, 448 0, 448 2 = 0, 896

(71,1), (35,1), (17,1), (8,1), (4,0), (2,0), (1,0), (0,1) 0, 7155 2 = 1, 431 0, 431 2 = 0, 862 0, 896 2 = 1, 792 0, 724 2 = 1, 448 0, 448 2 = 0, 896 2 Esercizio 2.2 La rappresentazione esadecimale prevede 16 configurazioni corrispondenti a 4 bit. Il contenuto di una parola di 16 bit può essere rappresentato direttamente con 4 digit esadecimali, sostituendo

Dettagli

Addizionatori: metodo Carry-Lookahead. Costruzione di circuiti combinatori. Standard IEEE754

Addizionatori: metodo Carry-Lookahead. Costruzione di circuiti combinatori. Standard IEEE754 Addizionatori: metodo Carry-Lookahead Costruzione di circuiti combinatori Standard IEEE754 Addizionatori Il circuito combinatorio che implementa l addizionatore a n bit si basa su 1-bit adder collegati

Dettagli

Cap. 2 - Rappresentazione in base 2 dei numeri interi

Cap. 2 - Rappresentazione in base 2 dei numeri interi Cap. 2 - Rappresentazione in base 2 dei numeri interi 2.1 I NUMERI INTERI RELATIVI I numeri relativi sono numeri con il segno: essi possono essere quindi positivi e negativi. Si dividono in due categorie:

Dettagli

PORTE LOGICHE. Si effettua su due o più variabili, l uscita assume lo stato logico 1 se almeno una variabile di ingresso è allo stato logico 1.

PORTE LOGICHE. Si effettua su due o più variabili, l uscita assume lo stato logico 1 se almeno una variabile di ingresso è allo stato logico 1. PORTE LOGICHE Premessa Le principali parti elettroniche dei computer sono costituite da circuiti digitali che, come è noto, elaborano segnali logici basati sullo 0 e sull 1. I mattoni fondamentali dei

Dettagli

Calcolatori Elettronici Lezione 2 Algebra delle reti Logiche

Calcolatori Elettronici Lezione 2 Algebra delle reti Logiche Calcolatori Elettronici Lezione 2 Algebra delle reti Logiche Ing. Gestionale e delle Telecomunicazioni A.A. 27/8 Gabriele Cecchetti Algebra delle reti logiche Sommario: Segnali digitali vs. segnali analogici

Dettagli

La codifica. dell informazione

La codifica. dell informazione 00010010101001110101010100010110101000011100010111 00010010101001110101010100010110101000011100010111 La codifica 00010010101001110101010100010110101000011100010111 dell informazione 00010010101001110101010100010110101000011100010111

Dettagli

Codifica binaria. Rappresentazioni medianti basi diverse

Codifica binaria. Rappresentazioni medianti basi diverse Codifica binaria Rappresentazione di numeri Notazione di tipo posizionale (come la notazione decimale). Ogni numero è rappresentato da una sequenza di simboli Il valore del numero dipende non solo dalla

Dettagli

Somma di numeri floating point. Algoritmi di moltiplicazione e divisione per numeri interi

Somma di numeri floating point. Algoritmi di moltiplicazione e divisione per numeri interi Somma di numeri floating point Algoritmi di moltiplicazione e divisione per numeri interi Standard IEEE754 " Standard IEEE754: Singola precisione (32 bit) si riescono a rappresentare numeri 2.0 10 2-38

Dettagli

Dalla tabella alla funzione canonica

Dalla tabella alla funzione canonica Dalla tabella alla funzione canonica La funzione canonica è la funzione logica associata alla tabella di verità del circuito che si vuole progettare. Essa è costituita da una somma di MinTerm con variabili

Dettagli

La codifica digitale

La codifica digitale La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore

Dettagli

Rappresentazione e Codifica dell Informazione

Rappresentazione e Codifica dell Informazione Rappresentazione e Codifica dell Informazione Capitolo 1 Chianese, Moscato, Picariello, Alla scoperta dei fondamenti dell informatica un viaggio nel mondo dei BIT, Liguori editore. Sistema di numerazione

Dettagli

Conversione di base. Conversione decimale binario. Si calcolano i resti delle divisioni per due

Conversione di base. Conversione decimale binario. Si calcolano i resti delle divisioni per due Conversione di base Dato N>0 intero convertirlo in base b dividiamo N per b, otteniamo un quoto Q 0 ed un resto R 0 dividiamo Q 0 per b, otteniamo un quoto Q 1 ed un resto R 1 ripetiamo finché Q n < b

Dettagli

La codifica. dell informazione

La codifica. dell informazione La codifica dell informazione (continua) Codifica dei numeri Il codice ASCII consente di codificare le cifre decimali da 0 a 9 fornendo in questo modo un metodo per la rappresentazione dei numeri Il numero

Dettagli

04 Aritmetica del calcolatore

04 Aritmetica del calcolatore Aritmetica del calcolatore Numeri a precisione finita - con un numero finito di cifre - non godono della proprietà di chiusura - le violazioni creano due situazioni distinte: - overflow - underflow Pagina

Dettagli

CONVERSIONE BINARIO DECIMALE NB: Convertire in decimale il numero binario N = N =

CONVERSIONE BINARIO DECIMALE NB: Convertire in decimale il numero binario N = N = NOTAZIONE BINARIA, OTTALE, ESADECIMALE CODIFICA DI NUMERI INTERI RELATIVI 1 CONVERSIONE BINARIO DECIMALE Convertire in decimale il numero binario N = 101011.1011 2 N = 1 2 5 + 0 2 4 + 1 2 3 + 0 2 2 + 1

Dettagli

Introduzione I contatori sono dispositivi fondamentali nell elettronica digitale e sono utilizzati per:

Introduzione I contatori sono dispositivi fondamentali nell elettronica digitale e sono utilizzati per: INTRODUZIONE AI CONTATORI Introduzione I contatori sono dispositivi fondamentali nell elettronica digitale e sono utilizzati per: o Conteggio di eventi o Divisione di frequenza o Temporizzazioni Principi

Dettagli

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012 Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 Sommario Rappresentazione dei numeri naturali (N) Rappresentazione dei numeri interi (Z) Modulo e segno In complemento a 2 Operazioni aritmetiche

Dettagli

Somma di numeri binari

Somma di numeri binari Fondamenti di Informatica: Codifica Binaria dell Informazione 1 Somma di numeri binari 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 Esempio: 10011011 + 00101011 = 11000110 in base e una base Fondamenti di

Dettagli

modificato da andynaz Cambiamenti di base Tecniche Informatiche di Base

modificato da andynaz Cambiamenti di base Tecniche Informatiche di Base Cambiamenti di base Tecniche Informatiche di Base TIB 1 Il sistema posizionale decimale L idea del sistema posizionale: ogni cifra ha un peso Esempio: 132 = 100 + 30 + 2 = 1 10 2 + 3 10 1 + 2 10 0 Un numero

Dettagli

Esercitazioni di Reti Logiche. Lezione 1 Rappresentazione dell'informazione. Zeynep KIZILTAN zkiziltan@deis.unibo.it

Esercitazioni di Reti Logiche. Lezione 1 Rappresentazione dell'informazione. Zeynep KIZILTAN zkiziltan@deis.unibo.it Esercitazioni di Reti Logiche Lezione 1 Rappresentazione dell'informazione Zeynep KIZILTAN zkiziltan@deis.unibo.it Introduzione Zeynep KIZILTAN Si pronuncia Z come la S di Rose altrimenti, si legge come

Dettagli

Corso di Architettura degli Elaboratori

Corso di Architettura degli Elaboratori Corso di Architettura degli Elaboratori Codifica dell'informazione: Numeri Binari (lucidi originali della Prof.ssa Zacchi e del Prof. Balossino, rivisti dal Prof. Baldoni) 1 Codifica dell'informazione?

Dettagli

Lezione 4. Sommario. L artimetica binaria: I numeri relativi e frazionari. I numeri relativi I numeri frazionari

Lezione 4. Sommario. L artimetica binaria: I numeri relativi e frazionari. I numeri relativi I numeri frazionari Lezione 4 L artimetica binaria: I numeri relativi e frazionari Sommario I numeri relativi I numeri frazionari I numeri in virgola fissa I numeri in virgola mobile 1 Cosa sono inumeri relativi? I numeri

Dettagli

COMPITO A Esercizio 1 (13 punti) Dato il seguente automa:

COMPITO A Esercizio 1 (13 punti) Dato il seguente automa: COMPITO A Esercizio 1 (13 punti) Dato il seguente automa: 1/0 q8 1/0 q3 q1 1/0 q4 1/0 q7 1/1 q2 1/1 q6 1/1 1/1 q5 - minimizzare l automa usando la tabella triangolare - disegnare l automa minimo - progettare

Dettagli

Laboratorio di Architettura degli Elaboratori A.A. 2016/17 Circuiti Logici

Laboratorio di Architettura degli Elaboratori A.A. 2016/17 Circuiti Logici Laboratorio di Architettura degli Elaboratori A.A. 2016/17 Circuiti Logici Per ogni lezione, sintetizzare i circuiti combinatori o sequenziali che soddisfino le specifiche date e quindi implementarli e

Dettagli

Rappresentazione dell Informazione

Rappresentazione dell Informazione Rappresentazione dell Informazione Rappresentazione delle informazioni in codice binario Caratteri Naturali e Reali positivi Interi Razionali Rappresentazione del testo Una stringa di bit per ogni simbolo

Dettagli

Circuiti sequenziali. Circuiti sequenziali e applicazioni

Circuiti sequenziali. Circuiti sequenziali e applicazioni Circuiti sequenziali Circuiti sequenziali e applicazioni Circuiti sequenziali Prima di poter parlare delle memorie è utile dare un accenno ai circuiti sequenziali. Per circuiti sequenziali intendiamo tutti

Dettagli

Lezione 3. I numeri relativi

Lezione 3. I numeri relativi Lezione 3 L artimetcia binaria: i numeri relativi i numeri frazionari I numeri relativi Si possono rappresentare i numeri negativi in due modi con modulo e segno in complemento a 2 1 Modulo e segno Si

Dettagli

Architetture aritmetiche

Architetture aritmetiche Architetture aritmetiche Sommatori: : Full Adder, Ripple Carry Sommatori: Carry Look-Ahead Ahead, Carry Save, Add/Subtract Moltiplicatori: Combinatori, Wallace,, Sequenziali Circuiti per aritmetica in

Dettagli

Esercitazione Informatica I (Parte 1) AA Nicola Paoletti

Esercitazione Informatica I (Parte 1) AA Nicola Paoletti Esercitazione Informatica I (Parte 1) AA 2011-2012 Nicola Paoletti 31 Maggio 2012 2 Antipasto 1. Quanti bit sono necessari per rappresentare (a) (227.551.832) 10? (b) (125.521) 10? 2. Quanti decimali sono

Dettagli

Rappresentazione dell informazione

Rappresentazione dell informazione Rappresentazione dell informazione Problema che coinvolge aspetti filosofici Interessa soprattutto distinguere informazioni diverse Con un solo simbolo è impossibile Pertanto l insieme minimo è costituito

Dettagli

I.4 Rappresentazione dell informazione

I.4 Rappresentazione dell informazione I.4 Rappresentazione dell informazione Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Ottobre 13, 2015 Argomenti Introduzione 1 Introduzione 2 3 L elaboratore Introduzione

Dettagli

Calcolatori: Sistemi di Numerazione

Calcolatori: Sistemi di Numerazione Calcolatori: Sistemi di Numerazione Sistemi di Numerazione: introduzione In un Calcolatore, i Dati e le Istruzioni di un Programma sono codificate in forma inaria, ossia in una sequenza finita di e. Un

Dettagli

Decimale, binaria,esadecimale

Decimale, binaria,esadecimale Decimale, binaria,esadecimale Introduzione Tutti i sistemi di numerazione sono posizionali nel senso che le cifre assumono un determinato valore a seconda della posizione occupata all interno del numero

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici RETI SEQUENZIALI : ESERCIZI Massimiliano Giacomin 1 Implementazione di contatori Un contatore è un dispositivo sequenziale che aggiorna periodicamente il suo stato secondo una regola

Dettagli

Calcolo numerico e programmazione Rappresentazione dei numeri

Calcolo numerico e programmazione Rappresentazione dei numeri Calcolo numerico e programmazione Rappresentazione dei numeri Tullio Facchinetti 16 marzo 2012 10:54 http://robot.unipv.it/toolleeo Rappresentazione dei numeri nei calcolatori

Dettagli

Appunti di informatica. Lezione 3 anno accademico Mario Verdicchio

Appunti di informatica. Lezione 3 anno accademico Mario Verdicchio Appunti di informatica Lezione 3 anno accademico 2015-2016 Mario Verdicchio Numeri binari in memoria In un calcolatore, i numeri binari sono tipicamente memorizzati in sequenze di caselle (note anche come

Dettagli

Aritmetica dei Calcolatori

Aritmetica dei Calcolatori Aritmetica dei Calcolatori Nicu Sebe March 14, 2016 Informatica Nicu Sebe 1 / 34 Operazioni su Bit Bit Scienza della rappresentazione e dell elaborazione dell informazione Abbiamo visto come i computer

Dettagli

Calcolo numerico e programmazione Rappresentazione dei numeri

Calcolo numerico e programmazione Rappresentazione dei numeri Calcolo numerico e programmazione Rappresentazione dei numeri Tullio Facchinetti 16 marzo 2012 13:26 http://robot.unipv.it/toolleeo Evoluzione storica la rappresentazione

Dettagli

Esercizio 1 (12 punti) Minimizzare il numero di stati dell automa qui rappresentato. Disegnare l automa minimo.

Esercizio 1 (12 punti) Minimizzare il numero di stati dell automa qui rappresentato. Disegnare l automa minimo. Compito A Esercizio (2 punti) Minimizzare il numero di stati dell automa qui rappresentato. Disegnare l automa minimo. S / S 2 / S 3 / S 4 / S 5 / Esercizio 2 (5 punti) Progettare un circuito il cui output

Dettagli

I CONTATORI. Definizioni

I CONTATORI. Definizioni I CONTATORI Definizioni. I contatori sono dispositivi costituiti da uno o più flip-flop collegati fra loro in modo da effettuare il conteggio di impulsi applicati in ingresso. In pratica, i flip-flop,

Dettagli

Moltiplicazione. Divisione. Multipli e divisori

Moltiplicazione. Divisione. Multipli e divisori Addizione Sottrazione Potenze Moltiplicazione Divisione Multipli e divisori LE QUATTRO OPERAZIONI Una operazione aritmetica è quel procedimento che fa corrispondere ad una coppia ordinata di numeri (termini

Dettagli

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012 Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 Sommario I sistemi di numerazione Il sistema binario Altri sistemi di numerazione Algoritmi di conversione Esercizi 07/03/2012 2 Sistemi

Dettagli

Rappresentazione di dati: numerazione binaria. Appunti per la cl. 3 Di A cura del prof. Ing. Mario Catalano

Rappresentazione di dati: numerazione binaria. Appunti per la cl. 3 Di A cura del prof. Ing. Mario Catalano Rappresentazione di dati: numerazione binaria Appunti per la cl. 3 Di A cura del prof. Ing. Mario Catalano Rappresentazione binaria Tutta l informazione interna ad un computer è codificata con sequenze

Dettagli

Esercizi svolti e da svolgere sugli argomenti trattati nella lezione 25

Esercizi svolti e da svolgere sugli argomenti trattati nella lezione 25 Esercizi svolti e da svolgere sugli argomenti trattati nella lezione 25 Esercizi svolti Es.. Si progetti in dettaglio il circuito che, dati quattro registri sorgente Si e quattro registri destinazione

Dettagli

Rappresentazione di numeri relativi (interi con segno) Rappresentazione di numeri interi relativi (con N bit) Segno e Valore Assoluto

Rappresentazione di numeri relativi (interi con segno) Rappresentazione di numeri interi relativi (con N bit) Segno e Valore Assoluto Rappresentazione di numeri relativi (interi con segno) E possibile estendere in modo naturale la rappresentazione dei numeri naturali ai numeri relativi. I numeri relativi sono numeri naturali preceduti

Dettagli

La rappresentazione dei numeri. La rappresentazione dei numeri. Aritmetica dei calcolatori. La rappresentazione dei numeri

La rappresentazione dei numeri. La rappresentazione dei numeri. Aritmetica dei calcolatori. La rappresentazione dei numeri CEFRIEL Consorzio per la Formazione e la Ricerca in Ingegneria dell Informazione Aritmetica dei calcolatori Rappresentazione dei numeri naturali e relativi Addizione a propagazione di riporto Addizione

Dettagli

Algoritmi Istruzioni che operano su dati. Per scrivere un programma è necessario. che l esecutore automatico sia in grado di.

Algoritmi Istruzioni che operano su dati. Per scrivere un programma è necessario. che l esecutore automatico sia in grado di. Codifica di Dati e Istruzioni Fondamenti di Informatica Codifica dell Informazione Prof. Francesco Lo Presti Algoritmi Istruzioni che operano su dati Per scrivere un programma è necessario rappresentare

Dettagli

1.2f: Operazioni Binarie

1.2f: Operazioni Binarie 1.2f: Operazioni Binarie 2 18 ott 2011 Bibliografia Questi lucidi 3 18 ott 2011 Operazioni binarie Per effettuare operazioni è necessario conoscere la definizione del comportamento per ogni coppia di simboli

Dettagli

Abilità Informatiche e Telematiche

Abilità Informatiche e Telematiche Abilità Informatiche e Telematiche (Laurea Triennale + Laurea Magistrale) Marco Pedicini mailto:marco.pedicini@uniroma3.it Corso di Laurea Magistrale in Informazione, Editoria e Giornalismo, Università

Dettagli

Algebra di Boole X Y Z V. Algebra di Boole

Algebra di Boole X Y Z V. Algebra di Boole L algebra dei calcolatori L algebra booleana è un particolare tipo di algebra in cui le variabili e le funzioni possono solo avere valori 0 e 1. Deriva il suo nome dal matematico inglese George Boole che

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole e Circuiti Logici Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Algebra di Boole e Circuiti Logici L Algebra

Dettagli

Richiami di Algebra di Commutazione

Richiami di Algebra di Commutazione LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n Prof. Rosario Cerbone rosario.cerbone@libero.it http://digilander.libero.it/rosario.cerbone a.a. 6-7 Richiami di Algebra di Commutazione In questa

Dettagli

Numeri frazionari. sistema posizionale. due modi: virgola fissa virgola mobile. posizionale, decimale

Numeri frazionari. sistema posizionale. due modi: virgola fissa virgola mobile. posizionale, decimale Numeri frazionari sistema posizionale due modi: virgola fissa virgola mobile posizionale, decimale 0,341=tre decimi più quattro centesimi più un millesimo cifre dopo la virgola: decimi centesimi millesimi

Dettagli

Aritmetica dei Calcolatori Elettronici

Aritmetica dei Calcolatori Elettronici Aritmetica dei Calcolatori Elettronici Prof. Orazio Mirabella L informazione Analogica Segnale analogico: variabile continua assume un numero infinito di valori entro l intervallo di variazione intervallo

Dettagli

Esercitazione del 09/03/ Soluzioni

Esercitazione del 09/03/ Soluzioni Esercitazione del 09/03/2006 - Soluzioni. Conversione binario decimale ( Rappresentazione dell Informazione Conversione in e da un numero binario, slide 0) a. 0 2? 0 2 Base 2 Si cominciano a contare le

Dettagli

LA CODIFICA DELL INFORMAZIONE. Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2

LA CODIFICA DELL INFORMAZIONE. Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2 LA CODIFICA DELL INFORMAZIONE Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2 Codifica dati e istruzioni Per scrivere un programma è necessario rappresentare istruzioni

Dettagli

Lezione 7 Sommatori e Moltiplicatori

Lezione 7 Sommatori e Moltiplicatori Architettura degli Elaboratori e delle Reti Lezione 7 Sommatori e Moltiplicatori Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 7 /36 Sommario

Dettagli

Sistemi di numerazione

Sistemi di numerazione Sistemi di numerazione Introduzione Un sistema di numerazione è un sistema utilizzato per esprimere i numeri e possibilmente alcune operazioni che si possono effettuare su di essi. Storicamente i sistemi

Dettagli

Progetto di Contatori sincroni. Mariagiovanna Sami Corso di reti Logiche 8 Anno

Progetto di Contatori sincroni. Mariagiovanna Sami Corso di reti Logiche 8 Anno Progetto di Contatori sincroni Mariagiovanna Sami Corso di reti Logiche 8 Anno 08 Introduzione Per le reti sequenziali esistono metodologie di progettazione generali, che partendo da una specifica a parole

Dettagli

Un ripasso di aritmetica: Conversione dalla base 10 alla base 2

Un ripasso di aritmetica: Conversione dalla base 10 alla base 2 Un ripasso di aritmetica: Conversione dalla base 10 alla base 2 Dato un numero N rappresentato in base dieci, la sua rappresentazione in base due sarà del tipo: c m c m-1... c 1 c 0 (le c i sono cifre

Dettagli

Riassunto Nell'esercitazione di oggi e' stata introdotta la codifica binaria naturale, intera e razionale in virgola fissa. Il materiale teorico

Riassunto Nell'esercitazione di oggi e' stata introdotta la codifica binaria naturale, intera e razionale in virgola fissa. Il materiale teorico Riassunto Nell'esercitazione di oggi e' stata introdotta la codifica binaria naturale, intera e razionale in virgola fissa. Il materiale teorico utilizzato e' disponibile nella Dispensa sulla codifica

Dettagli

Flip-flop e loro applicazioni

Flip-flop e loro applicazioni Flip-flop e loro applicazioni Reti sequenziali elementari (6) L'elemento bistabile Latch o flip-flop trasparenti Temporizzazione dei flip-flop trasparenti Architettura master-slave Flip-flop non trasparenti

Dettagli

Codifica. Rappresentazione di numeri in memoria

Codifica. Rappresentazione di numeri in memoria Codifica Rappresentazione di numeri in memoria Rappresentazione polinomiale dei numeri Un numero decimale si rappresenta in notazione polinomiale moltiplicando ciascuna cifra a sinistra della virgola per

Dettagli

Rappresentazione dei dati in memoria

Rappresentazione dei dati in memoria Rappresentazione dei dati in memoria La memoria Una memoria deve essere un insieme di oggetti a più stati. Questi oggetti devono essere tali che: le dimensioni siano limitate il tempo necessario per registrare

Dettagli

Il Modello di von Neumann (2) Prevede 3 entità logiche:

Il Modello di von Neumann (2) Prevede 3 entità logiche: Introduzione all Architettura degli Elaboratori Sommario Macchina di von Neumann Esecuzione dei programmi Rappresentazione dei dati Dati numerici Dati alfabetici 1 2 Il Modello di von Neumann (1) L architettura

Dettagli

Introduzione e Nozioni di Base. Prof. Thomas Casali

Introduzione e Nozioni di Base. Prof. Thomas Casali Università degli studi di Bologna Facoltà di Economia Sede di Forlì Introduzione e Nozioni di Base Corso di Laurea in Economia di Internet Prof. Thomas Casali thomas@casali.biz La rappresentazione digitale

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi Codice BCD Prima di passare alla rappresentazione dei numeri relativi in binario vediamo un tipo di codifica che ha una certa rilevanza in alcune applicazioni: il codice BCD (Binary Coded Decimal). È un

Dettagli

Esercitazioni di Reti Logiche. Lezione 5

Esercitazioni di Reti Logiche. Lezione 5 Esercitazioni di Reti Logiche Lezione 5 Circuiti Sequenziali Zeynep KIZILTAN zeynep@cs.unibo.it Argomenti Circuiti sequenziali Flip-flop D, JK Analisi dei circuiti sequenziali Progettazione dei circuiti

Dettagli

Reti Combinatorie: sintesi

Reti Combinatorie: sintesi Reti Combinatorie: sintesi Sintesi di reti combinatorie Una rete combinatoria realizza una funzione di commutazione Data una tabella di verità è possibile ricavare più espressioni equivalenti che la rappresentano.

Dettagli

Aritmetica dei Calcolatori

Aritmetica dei Calcolatori Aritmetica dei Calcolatori Luca Abeni e Luigi Palopoli February 18, 2016 Informazione nei Computer Un computer è un insieme di circuiti elettronici......in ogni circuito, la corrente può passare o non

Dettagli

Lezione 7 ALU: Moltiplicazione e divisione

Lezione 7 ALU: Moltiplicazione e divisione Architettura degli Elaboratori e delle Reti Lezione 7 ALU: Moltiplicazione e divisione F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 7 1/34 Sommario! Sommatori

Dettagli

Calcolatori Elettronici Parte III: Sistemi di Numerazione Binaria

Calcolatori Elettronici Parte III: Sistemi di Numerazione Binaria Anno Accademico 2001/2002 Calcolatori Elettronici Parte III: Sistemi di Numerazione Binaria Prof. Riccardo Torlone Università di Roma Tre Numeri e numerali! Numero: entità astratta! Numerale: stringa di

Dettagli

Sistemi di Numerazione Binaria

Sistemi di Numerazione Binaria Sistemi di Numerazione Binaria BIN.1 Numeri e numerali Numero: entità astratta Numerale : stringa di caratteri che rappresenta un numero in un dato sistema di numerazione Lo stesso numero è rappresentato

Dettagli

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012 Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 I numeri reali Sommario Conversione dei numeri reali da base 10 a base B Rappresentazione dei numeri reali Virgola fissa Virgola mobile (mantissa

Dettagli

PSPICE simulazione di circuiti digitali Flip Flop M/S, Moltiplicatore parallelo, Memoria SRAM, sommatore, comparatore

PSPICE simulazione di circuiti digitali Flip Flop M/S, Moltiplicatore parallelo, Memoria SRAM, sommatore, comparatore PSPICE simulazione di circuiti digitali Flip Flop M/S, Moltiplicatore parallelo, Memoria SRAM, sommatore, comparatore Laboratorio di Architettura degli Elaboratori - A.A. 24/25 Il flip flop di tipo Master/Slave

Dettagli

Un monomio è in forma normale se è il prodotto di un solo fattore numerico e di fattori letterali con basi diverse. Tutto quanto sarà detto di

Un monomio è in forma normale se è il prodotto di un solo fattore numerico e di fattori letterali con basi diverse. Tutto quanto sarà detto di DEFINIZIONE Espressione algebrica costituita dal prodotto tra una parte numerica (coefficiente) e una o più variabili e/o costanti (parte letterale). Variabili e costanti possono comparire elevate a potenza

Dettagli

Esercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti) (3 punti)

Esercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti) (3 punti) Cognome e Nome: Matr.: Architettura degli Elaboratori Inf A 14 febbraio 2013 Esercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti)

Dettagli

Informazione binaria: - codici binari, notazione binaria/ottale/esadecimale -

Informazione binaria: - codici binari, notazione binaria/ottale/esadecimale - Informazione binaria: - codici binari, notazione binaria/ottale/esadecimale - Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin ... Algoritmi,

Dettagli

Circuiti sequenziali

Circuiti sequenziali Circuiti sequenziali - I circuiti sequenziali sono caratterizzati dal fatto che, in un dato istante tn+1 le uscite dipendono dai livelli logici di ingresso nell'istante tn+1 ma anche dagli stati assunti

Dettagli

I sistemi di numerazione

I sistemi di numerazione I sistemi di numerazione Breve storia dei sistemi di numerazione. Probabilmente l uomo primitivo per contare gli animali e gli oggetti usava le dieci dita delle mani e, una volta abbassate tutte, tracciava

Dettagli

I REGISTRI. Reti autonome e contatori

I REGISTRI. Reti autonome e contatori I REGISTRI Il flip-flop Fc carica il valore di F a ogni impulso c. Si può allora dotare la rete di un nuovo ingresso A, che "abilita" (A=1) il caricamento di F, o blocca (A=0) il flip-flop sul suo stato

Dettagli

Algebra di Boole Algebra di Boole

Algebra di Boole Algebra di Boole 1 L algebra dei calcolatori L algebra booleana è un particolare tipo di algebra in cui le variabili e le funzioni possono solo avere valori 0 e 1. Deriva il suo nome dal matematico inglese George Boole

Dettagli

Rappresentazioni numeriche

Rappresentazioni numeriche Rappresentazioni numeriche Un numero è dotato di un valore una rappresentazione La rappresentazione di un numero è il sistema che utilizziamo per indicarne il valore. Normalmente è una sequenza (stringa)

Dettagli

Codifica dei Numeri. Informatica ICA (LC) 12 Novembre 2015 Giacomo Boracchi

Codifica dei Numeri. Informatica ICA (LC) 12 Novembre 2015 Giacomo Boracchi Codifica dei Numeri Informatica ICA (LC) 12 Novembre 2015 Giacomo Boracchi giacomo.boracchi@polimi.it Rappresentazione dei Numeri Codifica dei Numeri in Base 10 Le cifre che abbiamo a disposizione sono

Dettagli

Esercizi Logica Digitale,Circuiti e Bus

Esercizi Logica Digitale,Circuiti e Bus Esercizi Logica Digitale,Circuiti e Bus Alessandro A. Nacci alessandro.nacci@polimi.it ACSO 214/214 1 2 Esercizio 1 Si consideri la funzione booleana di 3 variabili G(a,b, c) espressa dall equazione seguente:

Dettagli

APPUNTI DI INFORMATICA

APPUNTI DI INFORMATICA APPUNTI DI INFORMATICA Per il biennio di liceo scientifico scienze applicate Sommario Il calcolo binario... 2 Numerazione Decimale... 2 Numerazione Binaria... 2 Conversione Binario -> Decimale... 2 Conversione

Dettagli

La codifica binaria. Informatica B. Daniele Loiacono

La codifica binaria. Informatica B. Daniele Loiacono La codifica binaria Informatica B Introduzione Il calcolatore usa internamente una codifica binaria ( e ) per rappresentare: i dati da elaborare le istruzioni dei programmi eseguibili Fondamenti di codifica

Dettagli

Numeri interi positivi

Numeri interi positivi Numeri interi positivi nei calcolatori, tutti i dati sono rappresentati con numeri: ogni lettera ha un numero ogni colore sono tre numeri ogni intensità di suono è un numero i numeri sono rappresentati

Dettagli

Laboratorio del 21/10/2010- Numeri binari e conversione

Laboratorio del 21/10/2010- Numeri binari e conversione Laboratorio del 21/10/2010- Numeri binari e conversione 1. Conversione binario decimale a. 1101 2? 10 1 1 2 Base 2 La posizione della cifra all interno del numero indica il peso della cifra stessa, cioè

Dettagli

Fondamenti di Programmazione. Sistemi di rappresentazione

Fondamenti di Programmazione. Sistemi di rappresentazione Fondamenti di Programmazione Sistemi di rappresentazione Numeri e numerali Il numero cinque 5 V _ Π 五 Arabo Romano Maya Greco Cinese Il sistema decimale Sistemi posizionali 1 10 3 + 4 10 2 + 9 10 1 + 2

Dettagli

Sistemi di numerazione

Sistemi di numerazione Istituto Tecnico Lombardo Radice Sistemi di numerazione Appunti di Informatica - Roberto De Virgilio 1 1 Regole di un sistema di numerazione I sistemi di numerazioni sono linguaggi, quindi sono un insieme

Dettagli

Capitolo 5 Elementi architetturali di base

Capitolo 5 Elementi architetturali di base Capitolo 5 Elementi architetturali di base Giuseppe Lami Istituto di Scienza e Tecnologie dell Informazione CNR Via Moruzzi, 1 - Pisa giuseppe.lami@isti.cnr.it Struttura - Unità di elaborazione e controllo

Dettagli

Esercitazione del 2/3/2010- Numeri binari e conversione

Esercitazione del 2/3/2010- Numeri binari e conversione Esercitazione del 2/3/2010- Numeri binari e conversione 1. Conversione binario decimale a. 1101 2? 10 1 1 2 Base 2 La posizione della cifra all interno del numero indica il peso della cifra stessa, cioè

Dettagli

Programmazione I Paolo Valente /2017. Lezione 6. Notazione posizionale

Programmazione I Paolo Valente /2017. Lezione 6. Notazione posizionale Lezione 6 Notazione posizionale Ci sono solo 10 tipi di persone al mondo: quelle che conoscono la rappresentazione dei numeri in base 2, e quelle che non la conoscono... Programmazione I Paolo Valente

Dettagli

1.4 PRODOTTI NOTEVOLI

1.4 PRODOTTI NOTEVOLI Matematica C Algebra. Le basi del calcolo letterale.4 Prodotti notevoli.4 PRODOTTI NOTEVOLI Il prodotto fra due polinomi si calcola moltiplicando ciascun termine del primo polinomio per ciascun termine

Dettagli