Professional Documents
Culture Documents
Η ΛΟΓΙΚΗ BOOLE
• Η λογική Boole είναι κοµµάτι των µαθηµατικών που ασχολείται µε τους κανόνες χειρισµού των
δύο λογικών τιµών αληθείας true και false.
– Ονοµάστηκε από τον Άγγλο µαθηµατικό George Boole (1810-1864) που το 1847 δηµοσίευσε την
πρώτη πλήρη διερεύνηση των αρχών της µαθηµατικής λογικής.
– Άλγεβρα Boole είναι ένα σύνολο µε δύο διµελείς πράξεις (σύζευξη, διάζευξη), µία µονοµελή
(άρνηση) και δύο σταθερές το 1 (true) και το 0 (false)
• Γιατί η λογική Boole είναι τόσο σχετική µε τους υπολογιστές?
– Απευθείας αντιστοίχιση στα δυαδικά ψηφία!
1 = true, 0 = false
• Η λογική Boole (και η άλγεβρα Boole) χρησιµοποιείται σε ολόκληρη την επιστήµη της
πληροφορικής
– Το πώς εκφράζονται και υπολογίζονται οι λογικές παραστάσεις είναι ιδιαίτερα κρίσιµη ικανότητα
σε κάθε χρήστη/προγραµµατιστή που θα χρησιµοποιήσει µία επίσηµη γλώσσα (όπως η "C",
Pascal, Basic, Visual Basic, SQL κ.α.) ή µία γλώσσα µακροεντολών και τύπων όπως στο MS
Excel ή στο κέλυφος εντολών ενός λειτουργικού συστήµατος.
Boolean Εκφράσεις
• Έκφραση Boole είναι κάθε Λογική Πρόταση που έχει ως αποτέλεσµα ή true (αληθής) ή false
(ψευδής).
• Είναι η έκφραση 1+3 λογική έκφραση Boole?
– Όχι, δεν αποτιµάται σε true ή false.
• Παραδείγµατα απλών Boolean εκφράσεων:
X > 100
2>3
A = 100
X < Y+ 5
• Παραδείγµατα σύνθετων Boolean εκφράσεων:
Το Χ µεγαλύτερο από 200 και µικρότερο από 1000
Οι αριθµοί Α και Β είναι και οι δύο θετικοί αριθµοί
Το τρίγωνο µε πλευρές Α, Β, Γ είναι ισόπλευρο
Το τρίγωνο µε γωνίες α, β, γ είναι ορθογώνιο
Ο αριθµός Α είναι θετικός ή ο Β αρνητικός
Το εµβαδόν τριγώνου µε βάση Β και ύψος Υ είναι µεγαλύτερο από 20 και µικρότερο από 50
Το συνηµίτονο γωνίας Φ δεν είναι µεγαλύτερο από µηδέν
Το σηµείο µε συντεταγµένες Χ και Υ βρίσκεται στο πρώτο τεταρτηµόριο
Το a είναι µικρότερο από το b και το b είναι µικρότερο από το c
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 1
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
a NOT a
False True
True False
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 2
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
• (X>0) AND (X<20) (αν Χ είναι 10 δίνει αποτέλεσµα true AND true Æ true)
Η πράξη OR (∆ιάξευξη)
• Η διάξευξη δύο προτάσεων είναι αληθής όταν τουλάχιστον η µία από τις δύο αρχικές προτάσεις
είναι True
Πράξη Συµβολισµός
a OR b a+b
• Έστω a και b δύο λογικές προτάσεις, τότε ο πίνακας τιµών αληθείας είναι :
a b a OR b
False False False
False True True
True False True
True True True
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 3
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
έπειτα οι τελεστές OR
False
Παραδείγµατα
• Αν X=10, Y=15, και Z=20 βρείτε αναλυτικά το αποτέλεσµα των παρακάτω λογικών προτάσεων:
((X=10) OR (Y=10)) AND (Z>X)
(X=Y) OR (NOT (X>Z))
NOT ( (X>Y) AND (Z>Y+3) AND (X<Z) )
((X=Y) AND (X=10) ) OR (Y<Z)
Προβλήµατα
• Το εµβαδόν τετραγώνου πλευράς Χ είναι µεγαλύτερο από 20 και µικρότερο από 50 (εµβαδόν=Χ2)
(Χ * Χ > 20) AND (Χ * Χ < 50)
• Το εµβαδόν ορθογωνίου µε κάθετες πλευρές Χ και Υ είναι µεγαλύτερο από 20 (εµβαδόν=ΧΥ)
( Χ * Υ > 20 ) AND ( Χ * Υ < 20 )
• Το σηµείο µε συντεταγµένες Χ και Υ βρίσκεται µέσα στο πρώτο τεταρτηµόριο
(Χ > 0) AND (Υ > 0)
• Το σηµείο µε συντεταγµένες Χ και Υ βρίσκεται µέσα στο τρίτο τεταρτηµόριο
(Χ < 0) AND (Υ < 0)
• Το τρίγωνο µε γωνίες α, β, γ είναι ορθογώνιο
(α = 60) OR (β = 60) OR (γ = 60)
• Η ακτίνα R ενός κύκλου είναι πάνω από 20 και η περίµετρος πάνω από 300 (περίµετρος = 2πR)
(R> 20) AND (2 * (3.14159) * R > 300)
• Το εµβαδόν κύκλου ακτίνας R είναι µεγαλύτερο από 200 και µικρότερο από 500 (εµβαδόν = πR2)
( (3.14159) * R * R > 200 ) AND ( (3.14159) * R * R < 500 )
• Ο όγκος σφαίρας ακτίνας R είναι µεγαλύτερος από 300 και µικρότερος από 500 (4/3 πR2)
( (1.33333) * (3.14159) * R * R * R > 200 ) AND ( (1.33333) * (3.14159) * R * R * R < 500 )
• Ο αριθµός a είναι µικρότερος από τον b και ο b είναι µικρότερος από τον c
(a < b) AND (b < c)
• Το τρίγωνο µε πλευρές τις Α, Β, Γ είναι ισοσκελές (µπορεί να είναι και ισόπλευρο)
(Α=Β) OR (Β=Γ) OR (Γ=Α)
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 4
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
Λογική Boole a′ a • b a + b
C/C++ !a a && b a || b
Java !a a && b a || b
προτασιακός λογισµός ¬a a ∧ b a ∨ b
άλγεβρα συνόλων a′ a ∩ b a U b
• Αν και αλλάζει ο συµβολισµός οι τιµές αληθείας των πράξεων της λογικής Boole είναι ίδιοι
• µε χρήση των NOT, AND, OR αντί το συµβολισµό της άλγεβρας συνόλων µερικοί από τους
συνδυασµούς είναι
Α ΟR B = 2, 3, 4
Α AND B = 3
NOT B = 1, 2
Α ΟR (NOT B) = 1, 2, 3
(NOT A) AND (NOT B) = 1
(NOT A) OR (NOT B) = 1, 2, 4
A AND (NOT B) = 2
(A OR B) AND NOT (A AND B) = 2, 4
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 5
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
ΤΡΑΝΖΙΣΤΟΡ
• Γιατί οι υπολογιστές χρησιµοποιούν δυαδικούς αριθµούς και όχι δεκαδικούς όπως εµείς?
• Ο κύριος λόγος είναι: Αξιοπιστία
– Ηλεκτρικές συσκευές εργάζονται άριστα σε ένα δισταθές περιβάλλον, όπου υπάρχουν µόνο δύο
σταθερές καταστάσεις (π.χ. on/off).
– Χρησιµοποιώντας δυαδικούς αριθµούς, οι υπολογιστές χρειάζεται να παραστήσουν µόνο δύο
ψηφία : 0 και 1
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 6
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
βάση
εκποµπός
Είσοδος (συλλέκτης)
Έλεγχος (Βάση)
Έξοδος (εκποµπός)
• Τα τρανζίστορ είναι βασικά στοιχεία στις λογικές πύλες και τα λογικά κυκλώµατα
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 7
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
• Ένα κύκλωµα διακόπτων αντιστοιχεί σε µία σύνθετη πρόταση κατασκευασµένη από άλλες
λογικές προτάσεις που συνδέονται µε µία λογική πράξη και λέγεται λογική πύλη (gate)
• Μία λογική πύλη ενεργεί σε έναν αριθµό εισόδων (0 ή 1) για να παράγει µία έξοδο (0 ή 1).
• Όταν αναφερόµαστε στις πύλες, χρησιµοποιούµε τον συµβολισµό των λογικών πράξεων:
NOT a ā
a AND b a•b
a OR b a+b
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 8
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 9
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 10
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
• Οι πίνακες τιµών αληθείας και οι συµβολισµοί των πυλών XOR, NAND, NOR, XNOR
• Οι λογικές πράξεις XOR, NAND, NOR, XNOR είναι σύνθετες, παράγονται δηλαδή µε τη βοήθεια
των βασικών λογικών πράξεων άρνησης (NOT), σύζευξης (AND) και διάζευξης (OR)
• Οι παρακάτω ιδιότητες της άρνησης ( ′ ), σύζευξης (•) και διάζευξης (+) χρησιµοποιούνται για
τον µετασχηµατισµό µίας σύνθετης λογικής έκφρασης σε µία άλλη ισοδύναµη
– Η αντιµεταθετική ιδιότητα λέει ότι a + b = b + a και a • b = b • a
– Η προσεταιριστική ιδιότητα λέει ότι (a • b) • c = a • (b • c) και (a + b) + c = a + (b + c)
– Η Ιδιότητα αυτοδυναµίας λέει ότι a + a = a και a • a = a
– Ο νόµος διπλής άρνησης (a′ )′ = a
– Οι νόµοι του De Morgan είναι (a • b)′ = a′ + b′ και (a + b)′ = a′ • b′
– Η επιµεριστική ιδιότητα της σύζευξης ως προς την διάζευξη a • (b + c) = (a • b) + (a • c)
– Η επιµεριστική ιδιότητα της διάζευξης ως προς την σύζευξη a + (b • c) = (a + b) • (a + c)
• Παράδειγµα
Π.χ. η έκφραση (a Xnor b) θα είναι ίση µε not (a Xor b) = ((a + b) • (a • b)′ )′ = (a + b)′ + (a • b) =
(a′ • b′) + (a • b) που θα δούµε σαν κύκλωµα σύγκρισης
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 11
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
Ερωτήσεις επανάληψης
• Γράψτε τους πίνακες τιµών αληθείας της άρνησης (NOT) και της σύζευξης (AND).
• Γράψτε τους πίνακες τιµών αληθείας της διάζευξης (OR) και της αποκλειστικής διάζευξης (XOR)
• ∆ιαπιστώστε χρησιµοποιώντας την αντιµεταθετική ιδιότητα ότι η λογική έκφραση a AND NOT b
είναι ισοδύναµη µε την NOT b AND a, και ότι η έκφραση a OR NOT b ισοδύναµη µε NOT b OR a.
• ∆ιαπιστώστε χρησιµοποιώντας το νόµο της διπλής άρνησης ότι η λογική έκφραση NOT NOT
NOT b είναι ισοδύναµη µε την NOT b
• Από τους νόµους του De Morgan προκύπτει ότι η σύζευξη (a AND b) µπορεί να εκφραστεί
συνδυάζοντας την άρνηση και διάζευξη όπως (a AND b) = NOT (NOT a OR NOT b). ∆είξτε µε έναν
πίνακα τιµών αληθείας ότι και η διάζευξη (a OR b) µπορεί να εκφραστεί συνδυάζοντας την
άρνηση και σύζευξη σαν NOT (NOT a AND NOT b).
• ∆είξτε µε έναν πίνακα τιµών αληθείας ότι η λογική έκφραση NOT (a AND b) είναι ισοδύναµη µε
την NOT a OR NOT b
• ∆είξτε µε πίνακα τιµών αληθείας ότι η αποκλειστική διάζευξη µπορεί να εκφραστεί µε την
(a OR b) AND NOT (a AND b) , ή µε την ισοδύναµη έκφραση (a AND NOT b) OR (b AND NOT a)
• ∆ιαπιστώστε χρησιµοποιώντας την αντιµεταθετική ιδιότητα ότι ή έκφραση a AND (b OR c) είναι
ισοδύναµη µε την (c OR b) AND a
• ∆ιαπιστώστε χρησιµοποιώντας την επιµεριστική ιδιότητα ότι η λογική έκφραση a AND (b OR c)
είναι ισοδύναµη µε την a AND b OR a AND c
• Γράψτε τον πίνακα τιµών αληθείας της λογικής έκφρασης NOT a OR b (ονοµάζεται συνεπαγωγή
δύο λογικών προτάσεων, συµβολίζεται µε a → b και σηµαίνει Εάν a τότε b, a µόνο εάν b, a είναι
ικανή συνθήκη για b, a είναι αναγκαία συνθήκη για b)
• ∆είξτε µε πίνακες τιµών αληθείας ότι η άρνηση, σύζευξη και διάζευξη είναι δυνατό να
εκφραστούν µόνο µε την πράξη NAND σύµφωνα µε τις ακόλουθες ισοδυναµίες: NOT a = a
NAND a , a AND b = (a NAND b) NAND (a NAND b) , a OR b = (a NAND a) NAND (b NAND b)
• ∆είξτε µε πίνακες τιµών αληθείας ότι η άρνηση, σύζευξη και διάζευξη είναι δυνατό να
εκφραστούν µόνο µε την πράξη NOR σύµφωνα µε τις ακόλουθες ισοδυναµίες: NOT a = a
NOR a , a AND b = (a NOR a) NOR (b NOR b) , a OR b = (a NOR b) NOR (a NOR b)
Σύνοψη
• Κατασκευάζουµε τις λογικές πύλες από ηλεκτρονικούς διακόπτες, τα τρανζίστορ.
• Τώρα µπορούµε να έχουµε τις πύλες, αντί τα τρανζίστορ, σαν τα βασικά δοµικά στοιχεία των
υπολογιστών:
– Υψηλό επίπεδο αφαίρεσης, δεν χρειάζεται να ασχολούµαστε µε λεπτοµέρειες κατασκευής.
– Μπορούµε µε τη λογική Boole να κατασκευάσουµε σύνθετα λογικά κυκλώµατα.
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 12
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
• Γιατί 16 δυνατές περιπτώσεις? Θυµηθείτε ότι 4 bit µπορούν να παραστήσουν 16 τιµές (24).
• Ποιες είναι? Έχουµε ήδη εξετάσει τις κυριότερες έξι στις λογικές εκφράσεις και λογικές πύλες.
Μία περίπτωση όλα αληθές 1η = a OR NOT a OR b OR NOT b και
µία περίπτωση όλα ψευδές 16η = a AND NOT a AND b AND NOT b
Τέσσερις περιπτώσεις µε ένα αληθές
12η = a AND b (σύζευξη),
13η = a AND NOT b (a διαφορά b),
14η = b AND NOT a = NOT a AND b (b διαφορά a),
15η = NOT (a OR b) = (NOT a) AND (NOT b) = a NOR b (άρνηση διάζευξης)
Τέσσερις περιπτώσεις µε ένα ψευδές
2η = a OR b (διάζευξη),
3η = NOT b OR a = a OR NOT b (b συνεπαγωγή a)
4η = NOT a OR b (a συνεπαγωγή b)
5η = NOT (a AND b) = (NOT a) OR (NOT b) = a NAND b (άρνηση σύζευξης)
Έξι περιπτώσεις µε δύο αληθές και δύο ψευδές
6η = a (αφήνει αµετάβλητη την a )
7η = NOT (a OR b) OR (a AND b) = (NOT a OR b) AND (NOT b OR a) = a XNOR b (άρνηση XOR)
8η = NOT a (αντιστρέφει την a)
9η = b (αφήνει αµετάβλητη την b)
10η = NOT b (αντιστρέφει την b)
11η = (a OR b) AND NOT (a AND b) =(a AND NOT b) OR (b AND NOT a) = a XOR b (αποκλειστική OR)
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 13
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
• Μια µεταβλητή Boole παίρνει µόνο τις τιµές 0 και 1, και οι λογικές πράξεις χειρίζονται
µεταβλητές αυτού του είδους.
• Τα ηλεκτρονικά τεχνολογίας ηµιαγωγών (solid-state electronics) µπορούν να συµπεριφερθούν
ως λογικοί τελεστές.
• Οι «µεταβλητές» που χειρίζονται είναι ηλεκτρικές τάσεις.
• Σε πολλές περιπτώσεις, αλλά όχι σε όλες, µια υψηλή τάση αντιπροσωπεύει το 1, και µια χαµηλή
ή µηδενική την τιµή 0.
• τρανζίστορ Î πύλες Î λογικά κυκλώµατα Î ολοκληρωµένα κυκλώµατα Î υπολογιστής
Λογικό Κύκλωµα
• Ένα Λογικό κύκλωµα αποτελείται από πολλές αλληλοσυνδεδεµένες λογικές πύλες:
– Που µετατρέπουν δυαδικές τιµές εισόδου (0 ή 1) σε δυαδικές τιµές εξόδου (0 ή 1)
– Όπου οι τιµές εξόδου εξαρτώνται µόνο από την τρέχουσα κατάσταση των εισόδων
• Αυτού του τύπου τα κυκλώµατα ονοµάζονται Συνδυαστικά Λογικά Κυκλώµατα
– Επειδή η έξοδος εξαρτάται µόνο από την τρέχουσα κατάσταση των εισόδων
• Παρακάτω θα δούµε :
– Κύκλωµα που εξετάζει αν δύο αριθµού είναι ίσοι.
– Κυκλώµατα που προσθέτουν δύο αριθµούς.
• Εσωτερική άποψη
– αποτελείται από αλληλοσυνδεδεµένες λογικές πύλες όπου κάθε συνδυασµός εισόδων παράγει
πάντα την ίδια έξοδο
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 14
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0
…
=
=
=
=
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 15
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
Ο πίνακας αληθείας
a b Έξοδος
0 0 1
0 1 0
1 0 0
1 1 1
0 0
1 1
1 1
1 1
. .
0 0
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 16
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0
…
+
+
+
+
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0
• Θα κατασκευάσουµε ένα κύκλωµα που προσθέτει δύο bit χωρίς να λάβει υπ’ όψη το
κρατούµενο (ηµιαθροιστής)
• Έπειτα θα το χρησιµοποιήσουµε σε ένα κύκλωµα (1-ADD) που προσθέτει τρία bits (δύο bits +
κρατούµενο), πλήρης αθροιστής
• Τέλος θα χρησιµοποιήσουµε N από τα 1-ADD κυκλώµατα για την πρόσθεση δύο N-bit ακεραίων.
α) Ηµιαθροιστής
• Το λογικό κύκλωµα το οποίο υλοποιεί την πρόσθεση χωρίς να λάβει υπόψη του το κρατούµενο
από κάποια προηγούµενη στήλη πρόσθεσης λέγεται ηµιαθροιστής (half adder)
a= 1 0 = άθροισµα
half adder
b= 1 1 = κρατούµενο
Ο πίνακας αληθείας
Είσοδος a Είσοδος b Άθροισµα Κρατούµενο
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
– Η στήλη του αθροίσµατος (Sum) µπορεί να παραχθεί µε µια πύλη XOR και η στήλη του
κρατουµένου (Carry) µε µια πύλη AND.
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 17
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
β) Πλήρης αθροιστής
• Στην πρόσθεση µε περισσότερα ψηφία, πρέπει να συµπεριληφθεί και το κρατούµενο από την
προηγούµενη στήλη πρόσθεσης.
• Ο πλήρης αθροιστής (full adder) είναι ένα κύκλωµα που προσθέτει δύο bit µαζί µε το
κρατούµενο από την προηγούµενη πρόσθεση και δίνει ένα άθροισµα και ένα νέο κρατούµενο.
Προηγούµενο
κρατούµενο = 0
0 = άθροισµα
a= 1 full adder
1 = κρατούµενο
b= 1
• Ο πλήρης αθροιστής µπορεί να κατασκευαστεί από δύο ηµιαθροιστές, και µία πύλη OR
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 18
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
Πολυπλέκτης (Multiplexor)
• Επιλέγει µία από πολλές εισόδους δεδοµένων και την αντιγράφει στην έξοδο
• Ένα κύκλωµα πολυπλέκτη έχει:
N
2 γραµµές εισόδου (0, …, 2N-1)
1 γραµµή εξόδου
N γραµµές επιλογέα (ελέγχου)
• Οι γραµµές του επιλογέα χρησιµοποιούνται για να επιλέξουν ποιο σήµα από τις γραµµές
εισόδου θα γίνει το σήµα εξόδου:
– Οι N γραµµές επιλογέα ερµηνεύονται σαν ένας ακέραιος N-bit
– Το σήµα της γραµµής εισόδου µε αριθµό που αντιστοιχεί στον ακέραιο γίνεται το σήµα εξόδου.
1 3
είσοδοι
Επιλογέας
10 10 Επιλέγει τη είσοδο 3
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 19
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
Αποκωδικοποιητής (Decoder)
• Ένας αποκωδικοποιητής (decoder) είναι ένα κύκλωµα που επιλέγει µία από πολλές εξόδους,
ανάλογα µε τον συνδυασµό δυαδικών ψηφίων ενός στοιχείου δεδοµένων στην είσοδο
• Ένα κύκλωµα αποκωδικοποιητή (Decoder circuit) έχει:
N γραµµές εισόδου (αριθµούνται 0, 1, …., N-1)
N
2 γραµµές εξόδου (αριθµούνται 0, 1, … 2N-1)
0 0
0 000
1 001
0 1 2 010
1 2 3 011
Decoder επιλεχθέν
4 100
100 = 4 5 101
6 010
7
111
• Λειτουργεί ως εξής:
– Οι N γραµµές εισόδου ερµηνεύονται σαν µία τιµή ακεραίου N-bit.
– Επιλέγεται η γραµµή εξόδου µε αριθµό που αντιστοιχεί στον ακέραιο εισόδου (τίθεται ίση µε 1,
και όλες οι άλλες 0)
• Ένας αποκωδικοποιητής µε δύο εισόδους και τέσσερις εξόδους
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 20
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
• Αποτελεί τη βάση των περισσότερων κυκλωµάτων µνήµης. Οφείλει την ονοµασία του στο ότι
µπορεί να «µεταπηδήσει» από τη µια ευσταθή έξοδο στην άλλη µε ένα σήµα στην είσοδο.
Η µία είσοδος είναι η είσοδος θέσης, ενώ η άλλη λέγεται είσοδος επαναφοράς. Οι καταστάσεις των
δύο εξόδων είναι πάντα αντίθετες, και παριστάνονται µε Q και Q .
• Στo RS flip-flop η κατάσταση είναι ακαθόριστη όταν και οι δύο είσοδοι γίνουν 1. Έτσι, για την
αποθήκευση δεδοµένων συνήθως χρησιµοποιείται ένα πιο σύνθετο κύκλωµα, που είναι γνωστό
ως κυριο-εξαρτηµένο (master-slave) ή JK flip-flop.
Περιέχει δυο RS φλιπ-φλοπ και µία είσοδο χρονισµού (ρολόι). Η είσοδος χρονισµού
χρησιµοποιείται για τον έλεγχο του συγχρονισµού στην αποθήκευση των δεδοµένων.
• ΚΑΤΑΧΩΡΗΤΕΣ
Πολλά κυκλώµατα αποθήκευσης δεδοµένων µπορούν να συνδυαστούν για να σχηµατίσουν έναν
‘καταχωρητή’, ο οποίος αποθηκεύει ένα ολόκληρο στοιχείο δεδοµένων.
∆ιάταξη ενός καταχωρητή τεσσάρων bit κατασκευασµένου µε τέσσερα JK flip-flop
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 21
ΛΟΓΙΚΗ BOOLE - ΤΡΑΝΖΙΣΤΟΡ - ΠΥΛΕΣ- ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
ΑΝΑΚΕΦΑΛΑΙΩΣΗ
• Είδαµε πως οι υπολογιστές αναπαριστούν δεδοµένα
– Βασική µονάδα είναι το bit
– Τα δεδοµένα παριστάνονται εσωτερικά σαν δυαδικοί αριθµοί
– Χρησιµοποιούν το δυαδικό σύστηµα
• Μάθαµε γιατί οι υπολογιστές χρησιµοποιούν δυαδικά δεδοµένα
– Κύριος λόγος η αξιοπιστία
– Οι ηλεκτρονικές συσκευές δουλεύουν άριστα σε ένα δισταθές περιβάλλον, µε δύο µόνο
καταστάσεις
• Αφού είδαµε τα δοµικά συστατικά στο κατώτερο επίπεδο, στην επόµενη ενότητα θα δούµε την
πλήρη εικόνα στο ανώτερο επίπεδο
– Τη βασική αρχιτεκτονική σχεδίαση των υπολογιστών
– Υψηλού επιπέδου µονάδες όπως µικροεπεξεργαστές και µνήµη
– Τα βήµατα εκτέλεσης ενός προγράµµατος
ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ Ι 22