Εισαγωγή στην επιστήμη των υπολογιστών. Πράξεις με μπιτ

Σχετικά έγγραφα
Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ

Εισαγωγή στην επιστήµη των υπολογιστών. Πράξεις µε µπιτ

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ

Εισαγωγή στην επιστήµη των υπολογιστών. Πράξεις µε µπιτ

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Αναπαράσταση Αριθμών

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 4 ο Πράξεις με bits. Δρ.

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 4 : Πράξεις με bits. Δρ. Γκόγκος Χρήστος

Εισαγωγή στην Επιστήμη των Υπολογιστών

Ελίνα Μακρή

ΠΛΗ21 Κεφάλαιο 2. ΠΛΗ21 Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: Παράσταση Προσημασμένων Αριθμών Συμπληρώματα

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Αναπαράσταση Αριθμών

Εισαγωγή στην επιστήμη των υπολογιστών

Σύστημα Πλεονάσματος. Αναπαράσταση Πραγματικών Αριθμών. Αριθμητικές Πράξεις σε Αριθμούς Κινητής Υποδιαστολής

Λύσεις Ασκήσεων ΣΕΙΡΑ 1 η. Πρόσημο και μέγεθος

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Συστήματα αρίθμησης. = α n-1 *b n-1 + a n-2 *b n-2 + +a 1 b 1 + a 0 όπου τα 0 a i b-1

Σύστημα Πλεονάσματος και Αναπαράσταση Αριθμών Κινητής Υποδιαστολής

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Αριθμητική Υπολογιστών (Κεφάλαιο 3)

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Αναπαράσταση αριθμών στο δυαδικό σύστημα. Δρ.

Εισαγωγή στην επιστήµη των υπολογιστών. Υπολογιστές και Δεδοµένα Κεφάλαιο 3ο Αναπαράσταση Αριθµών

Εισαγωγή στην επιστήµη των υπολογιστών. Αναπαράσταση Αριθµών

Εισαγωγή στην επιστήµη των υπολογιστών ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Αριθμητικά Συστήματα

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Πράξεις με δυαδικούς αριθμούς

Λογική Σχεδίαση Ψηφιακών Συστημάτων

ΠΛΗΡΟΦΟΡΙΚΗ I. 4 η ΔΙΑΛΕΞΗ Αριθμητικά Συστήματα

Αριθμητικά Συστήματα

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Δυαδικη παρασταση αριθμων και συμβολων

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 3 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

Εισαγωγή στον Προγραμματισμό

Πληροφορική. Ενότητα 4 η : Κωδικοποίηση & Παράσταση Δεδομένων. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Πράξεις με δυαδικούς αριθμούς

1. ΣΥΣΤΗΜΑΤΑ ΑΡΙΘΜΩΝ. α i. (α i β i ) (1.3) όπου: η= το πλήθος ακεραίων ψηφίων του αριθμού Ν. n-1

Εισαγωγή στην Επιστήμη των Υπολογιστών

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

ΠΛΗΡΟΦΟΡΙΚΗ I Ενότητα 6

Διαδικασιακός Προγραμματισμός

Αριθµητική υπολογιστών


Κεφάλαιο 2 Η έννοια και η παράσταση της πληροφορίας στον ΗΥ. Εφ. Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος 1

Συστήματα Αρίθμησης. Συστήματα Αρίθμησης 1. PDF created with FinePrint pdffactory Pro trial version

Δυαδικό Σύστημα Αρίθμησης

Κεφάλαιο 2 Κωδικοποίηση & Αποκωδικοποίηση

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-Ι. Ενότητα 1: Εισαγωγή στην Αρχιτεκτονική -Ι

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Αρχιτεκτονική Υπολογιστών. Data. Κείμενο. Βίντεο. Αριθμοί Εικόνες. Ήχοι

Κατ οίκον Εργασία ΚE5

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 3 : Αναπαράσταση αριθμών στο δυαδικό σύστημα. Δρ.

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Κεφάλαιο 3

1. Βάσεις αριθμητικών συστημάτων 2. Μετατροπές μεταξύ ξύβάσεων 3. Αρνητικοί δυαδικοί αριθμοί 4. Αριθμητικές πράξεις δυαδικών αριθμών

Ανασκόπηση στα ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Ψηφιακά Συστήματα. 1. Συστήματα Αριθμών

Κ15 Ψηφιακή Λογική Σχεδίαση 2: Δυαδικό Σύστημα / Αναπαραστάσεις

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΠΛΗ-21

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Αριθμητικά Συστήματα. Επιμέλεια Διαφανειών: Δ.

Αριθμητικά Συστήματα Κώδικες

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

Οργάνωση Υπολογιστών

a = 10; a = k; int a,b,c; a = b = c = 10;

Εισαγωγή στην επιστήμη των υπολογιστών. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ και Μετατροπές Αριθμών

Κεφάλαιο 4. Λογική Σχεδίαση

Εισαγωγή. Πληροφορική

ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΨΗΦΙΑΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ. Κεφάλαιο 3

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εκτέλεση πράξεων. Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική. Πράξεις με δυαδικούς αριθμούς. Πράξεις με δυαδικούς αριθμούς

Ανάπτυξη και Σχεδίαση Λογισμικού

3.1 εκαδικό και υαδικό

1 η Θεµατική Ενότητα : Δυαδικά Συστήµατα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

Εισαγωγή στους Υπολογιστές

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Πραγµατικοί αριθµοί κινητής υποδιαστολής Floating Point Numbers. Σ. Τσιτµηδέλης ΤΕΙ ΧΑΛΚΙΔΑΣ

ΑΡΙΘΜΗΤΙΚΗ ΓΙΑ ΥΠΟΛΟΓΙΣΤΕΣ

Περίληψη. ΗΜΥ 210: Λογικός Σχεδιασµός, Εαρινό Εξάµηνο υαδική Αφαίρεση. υαδική Αφαίρεση (συν.) Ακόµη ένα παράδειγµα Αφαίρεσης.

Κεφάλαιο 2. Συστήματα Αρίθμησης και Αναπαράσταση Πληροφορίας. Περιεχόμενα. 2.1 Αριθμητικά Συστήματα. Εισαγωγή

µπιτ Λύση: Κάθε οµάδα των τεσσάρων µπιτ µεταφράζεται σε ένα δεκαεξαδικό ψηφίο 1100 C 1110 E Άρα το δεκαεξαδικό ισοδύναµο είναι CE2

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αθροιστές. Ημιαθροιστής

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Νεκτάριος Κοζύρης ΑΡΙΘΜΗΤΙΚΕΣ ΠΡΑΞΕΙΣ

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

Εισαγωγή στην πληροφορική

Πρόγραμμα Επικαιροποίησης Γνώσεων Αποφοίτων ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Αριθμητικά Συστήματα = 3 x x x x 10 0

4.1 Θεωρητική εισαγωγή

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Τα µπιτ και η σηµασία τους. Σχήµα bit. ΚΕΦΑΛΑΙΟ 1: Αποθήκευση εδοµένων (1/2) 1.7 Αποθήκευση κλασµάτων 1.8 Συµπίεση δεδοµένων 1.9 Σφάλµατα επικοινωνίας

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ - ΑΡΙΘΜΗΤΙΚΕΣ ΠΡΑΞΕΙΣ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 9 Ο. Διαχείριση αλφαριθμητικών και πράξεις σε επίπεδο bit ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΙΝΑΤΚΑΣ Ι.

ΠΛΗ10 Κεφάλαιο 2. ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών

Chapter 3. Αριθμητική Υπολογιστών. Έβδομη (7 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Transcript:

Εισαγωγή στην επιστήμη των υπολογιστών Πράξεις με μπιτ 1

Πράξεις με μπιτ 2

Αριθμητικές Πράξεις σε Ακέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση 3

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Πλήθος μονάδων Αποτέλεσμα Καμία 0 Μία 1 Κρατούμενο Δύο 0 1 Τρεις 1 1 Προσθέτουμε δύο μπιτ και μεταφέρουμε το κρατούμενο στην επόμενη στήλη. Αν υπάρχει κάποιο τελικό κρατούμενο μετά την πρόσθεση στην πιο αριστερή στήλη, το αγνοούμε. 4

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Προσθέστε δύο αριθμούς σε αναπαράσταση συμπληρώματος ως προς δύο, με μήκος μπιτ 8 : (+17) + (+22) (+39) 5

Πως μετατρέπουμε έναν θετικό αριθμό σε δυαδική μορφή σε μορφή συμπληρώματος ως προς 2; 6

n Ο αριθμός μετατρέπεται στο δυαδικό σύστημα. n Αν το πλήθος των μπιτ είναι μικρότερο από Ν, προστίθενται μηδενικά στα αριστερά του αριθμού ώστε να υπάρχει ένα σύνολο από Ν μπιτ. n Αν το πρόσημο είναι θετικό, δε χρειάζεται καμία άλλη ενέργεια. 7

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Προσθέστε δύο αριθμούς σε αναπαράσταση συμπληρώματος ως προς δύο, με μήκος μπιτ 8: (+17) + (+22) (+39) Λύση Κρατούμενο 1 0 0 0 1 0 0 0 1 + 0 0 0 1 0 1 1 0 Αποτέλεσμα 0 0 1 0 0 1 1 1 Το αποτέλεσμα είναι 39 στο δεκαδικό σύστημα. 8

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Προσθέστε το 24 και το 17 αφού πρώτα τους μετατρέψετε σε δυαδικούς αριθμούς σε μορφή συμπληρώματος ως προς δύο, με μήκος μπιτ 8. (+24) + ( 17) (+7) 9

Πως μετατρέπουμε έναν αρνητικό αριθμό σε δυαδική μορφή σε μορφή συμπληρώματος ως προς 2; 10

n n n Ο αριθμός μετατρέπεται στο δυαδικό σύστημα, το πρόσημο αγνοείται. Αν το πλήθος των μπιτ είναι μικρότερο από Ν, προστίθενται μηδενικά στα αριστερά του αριθμού ώστε να υπάρχει ένα σύνολο από Ν μπιτ. Αν το πρόσημο είναι αρνητικό, μένουν ως έχουν όλα τα δεξιότερα 0 και το πρώτο 1. Τα υπόλοιπα μπιτ αντικαθίστανται από το συμπλήρωμά τους. 11

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Προσθέστε το 24 και το 17 αφού πρώτα τους μετατρέψετε σε δυαδικούς αριθμούς σε μορφή συμπληρώματος ως προς δύο, με μήκος μπιτ 8 Λύση (+24) + ( 17) (+7) Κρατούμενο 1 1 1 1 1 0 0 0 1 1 0 0 0 + 1 1 1 0 1 1 1 1 Αποτέλεσμα 0 0 0 0 0 1 1 1 Προσέξτε ότι το αποτέλεσμα είναι +7 και ότι το τελευταίο κρατούμενο (από την πιο αριστερή στήλη) αγνοείται 12

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Προσθέστε το 35 και το 20 αφού πρώτα τους μετατρέψετε σε δυαδικούς αριθμούς σε μορφή συμπληρώματος ως προς δύο ( 35) + (+20) ( 15) 13

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Προσθέστε το 35 και το 20 αφού πρώτα τους μετατρέψετε σε δυαδικούς αριθμούς σε μορφή συμπληρώματος ως προς δύο, με μήκος 8 μπιτ. Λύση ( 35) + (+20) ( 15) Κρατούμενο 1 1 1 1 1 0 1 1 1 0 1 + 0 0 0 1 0 1 0 0 Αποτέλεσμα 1 1 1 1 0 0 0 1 Προσέξτε ότι το αποτέλεσμα είναι 15 (το συμπλήρωμα ως προς δύο του αποτελέσματος είναι το 15). 14

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Προσθέστε το 127 και το 3 αφού τους μετατρέψετε σε μορφή συμπληρώματος ως προς δύο, με μήκος μπιτ 8. (+127) + (+3) (+130) 15

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Προσθέστε το 127 και το 3, αφού πρώτα τους μετατρέψετε σε δυαδικούς αριθμούς σε μορφή συμπληρώματος ως προς δύο, με μήκος μπιτ 8. (+127) + (+3) (+130) Λύση Κρατούμενο 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 + 0 0 0 0 0 0 1 1 Αποτέλεσμα 1 0 0 0 0 0 1 0 16

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Εδώ αμέσως παρατηρούμε ένα σφάλμα. n Το πιο αριστερό μπιτ του αποτελέσματος είναι το 1, πράγμα που σημαίνει ότι ο αριθμός είναι αρνητικός (εμείς περιμέναμε θετικό αριθμό). 10000010 n Ποιος είναι αυτός ο αριθμός στο δεκαδικό σύστημα; 17

Πρόσθεση στη μορφή συμπληρώματος ως προς δύο Εδώ αμέσως παρατηρούμε ένα σφάλμα. n Το πιο αριστερό μπιτ του αποτελέσματος είναι το 1, πράγμα που σημαίνει ότι ο αριθμός είναι αρνητικός (εμείς περιμέναμε θετικό αριθμό). 10000010 n Ποιος είναι αυτός ο αριθμός στο δεκαδικό σύστημα; w 10000010 => το συμπλήρωμά του ως προς δύο είναι 01111110 => 126 w Άρα ο αριθμός 10000010 είναι το 126 (και όχι το 130). w Το αποτέλεσμα αυτό οφείλεται στην υπερχείλιση 18

Υπερχείλιση Υπερχείλιση (overflow) ονομάζεται το σφάλμα που παρουσιάζεται όταν προσπαθούμε να αποθηκεύσουμε έναν αριθμό ο οποίος δεν είναι στο διάστημα τιμών που ορίζεται από τη δέσμευση Διάστημα τιμών αριθμών στην αναπαράσταση συμπληρώματος ως προς δύο: 2 N-1 0 (2 N-1 1) 19

Υπερχείλιση 127+1=-128!!! 127+3=-126-128-1=127!!! 20

Αφαίρεση στη μορφή συμπληρώματος ως προς δύο Αριθμός 1 Αριθμός 2 Είναι ισοδύναμο με Αριθμός 1 + ( Αριθμός 2) Αφαιρέστε το 62 από το 101 σε μορφή συμπληρώματος ως προς δύο (+101) (+62) Û (+101) + ( 62) (+39) 21

Αφαίρεση στη μορφή συμπληρώματος ως προς δύο (+101) (+62) Û (+101) + ( 62) (+39) Λύση Κρατούμενο 1 1 0 1 1 0 0 1 0 1 + 1 1 0 0 0 0 1 0 Αποτέλεσμα 0 0 1 0 0 1 1 1 Το αποτέλεσμα είναι +39. Παρατηρήστε ότι το πιο αριστερό κρατούμενο αγνοείται. 22

Λογικές Πράξεις Η τιμή ενός μπιτ μπορεί να είναι είτε 0 είτε 1. Θεωρούμε ότι n n το 0 αντιπροσωπεύει τη λογική τιμή ψευδής (false) και το 1 αντιπροσωπεύει τη λογική τιμή αληθής (true) Έτσι, μπορούμε για τον χειρισμό των δεδομένων να εφαρμόζουμε τις πράξεις που ορίζονται στην Άλγεβρα Boole Η Άλγεβρα Boole κατατάσσεται σ ένα ειδικό πεδίο των μαθηματικών που ονομάζεται Λογική 23

Λογικές Πράξεις 24

Πίνακες Αλήθειας 25

Μονομελής Τελεστής 26

Ο Διμελής Τελεστής ΑΝD 27

Ο Διμελής Τελεστής OR 28

Ο Διμελής Τελεστής XOR 29

Εφαρμογές Οι τρεις λογικές διμελείς πράξεις χρησιμοποιούνται για την τροποποίηση σχημάτων μπιτ. Μπορούν n n n να ενεργοποιούν, να απενεργοποιούν, ή να αντιστρέφουν συγκεκριμένα μπιτ Το σχήμα μπιτ προς τροποποίηση έρχεται n n n Σε σύζευξη (AND), Σε διάζευξη (OR), ή Σε αποκλειστική διάζευξη (XOR) με το δεύτερο σχήμα μπιτ, το οποίο ονομάζεται μάσκα 30

Εφαρμογές - Μάσκες Οι μάσκες χρησιμοποιούνται για την τροποποίηση άλλων σχημάτων μπιτ 31

Εφαρμογή του τελεστή ΑΝD: Απενεργοποίηση συγκεκριμένων μπιτ Μια εφαρμογή του τελεστή AND είναι η απενεργοποίηση συγκεκριμένων μπιτ ενός σχήματος n Πως; n Δηλ. η επιβολή της τιμής 0 σε αυτά Με μια μάσκα απενεργοποίησης με το ίδιο πλήθος μπιτ, και με τιμή 0 στα μπιτ που αντιστοιχούν σε αυτά που θέλουμε να απενεργοποιήσουμε. 32

Κανόνες κατασκευής μάσκας απενεργοποίησης συγκεκριμένων μπιτ Για να απενεργοποιηθεί ένα μπιτ στο σχήμα προορισμού, το αντίστοιχο μπιτ στη μάσκα πρέπει να είναι 0. Για να μείνει ένα μπιτ στο σχήμα προορισμού ως έχει, το αντίστοιχο μπιτ της μάσκας πρέπει να είναι 1. 33

Παράδειγμα Χρησιμοποιείστε μια μάσκα για να απενεργοποιήσετε το 1 o και 3 o από αριστερά και το δύο πρώτα μπιτ από δεξιά ενός σχήματος μπιτ μήκους 8. 34

Παράδειγμα Χρησιμοποιείστε μια μάσκα για να απενεργοποιήσετε το 1 o και 3 o από αριστερά και το δύο πρώτα μπιτ από δεξιά ενός σχήματος μπιτ μήκους 8. Λύση: η μάσκα είναι 01011100 και ο τελεστής AND 35

Εφαρμογή του τελεστή ΟR: Eνεργοποίηση συγκεκριμένων μπιτ Μια εφαρμογή του τελεστή OR είναι η ενεργοποίηση συγκεκριμένων μπιτ ενός σχήματος n Πως; δηλ. η επιβολή της τιμής 1 σε αυτά n Με μια μάσκα ενεργοποίησης με το ίδιο πλήθος μπιτ και με τιμή 1 στα μπιτ που αντιστοιχούν σε αυτά που θέλουμε να ενεργοποιήσουμε 36

Κανόνες κατασκευής μάσκας ενεργοποίησης συγκεκριμένων μπιτ Για να ενεργοποιηθεί ένα μπιτ στο σχήμα προορισμού, το αντίστοιχο μπιτ στη μάσκα πρέπει να είναι 1. Για να μείνει ένα μπιτ στο σχήμα προορισμού ως έχει, το αντίστοιχο μπιτ της μάσκας πρέπει να είναι 0. 37

Παράδειγμα Χρησιμοποιείστε μια μάσκα για να ενεργοποιήσετε τα 4 αριστερά μπιτ και το πρώτο δεξί μπιτ ενός σχήματος μπιτ μήκους 8. 38

Παράδειγμα Χρησιμοποιείστε μια μάσκα για να ενεργοποιήσετε τα 4 αριστερά μπιτ και το πρώτο δεξί μπιτ ενός σχήματος μπιτ μήκους 8. Λύση: η μάσκα είναι 11110001 και ο τελεστής που θα χρησιμοποιηθεί είναι ο OR 39

Εφαρμογή του τελεστή XΟR: Aντιστροφή συγκεκριμένων μπιτ Μια εφαρμογή του τελεστή ΧΟR είναι η αντιστροφή συγκεκριμένων μπιτ ενός σχήματος n δηλ. η αλλαγή της τιμής από 0 σε 1 και το αντίστροφο Για να γίνει αυτό χρησιμοποιείται μια μάσκα αντιστροφής με το ίδιο πλήθος μπιτ και με τιμή 1 στα μπιτ που αντιστοιχούν σε αυτά που θέλουμε να αντιστρέψουμε. 40

Πίνακες Αλήθειας 41

Κανόνες κατασκευής μάσκας αντιστροφής συγκεκριμένων μπιτ Για να αντιστραφεί ένα μπιτ στο σχήμα προορισμού, το αντίστοιχο μπιτ στη μάσκα πρέπει να είναι 1. Για να μείνει ένα μπιτ ως έχει στο σχήμα προορισμού, το αντίστοιχο μπιτ της μάσκας πρέπει να είναι 0. 42

Παράδειγμα Χρησιμοποιείστε μια μάσκα για να αντιστρέψετε τα 5 αριστερά μπιτ του σχήματος 10100110 43

Παράδειγμα Χρησιμοποιείστε μια μάσκα για να αντιστρέψετε τα 5 αριστερά μπιτ του σχήματος 10100110 Λύση Η μάσκα είναι 11111000 44

Πράξεις Ολίσθησης / Μετατόπισης Μετακινούν τα bits ενός σχήματος bit αριστερά ή δεξιά. Έτσι, αλλάζει η θέση των bits Δύο είδη πράξεων ολίσθησης Λογικές πράξεις ολίσθησης και Αριθμητικές πράξεις ολίσθησης 4.45

Λογικές Πράξεις Ολίσθησης Εφαρμόζονται σε σχήματα bit που αναπαριστούν μη προσημασμένους αριθμούς για να μην αλλάζει το πρόσημο. Δύο είδη: Λογική Μετατόπιση Κυκλική Μετατόπιση 4.46

Δεξιά και Αριστερή Ολίσθηση Η δεξιά ολίσθηση καταργεί το δεξιότερο μπιτ, μετακινεί κάθε μπιτ μία θέση προς τα δεξιά, και προσθέτει ένα 0 ως το πιο αριστερό μπιτ. Η αριστερή ολίσθηση καταργεί το πιο αριστερό μπιτ, μετακινεί κάθε μπιτ μία θέση προς τα αριστερά, και προσθέτει ένα 0 ως το δεξιότερο μπιτ 47

Δεξιά και Αριστερή Ολίσθηση 48

Παράδειγμα Χρησιμοποιείστε αριστερή μετατόπιση στο σχήμα bit 10011000. ΛΥΣΗ Discarded Added

Κυκλική Μετατόπιση/Ολίσθηση

Παράδειγμα Χρησιμοποιείστε αριστερή κυκλική μετατόπιση στο σχήμα bit 10011000. ΛΥΣΗ: Το αριστερότερο bit μετατοπίζεται κυκλικά και γίνεται το δεξιότερο.

Πράξεις Ολίσθησης/Μετατόπισης Πώς μπορει να διαιρεθεί ή να πολλαπλασιαστεί ένας αριθμός με το 2 με τη βοήθεια των πράξεων ολίσθησης; Λύση n Όταν ένα σχήμα μπιτ αναπαριστά κάποιον μη προσημασμένο αριθμό, η δεξιά ολίσθηση διαιρεί τον αριθμό αυτό με το 2 (ακέραια διαίρεση). w Το σχήμα 00111011 αντιπροσωπεύει τον αριθμό 59. Αν ολισθήσουμε τον αριθμό προς τα δεξιά, παίρνουμε 00011101, το οποίο ισούται με 29. w Αν πάλι ολισθήσουμε τον αρχικό αριθμό (59) προς τα αριστερά, παίρνουμε 01110110, το οποίο ισούται με 118. 52

Αριθμητικές Πράξεις Μετατόπισης Υποθέτουν ότι το σχήμα bit είναι ένας προσημασμένος ακέραιος σε συμπλήρωμα ως προς 2. Η δεξιά ολίσθηση χρησιμοποιείται για τη διαίρεση ενός ακεραίου με το 2 (ακέραια διαίρεση), ενώ η αριστερή ολίσθηση για τον πολλαπλασιασμό του ακεραίου με το 2.

Παράδειγμα Χρησιμοποιείστε δεξιά μετατόπιση στο 10011001 που είναι ακέραιος συμπληρώματος ως προς 2. ΛΥΣΗ Το αριστερότερο bit διατηρείται και επίσης αντιγράφεται στο διπλανό δεξί bit. Ο αρχικός αριθμός ήταν 103. Ο νέος είναι το 52, δηλ. το αποτέλεσμα της διαίρεσης του 103 με το 2 με περικοπή στον μικρότερο ακέραιο

Παράδειγμα Χρησιμοποιείστε αριστερή μετατόπιση στο 11011001 που είναι ακέραιος συμπληρώματος ως προς 2. ΛΥΣΗ Το αριστερότερο bit χάνεται και επίσης προστίθεται ένα 0 ως δεξιότερο bit. Ο αρχικός αριθμός ήταν 39. Ο νέος είναι το 78, δηλ. το αποτέλεσμα του πολλαπλασιασμού με το 2. Η πράξη είναι έγκυρη αφού δεν προέκυψε υπερχείλιση.

Παράδειγμα Χρησιμοποιείστε αριστερή μετατόπιση στο 01111111 που είναι ακέραιος συμπληρώματος ως προς 2. ΛΥΣΗ Το αριστερότερο bit χάνεται και επίσης προστίθεται ένα 0 ως δεξιότερο bit. Ο αρχικός αριθμός ήταν 127 και νέος είναι το 2, οπότε δεν έχουμε έγκυρο αποτέλεσμα λόγω υπερχείλισης. Αυτό συνέβη γιατί το 254 (127x2) δεν μπορεί να αποθηκευθεί σε σχήμα μήκους 8 bit.

Παράδειγμα Ο συνδυασμός λογικών πράξεων και λογικών πράξεων μετατόπισης μας παρέχει εργαλεία για χειρισμό σχημάτων bit. Π.χ. αν έχουμε ένα σχήμα bit και πρέπει να χρησιμοποιήσουμε το τρίτο bit από δεξιά, πρέπει να ξέρουμε αν αυτό είναι 0 or 1. Το διαπιστώνουμε ως εξής: Μετατοπίζουμε το σχήμα δύο bit προς τα δεξιά Εφαρμόζουμε στο αποτέλεσμα τον τελεστή AND με μιά μάσκα όπου δεξιά έχει 1 Ελέγχουμε το αποτέλεσμα

Ερωτήσεις; 58