ESERCIZI DEL CORSO DI INFORMATICA



Похожие документы
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.

Lezione2: Circuiti Logici

Algebra Booleana, Funzioni Logiche e Circuiti Logici

2010 De Agostini Scuola, Mezzalama, Piccolo, Capire l informatica

Le mappe di Karnaugh

Dalla tabella alla funzione canonica

Reti Logiche Combinatorie

Algebra di Boole Algebra di Boole

Fondamenti di Informatica

17/10/16. Espressioni Booleane

senza stato una ed una sola

Algebra di Boole X Y Z V. Algebra di Boole

12BHD - Informatica - soluzioni Appendice D del quaderno di testo - v. 2.00

Esercitazioni di Reti Logiche. Algebra Booleana e Porte Logiche

ALGEBRA BOOLEANA. Proprietà dell'algebra booleana: P. COMMUTATIVA

Notazione posizionale. Codifica binaria. Rappresentazioni medianti basi diverse. Multipli del byte

CORSO ZERO DI MATEMATICA

Esercizi svolti Y Z. 1. Date le seguenti funzioni logiche ricavare le corrispondenti reti logiche realizzate con porte elementari AND, OR, NOT.

Rappresentazione. Notazione in complemento a 2. Complemento a due su 3 e 4 bit Complemento a due

Richiami di Algebra di Commutazione

Semplificazione delle funzioni logiche mediante le mappe K

Le porte logiche. Elettronica L Dispense del corso

Elementi di informatica

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

I Circuiti combinatori: LOGISIM

12BHD - Informatica (I anno Ingegneria) - esercizi sulle funzioni logiche - v. 1.0

Esercizi di Algebra di Boole (con Appendice)

CORSO ZERO DI MATEMATICA per Ing. Chimica e Ing. delle Telecomunicazioni MONOMI E POLINOMI Prof. Erasmo Modica

Lezione 5. Sommario. La logica booleana. I principi della logica booleana Gli operatori logici

Semplificazione delle funzioni logiche mediante il metodo delle mappe di Karnaugh

FUNZIONI BOOLEANE. Vero Falso

Circuiti di commutazione, codifica e decodifica

Esercizi sulla rappresentazione dell informazione

Codifica binaria. Rappresentazioni medianti basi diverse

Esercitazione 2 Introduzione a GATESIM

Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense.

I circuiti digitali: dalle funzioni logiche ai circuiti

Fondamenti dell Informatica Algebra di Boole. Prof.ssa Enrica Gentile

I circuiti digitali: dalle funzioni logiche ai circuiti

Operatori logici e algebra di boole

Esercizi Logica Digitale,Circuiti e Bus

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

Macchine combinatorie: encoder/decoder e multiplexer/demultiplexer

Algebra di Boole. Tavole di verità. Fondamenti di Informatica Algebra di Boole. Si basa su tre operazioni logiche: AND (*) OR (+) NOT (!

I transistor. I transistor come interruttori

Tutorato di Calcolatori Elettronici Battista Biggio - Sebastiano Pomata. Corso di Laurea in Ingegneria Elettronica

Porte logiche. Porte logiche. Corso di Architettura degli Elaboratori. Algebra Booleana

Esercitazioni di Reti Logiche. Lezione 4

Funzioni booleane. Vitoantonio Bevilacqua.

Транскрипт:

ESERCIZI DEL CORSO DI INFORMTIC Questa breve raccolta di esercizi vuole mettere in luce alcuni aspetti della prima parte del corso e fornire qualche spunto di riflessione. Il contenuto del materiale seguente non può sostituire in nessun modo le informazioni acquisite durante le lezioni teoriche, ma anzi vuole evidenziare che negli esercizi vi è concentrata la teoria. ESERCIZIO 1 Titolo: DEFINIZIONE DI BLOCCO FUNZIONLE SOMMTORE Per capire: Come definire in modo completo un blocco funzionale Come passare da una tabella della verità ad un circuito TESTO: Si disegni un blocco funzionale sommatore a 1 bit (con riporto sinistro e destro), se ne rappresenti in modo univoco il funzionamento e si disegni il circuito logico. EX 1.1 DISEGNO E DEFINIZIONE DI BLOCCO FUNZIONLE Rappresentazione: O B Lo schema funzionale del blocco definisce gli ingressi e le uscite, per cui nel nostro caso devono essere : : primo bit B: secondo bit : Il riporto da destra (ad es. potrebbe venire da un altro sommatore ) : O: il bit del risultato : il bit del riporto della notra addizione 1

Per descrivere univocamente il comportamento del blocco funzionale è sufficiente scrivere la tabella della verità (non deve sorprendere che una tabella in cui si possono esprimere tutte le possibili combinazioni degli ingressi e le loro corrispondenti uscite rappresenti in modo completo ed univoco il blocco). La tabella è composta indicando in modo chiaro quali sono gli ingressi e le uscite e completando in modo ordinato (numeri crescenti in binario) la parte riguardante gli ingressi B O 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 questo punto, ragionando su quale funzionalità il blocco funzionale deve implementare, si considera UN RIG LL VOLT quale deve essere l'uscita del blocco per QUELL particolare configurazione degli ingressi e si scrive il suo valore nella casella della uscita considerata. d esempio nella sesta riga: B O 1 0 1 ingressi=(1+0 con 1 in riporto) vogliamo che quindi il blocco produca: uscite=(o=zero,=1 ovvero che riusulti zero e che venga generato un riporto in uscita), quindi B O 1 0 1 0 1 Ripetendo per tutte le righe si ottiene la tabella della verità completa 2

B O 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Domanda: Possono essere state trascurate delle configurazioni degli ingressi? Risposta: NO! Le righe degli ingressi sono state compilate seguendo la numerazione binaria crescente e la tabella è composta da 2 N righe (N = numero ingressi - nell'esercizio sono 3- ), per cui non possono esistere altre configurazioni degli ingressi - Fine 1.1 - EX 1.2 DLL TBELL DELL VERIT' LL EQUZIONE LOGIC La scrittura dell'equazione logica che rappresenta il funzionamento del blocco che stiamo progettando può essere derivata DIRETTMENTE dalla tabella della verità. Si trova la rappresentazione di una variabile in uscita LL VOLT. Iniziamo con "O". Si evidenziano SOLO le righe della tabella nelle quali la variabile è a "1". B O 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Nel nostro caso sono 4. La funzione sarà quindi composta da 4 termini, tutti "messi in OR" (ricordiamo che " messo in OR con B" si scrive +B, mentre " messo in ND con B" si scrive *B, o anche semplicemente B ). 3

Primo termine: Per scrivere il primo termine dei quattro che comporranno l'espressione logica della variabile di uscita "O" è sufficiente guardare la prima riga. Nel termine compaiono TUTTE LE VRIBILI di ingresso, senza il segno di complementazione ( complementata di scrive Ā) se nella riga compaiono con "1", oppure con il segno di complementazione se nella riga compaiono con "0". Piu' semplicemente con un esempio, prendendo la terza riga: B O 0 1 0 1 Primo termine= Ā * B * _IN; in parole= ( complementata) ND (B complementata) ND ( complementata). Ripetendo ciò per tutte le righe e mettendo in OR i termini trovati si ricava l'espressione booleana di "O": O = Ā * * + Ā* B * _IN + * * _IN + * B * = = Ā + Ā B _IN + _IN + B Ripetendo quanto visto sopra per la variabile di uscita si evidenziano le seguenti linee: B O 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 e si ottiene l'espressione: = Ā * B * + * * + * B * _IN + * B * = = Ā B + + B _IN + B - fine 1.2 4

Domanda: L'espressione booleana così trovata rappresenta COMPLETMENTE il comportamento desiderato della variabile d'uscita, ovvero si può dire che possieda TUTTE le informazioni della tabella della verità? Risposta: SI! Per chi vuole rendersene conto basta guardare la composizione dell'espressione logica. Vogliamo, ad esempio per "", che sia a "1" solo per le righe della tabella della verità a "1", e per nessun altra riga; ma i 4 termini che compongono l'espressione (ad esempio il primo Ā * B *, "nato" dalla quarta riga) NON PUO' CHE ESSERE =1 SOLO IN QUELL RIG DELL TBELL (provare tutte le altre configurazioni degli ingressi ed il termine Ā*B* varrà sempre 0!). Poichè vale lo stesso per gli altri 3 termini e tutti i termini sono in OR, il risultato finale è che l'or varrà "1" solo per nelle righe corrette della tabella della verità L'espressione = Ā B + + B _IN + B esprime completamente la funzione descritta in tabella. OSS: le espressioni logiche trovate NON sono le uniche espressioni logiche che rappresentano correttamente la tabella della verità. Spesso infatti è possibile semplificare l espressione ottenuta sfruttando le proprietà dell algebra di Bool (associativa, commutativa,...) ottenendo altre espressioni che implementano altrettanto esattamente la corrispondenza Ingressi-Uscite COMPLETMENTE descritta dalla tabella della verità: EX 1.3 DLL EQUZIONE LOGIC L CIRCUITO CON PORTE LOGICHE E possibile sia passare dalla tabella della verità direttamente al circuito, sia passare dall equazione logica direttamente al circuito. La forma dell espressione logica ottenuta è chiamata somma di prodotti in quanto i termini sono composti da prodotti (es: Ā*B* ) e sono tra di loro sommati (PrimoTermine + SecondoTermine + TerzoTermine +... ). Questa particolarità si riflette nella topologia del circuito. Il ciruito si compone nel seguente modo: 1. Si implementa una variabile di uscita alla volta. Per ogni variabile si ripetono i punti seguenti 2. Si predispone una porta logica OR con un numero di ingressi pari al numero di termini della espressione (che sappiamo essere pari al numero 5

delle righe della tabella della verità con la corrisponente variabile di uscita a 1 ; numero di righe evidenziate nelle tabelle precedenti). OR 3. Si aggiunge un termine alla volta. Ogni termine viene rappresentato da una porta ND con in ingresso TUTTE LE VRIBILI della sezione di ingresso della tabella della verità; Le variabili che nel termine non sono complementate (ad es. in Ā*B* B e ) entrano direttamente nella porta ND, le variabili che nel termine sono complementate (ad es. in Ā*B* ) entrano in una porta NEGTORE (NOT) e successivamente nella porta ND. ND Ā*B* NOT OR B 6

4. ggiungendo le porte corrispondenti ai termini rimanenti il circuito della variabile d uscita considerata viene completato nel modo seguente: ND Ā B NOT ND B OR ND B ND B B OSS: La tabella della verità, l espressione logica delle variabili di uscita ed il circuito descrivono TUTTI in modo COMPLETO le funzionalita del blocco funzionale ed possibile passare direttamente da uno all altro. TB. VERIT' ESPRESSIONI LOGICHE CIRCUITO 7

ESERCIZIO 2 Titolo: SOMMTORE 4 BIT MEDINTE COMPOSIZIONE DI BLOCCHI FUNZIONLI Per capire: Come funzionalità più complesse possono essere realizzate da composizioni di blocchi più semplici TESTO: vendo a dispozione un blocchi funzionali di sommatori ad un bit (con riporto sinistro e destro), si disegni un blocco funzionale sommatore a 4 bit e come sia possibile ottenerlo dalla composizione dei blocchi funzionali dati. EX 1.1 DISEGNO E DEFINIZIONE DI BLOCCO FUNZIONLE Il testo può essere riscritto in altro modo: Si vuole realizzare: vendo a disposizione il blocco: 4 bit B 4 bit B 4 bit O O OSS: la rappresentazione indica che siamo passati da un ingresso ad 1 bit (un filo) ad un ingresso a 4 bit (4 fili -BUS- ) Il nostro bus (composto da 4 fili) può accettare dati composti da 4 bit ( ='3 2 1 0' es. =0110 binario 3=0,2=1,1=1,0=0) Raffigurazione Realtà 4 bit 3 2 1 0 8

Nel dispositivo di fianco (una scheda denominata RISC Processor Based Module) è possibile notare gruppi di fili ordinati (bus bus) che escono ed entrano da rettangoli scuri (chip o circuiti integrati) Vi è un parallelismo fra lo schematismo dei blocchi funzionali che usiamo negli esercizi e i collegamenti che vi sarebbero se costruissimo la scheda che "risolve l'esercizio". Per comporre in modo corretto i blocchi è necessario osservare come avvenga una somma in binario, evidenziando il meccanismo del riporto. Esaminiamo quali operazioni effettuiamo nel sommare =0110 a B=0011: 0 1 1 0 0 0 1 1???? La somma viene effettuata bit a bit, scrivendo l'eventuale riporto (per la successiva addizione) in questo modo: 1 0 1 1 0 0 0 1 1?? 0 1 Completando l'addizione 1 1 0 1 1 0 0 0 1 1 1 0 0 1 (Suggerimento: l'addizione può essere facilmente controllata tenendo conto che =0110 binario = (4+2) decimale =6 decimale e B=0011 binario = (2+1) decimale = 3 decimale Per cui +B=9 decimale = 1001 binario) 9

La disposizione ed il collegamento dei blocchi funzionali ad un bit che implementa il sommatore a 4 bit con riporto è la seguente: B 3 B 3 2 B 2 1 B 1 0 B 0 O 3 O 2 O 1 O 0 O 10