Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 24-5 Πράξεις με δυαδικούς αριθμούς (λογικές πράξεις) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης ; Ποιες κατηγορίες πράξεων; ρολόι (clock) Εκτέλεση πράξεων μονάδα ελέγχου δεδομένα τμήμα εισόδου επεξεργασίας δεδομένων υπολογιστικό σύστημα πρόγραμμα ελέγχου δεδομένα εξόδου Μνήμη Επεξεργασία: ψηφιακά δυαδικά κυκλώματα Εκτελούν πράξεις μεταξύ σειρών και οι οποίες αναπαριστούν δυαδικούς αριθμούς Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 2 Πράξεις με δυαδικούς αριθμούς Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική Ο υπολογιστής μπορεί να εκτελέσει Λογικές πράξεις (δυαδικής λογικής) Αριθμητικές πράξεις Οι πράξεις εκτελούνται Σε ομάδες bits: δυαδικούς αριθμούς Η δυαδική λογική ταιριάζει με την τεχνολογία του τρανζίστορ 2 καταστάσεις: ON-OFF, - Ψηφιακά ηλεκτρονικά (2 στάθμες) Δυαδική άλγεβρα oole Λογική άλγεβρα Συσχέτιση με διακοπτικά κυκλώματα Η εργασία του Shannon (938) C.E.Shannon Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 3 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 4
Ποσότητες Δυαδικής Λογικής its & ytes Στη δυαδική λογική άλγεβρα Υπάρχουν 2 ποσότητες (σύμβολα): Αληθές ή ή ΝΑΙ Ψευδές ή ή ΟΧΙ Ένα δυαδικό ψηφίο (bit) έχει τιμή ή Στα ψηφιακά ηλεκτρονικά κυκλώματα: ή χαμηλή τάση ή η μια φορά ρεύματος ή υψηλή τάση ή η άλλη φορά ρεύματος it H μικρότερη λογική ποσότητα - η μικρότερη μονάδα δεδομένων - ή. yte Ομάδα 8 bits Η ελάχιστη ποσότητα που μπορεί να χειριστεί ο υπολογιστής κατά την εκτέλεση μιας πράξης Ανάλογα με την τεχνολογία, ένα bit αναπαρίσταται με αντίστοιχη κατάσταση σε ένα ηλεκτρονικό κύκλωμα Μια σειρά από bytes αναπαριστά έναν δυαδικό αριθμό Αποθήκευση: σε καταχωρητές ή στη μνήμη Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 5 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 6 Η ανατομία ενός byte Πράξεις Δυαδικής Λογικής το περισσότερο σημαντικό bit bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit το λιγότερο σημαντικό bit bit Γιατί είναι αυτή η σειρά των bits; Γιατί το λιγότερο σημαντικό bit είναι δεξιά και το περισσότερο σημαντικό αριστερά; Θα φανεί όταν μιλήσουμε για αριθμητικές πράξεις Προς το παρόν, το byte είναι απλώς μια οκτάδα bits Στη δυαδική λογική άλγεβρα Καθορίζονται λογικές πράξεις μεταξύ των λογικών ποσοτήτων και (bits) Στα ψηφιακά ηλεκτρονικά κυκλώματα: Κύκλωμα δέχεται ως είσοδο την ηλεκτρική αναπαράσταση των και Και παράγει στην έξοδό του την ηλεκτρική αναπαράσταση του αποτελέσματος μιας λογικής πράξης Το κύκλωμα υλοποίησης της λογικής πράξης ονομάζεται πύλη (gate). Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 7 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 8
Λογικές πράξεις με bits Λογικές πράξεις με bits είσοδος ( bit) μονομελής πράξη (unary) έξοδος ( bit) Μονομελής λογική πράξη NOT (αντιστροφή) Διμελείς λογικές πράξεις ND (λογικό-και) OR (λογικό-η) OR (αποκλειστικό-η) είσοδος Α ( bit) είσοδος Β ( bit) διμελής πράξη (binary) έξοδος ( bit) Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 9 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς Βασικές Λογικές Πράξεις Πώς υλοποιείται μια πύλη NOT; Αντιστροφή (NOT) Αντιστροφή ενός bit Από το προηγούμενο μάθημα: πύλη (gate) καταβόθρα είσοδος Α πιθανές τιμές εισόδου έξοδος ΝΟΤ (Α) ή Α' ή Α αντίστοιχες τιμές εξόδου PMOS: άγει όταν στην πύλη εφαρμόζεται πηγή (source) n υπόστρωμα (body) n καταβόθρα p (drain) κανάλι (channel) πύλη πηγή σύμβολο NMOS: άγει όταν στην πύλη εφαρμόζεται Το τρανζίστορ NMOSN Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 2
Από το προηγούμενο μάθημα: ποια η λειτουργία του; V+ ( ) Η πύλη NOT (αντιστροφέας) V+ ( ) Υ Υ = NOT V- ( ) V- ( ) NOT σύμβολο πύλης NOT ο κύκλος συμβολίζει την αντιστροφή Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 3 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 4 Βασικές Λογικές Πράξεις Λογικό ΚΑΙ (ND) το αποτέλεσμα είναι, μόνο όταν και το Χ και το Υ είναι ND = ND = ND = ND = ND Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 5 ND ή σύμβολο πύλης ND Παράδειγμα υλοποίησης: η πύλη NND! NND = NOT- ND Υλοποίηση πύλης ND: χρησιμοποι- ώντας μια πύλη NND και μια πύλη NOT NND Β Υ Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 6 V+ ( ) V- ( ) Υ = () σύμβολο πύλης NND
Φραγή ND: για να θέσουμε σήμα στο Βασικές Λογικές Πράξεις ND = ND = data in control data out data in control ND data out control = : η έξοδος data_out είναι πάντα control = : η έξοδος data_out ισούται με το data_in Λογικό Ή (OR) το αποτέλεσμα είναι, όταν το Χ ή το Υ ή και τα δύο είναι OR = OR = OR = OR = OR σύμβολο πύλης OR OR ή + Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 7 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 8 Παράδειγμα υλοποίησης: η πύλη NOR! NOR = NOT-OR Υλοποίηση πύλης OR: χρησιμοποι- ώντας μια πύλη NOR και μια πύλη NOT NOR Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 9 V+ ( ) V- ( ) σύμβολο πύλης NOR (+) OR = OR = Προσοχή! Ποτέ δεν συνδέουμε εξόδους πυλών μαζί! Συγκέντρωση σημάτων με OR a b y Θα πρέπει ανά πάσα στιγμή όλα τα σήματα πλην ενός να είναι! Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 2 a b OR y
Βασικές Λογικές Πράξεις Βασικές Λογικές Πράξεις Αποκλειστικό Ή (OR) το αποτέλεσμα είναι, όταν μόνο το Χ ή μόνο το Υ είναι OR = OR = NOT OR = OR = OR = ' + ' OR OR ή + σύμβολο πύλης OR! Υλοποίηση πύλης NOR: χρησιμοποιώντας συνδυασμούς άλλων πυλών xnor = +'' NOR: Η συμπληρωματική συνάρτηση της OR το αποτέλεσμα είναι, όταν τα Χ και Υ είναι όμοια συνάρτηση ισοδυναμίας ΝOR Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 2 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 22 Λογικές πράξεις σε ομάδες bits Ο τελεστής NOT σε δυαδικούς αριθμούς Λογικές Πράξεις Ο υπολογιστής μπορεί να εφαρμόσει λογικές πράξεις στα δεδομένα μας Δεδομένα = σειρές από και Όχι όμως σε μεμονωμένα bits!! Αλλά: σε ομάδες των 8, 6, 32 ή 64 bits ταυτόχρονα n.. i.. 2 n.. i.. 2 n.. i.. 2 = op i i i op (=ND, OR,OR)! Η μέθοδος του υλικού (hardware): πολλαπλές ίδιες μονάδες εκτελούν την ίδια λειτουργία παράλληλα NOT H έξοδος i εξαρτάται μόνο από την είσοδο i Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 23 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 24
Ο τελεστής ND σε δυαδικούς αριθμούς Ο τελεστής OR σε δυαδικούς αριθμούς ND OR Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 25 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 26 Μάσκες Μάσκα ND: για να θέσουμε bits στο Λογικές Πράξεις Για να αλλάξουμε την τιμή μεμονωμένων bits μέσα σε μια ομάδα Για να θέσουμε επιλεγμένα bits σε Για να θέσουμε επιλεγμένα bits σε Για να αντιστρέψουμε επιλεγμένα bits Χωρίς να επηρεάζουμε τα υπόλοιπα! αυτά διατηρούν την τιμή τους, είτε είτε Μάσκα: σειρά bits, επιλεγμένη ώστε: its Εισόδου op Μάσκα Νέα ομάδα bits op = ND, OR ή OR Νέα ομάδα περιέχει το επιθυμητό αποτέλεσμα ND = ND = Ζητούμενο: σε λέξη των 8 bits να τεθούν σε τα 3 λιγότερο σημαντικά bits. Λέξη: ND Μάσκα: Νέα: Η ND μάσκα περιέχει: στα bits που θα γίνουν στα bits που θα παραμείνουν ως έχουν Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 27 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 28
Μάσκα OR: για να θέσουμε bits στο Μάσκα OR: για να αντιστρέψουμε bits Ζητούμενο: σε λέξη των 8 bits να τεθούν σε τα bits,4 και 5. Λέξη: OR Μάσκα: Νέα: Ζητούμενο: σε λέξη των 8 bits να αντιστραφούν τα bits 3,6 και 7. Λέξη: OR Μάσκα: Νέα: Η OR μάσκα περιέχει: Η OR μάσκα περιέχει: στα bits που θα γίνουν στα bits που θα αντιστραφούν OR = OR = στα bits που θα παραμείνουν ως έχουν στα bits που θα παραμείνουν ως έχουν Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 29 Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 3 Ολίσθηση (Shift) Ολίσθηση a b c d e f g h a b c d e f g h b c d e f g h αριστερή ολίσθηση a b c d e f g δεξιά ολίσθηση Εισαγωγή στην Επιστήμη των Υπολογιστών Πράξεις με δυαδικούς αριθμούς 3