Παράσταση τιμών δεδομένων Χατζηγεωργίου Αλέξανδρος: Παράσταση τιμών δεδομένων Παράσταση χαρακτήρων (char στην C, Pascal, Java) Πιο συνηθισμένη μορφή γραπτής επικοινωνίας είναι με σύμβολα Α, Β, . . . , Ζ, a, b, . . . , z, 0, . . . , 9, +, -, *, /, $, & κλπ Εσωτερική αναπαράσταση: Κάθε χαρακτήρας ακέραιο αριθμό (ordinal number) Η απεικόνιση των χαρακτήρων σε ακεραίους ονομάζεται κώδικας χαρακτήρων Κώδικας ASCII (American Standard Code for Information Interchange) 7 bits 27 = 128 χαρακτήρες Διαταξινομημένη σειρά: Αν ‘C’ μετά το ‘Α’ τότε ord(‘C’) > ord(‘A’) Ικανοποιητικός για αγγλικά, ανεπαρκής για άλλες γλώσσες Λύση: Χρήση 8 δυφίων (Για τα ελληνικά κώδικας ΕΛΟΤ 928)
ΕΛΟΤ 928 Έστω ο char (41)HEX 1 2 3 4 5 6 7 8 9 A B C D E F @ ΐ Π π ! Α Χατζηγεωργίου Αλέξανδρος: ΕΛΟΤ 928 Έστω ο char (41)HEX 1 2 3 4 5 6 7 8 9 A B C D E F NUL DLE @ ΐ Π π SOH DC1 ! Α Ρ ρ DC2 “ Β ς DC3 # Γ Σ σ $ Δ Τ τ % Ε Υ υ & Ζ Φ φ G Η Χ χ H Θ Ψ ψ I Ι Ω ω : J Κ ; K
Παράσταση τιμών δεδομένων Χατζηγεωργίου Αλέξανδρος: Παράσταση τιμών δεδομένων Κώδικας UNICODE Υποστηρίζεται από την Java, Windows NT Κάθε χαρακτήρας τακτικό αριθμό 16 δυφίων (σημείο κώδικα) 216 65536 Οι πρώτοι 128 χαρακτήρες είναι ίδιοι με τον ASCII Ομάδες χαρακτήρων. Λατινικά: 336 σημεία, Ελληνικά 144, εβραϊκά 112 κ.ο.κ. Ούτε ο UNICODE είναι επαρκής: Στον πλανήτη χρησιμοποιούνται γύρω στους 200.000 χαρακτήρες !!!
Αριθμητική Υπολογιστών Χατζηγεωργίου Αλέξανδρος: Αριθμητική Υπολογιστών Αριθμητική Πεπερασμένης Ακρίβειας: Καθώς η ποσότητα της διαθέσιμης μνήμης για την αποθήκευση ενός αριθμού είναι καθορισμένη, οι αριθμοί που μπορούν να χρησιμοποιηθούν μπορούν να αναπαρασταθούν με έναν καθορισμένο αριθμό ψηφίων Έστω ότι για την αναπαράσταση θετικών ακεραίων διατίθενται μόνο τρία δεκαδικά ψηφία. Με αυτό τον περιορισμό δεν μπορούμε να εκφράσουμε : Αριθμούς μεγαλύτερους από 999 Αρνητικούς αριθμούς Κλάσματα Μιγαδικούς αριθμούς
Χατζηγεωργίου Αλέξανδρος: Πεπερασμένη ακρίβεια Οι αριθμοί πεπερασμένης ακρίβειας δεν είναι κλειστοί ως προς καμία από τις τέσσερις βασικές πράξεις : 600 + 600 = 1200 (πολύ μεγάλος) 003 – 005 = - 2 (αρνητικός) 050 x 050 = 2500 (πολύ μεγάλος) 007 / 002 = 3.5 (όχι ακέραιος) Σε ορισμένες περιπτώσεις έχουμε σφάλμα υπερχείλισης (overflow) δηλαδή το αποτέλεσμα είναι μεγαλύτερο από τον μεγαλύτερο αριθμό του συνόλου είτε σφάλμα ανεπάρκειας (underflow) όταν το αποτέλεσμα είναι μικρότερο από τον μικρότερο αριθμό του συνόλου Σε άλλες περιπτώσεις το αποτέλεσμα απλώς δεν ανήκει στο σύνολο
Χατζηγεωργίου Αλέξανδρος: Συστήματα Ένας δεκαδικός αριθμός αποτελείται από μία ακολουθία δεκαδικών ψηφίων και ίσως από μία υποδιαστολή. Οποιοσδήποτε αριθμός εκφράζεται ως : Π.χ. 3347.4 = 3x103 + 3x102 + 4x101 + 7x100 + 4x10-1 Το σύστημα αυτό ονομάζεται δεκαδικό, λόγω του ότι ως εκθετική βάση έχει επιλεγεί το 10 Αντίστοιχα αριθμητικά συστήματα με βάση το 2, 8 και 16 είναι το δυαδικό, οκταδικό, δεκαεξαδικό Ένα αριθμητικό σύστημα με βάση το k απαιτεί k διαφορετικά σύμβολα για την αναπαράσταση των ψηφίων
αn-1rn-1 + αn-2rn-2 + … + α1r1 + α0r0 + α-1r-1 + … + α-mr-m Χατζηγεωργίου Αλέξανδρος: Θεσιακά Συστήματα Ο γενικός κανόνας παράστασης σε ένα θεσιακό σύστημα έχει ως εξής: Ο αριθμός: αn-1rn-1 + αn-2rn-2 + … + α1r1 + α0r0 + α-1r-1 + … + α-mr-m συμβολίζεται ως: αn-1 αn-2 … α1 α0 α-1…α-m Ως βάση ή ρίζα ενός θεσιακού συστήματος ορίζεται το πλήθος των διαφορετικών ψηφίων που χρησιμοποιούνται για την παράσταση των αριθμών Δεκαδικό: 0 1 2 3 4 5 6 7 8 9 Δυαδικό: 0 1 Οκταδικό : 0 1 2 3 4 5 6 7 Δεκαεξαδικό : 0 1 2 3 4 5 6 7 8 9 Α Β C D E F
Χατζηγεωργίου Αλέξανδρος: Παραδείγματα (1673.42) = 1x103 + 6x102 + 7x101 + 3x100 + 4x10-1 + 2x10-2 (100110)2 = 1x25 + 0x24 + 0x23 + 1x22 + 1x21 + 0x20 = (38)10 (372)8 = 3x82 + 7x81 + 2x80 = (250)10 (Α34F) = Ax163 + 3x162 + 4x161 + Fx160 = (41807)10
Μετατροπές Από δεκαδικό σε δυαδικό (Διαδοχικές διαιρέσεις με το 2) : Χατζηγεωργίου Αλέξανδρος: Μετατροπές Από δεκαδικό σε δυαδικό (Διαδοχικές διαιρέσεις με το 2) : 7 6 5 1 3 8 2 0 1 9 1 1 9 5 1 4 7 1 2 3 1 1 1 1 5 1 2 0 1 1 1 0 1 1 1 1 1 1 0 1 = 765
Μετατροπές Από δεκαδικό σε oκταδικό (Διαδοχικές διαιρέσεις με το 8) : Χατζηγεωργίου Αλέξανδρος: Μετατροπές Από δεκαδικό σε oκταδικό (Διαδοχικές διαιρέσεις με το 8) : 7 6 5 3 5 9 5 6 4 1 1 9 7 1 4 6 1 1 ( 1 6 7 4 5 )8
Μετατροπές (411)10 = (1 1 0 0 1 1 0 1 1)2 Από δεκαδικό σε oκταδικό : Χατζηγεωργίου Αλέξανδρος: Μετατροπές Από δεκαδικό σε oκταδικό : Ευκολότερα με πίνακες μετατροπής από δυαδικό σε οκταδικό Δυαδικό Οκταδικό Δυαδικό Οκταδικό 0 0 0 0 1 0 0 4 0 0 1 1 1 0 1 5 0 1 0 2 1 1 0 6 0 1 1 3 1 1 1 7 (411)10 = (1 1 0 0 1 1 0 1 1)2 6 3 3
Χατζηγεωργίου Αλέξανδρος: Μετατροπές Από δεκαδικό σε δεκαεξαδικό : (431)10 = (1 1 0 1 0 1 1 1 1)2 1 A F
Παράσταση τιμών δεδομένων Χατζηγεωργίου Αλέξανδρος: Παράσταση τιμών δεδομένων Οι λέξεις στη μνήμη και οι καταχωρητές περιέχουν μόνο bits Πρέπει με κάποιο τρόπο να κωδικοποιήσουμε τα πρόσημα των αριθμών και την ύπαρξη υποδιαστολής Στους αριθμούς σταθερής υποδιαστολής (fixed point numbers) η υποδιαστολή θεωρείται ότι βρίσκεται πάντα σε σταθερό σημείο της λέξης Ανάλογα με το πλήθος των bits διακρίνουμε: βραχείς (short) 8 bits απλής ακρίβειας (single precision) 16 bits διπλής ακρίβειας (double precision) 32 bits εκτεταμένης ακρίβειας (long) 64 bits
Ορολογία Έστω ένας υπολογιστής με μήκος λέξης 32 bits. 0 bit (δυφίο) Χατζηγεωργίου Αλέξανδρος: Ορολογία Έστω ένας υπολογιστής με μήκος λέξης 32 bits. 0 bit (δυφίο) 0 nibble (τετράδα) 01110001 byte (δυφιοσυλλαβή) 0111000101110001 half-word 01110001011100010111000101110001 word (λέξη) Στη συνέχεια θα εξετάσουμε δυνατούς τρόπους αναπαράστασης αριθμών με χρήση μιας τετράδας
Παράσταση μέτρου Παράσταση ακεραίων τιμών Χατζηγεωργίου Αλέξανδρος: Παράσταση μέτρου Παράσταση ακεραίων τιμών Δεν υπάρχει ούτε πρόσημο ούτε υποδιαστολή Ένας αριθμός n bits μπορεί να αναπαραστήσει τους αριθμούς από 0 έως 2n-1 0000 0 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 1001 9 1010 10 1011 11 1100 12 1101 13 1110 14 1111 15 Χρήση για αναπαράσταση διευθύνσεων (βλ. pointers στην C)
Παράσταση μέτρου Παράσταση κλασματικών τιμών Χατζηγεωργίου Αλέξανδρος: Παράσταση μέτρου Παράσταση κλασματικών τιμών Η υποδιαστολή θεωρείται ότι βρίσκεται πριν από το περισσότερο σημαντικό δυφίο Ένας αριθμός n bits μπορεί να αναπαραστήσει τους αριθμούς από 0 έως (2n-1)/2n 1000 0.5 1001 1010 1011 1100 1101 1110 1111 0.9375 (2-1 + 2-2 + 2-3 + 2-4) 0000 .0000 0001 .0625 (2-4) 0010 .125 (2-3) 0011 .1875 0100 .25 0101 0110 0111 H παράσταση αυτή ΔΕΝ χρησιμοποιείται στους υπολογιστές
Σύστημα πρόσημο και μέτρο Χατζηγεωργίου Αλέξανδρος: Σύστημα πρόσημο και μέτρο Το πιο σημαντικό bit (ΜSB) της ακολουθίας χρησιμοποιείται για τον προσδιορισμό του προσήμου (0: +, 1: - ) Τα υπόλοιπα (n-1) bits προσδιορίζουν το μέτρο του αριθμού σε δυαδική μορφή Για n= 8 bits, Χ10 = 7 Χ2 = 00000111 Χ10 = - 7 Χ2 = 10000111
Παράσταση προσήμου και μέτρου Χατζηγεωργίου Αλέξανδρος: Παράσταση προσήμου και μέτρου Παράσταση ακεραίων τιμών Υποτίθεται ότι δεν υπάρχει υποδιαστολή. Στην γενική περίπτωση αναπαριστώνται οι [-(2n-1-1), +(2n-1-1) ] 0000 0 0001 +1 0010 +2 0011 +3 0100 +4 0101 +5 0110 +6 0111 +7 1000 0 1001 -1 1010 -2 1011 -3 1100 -4 1101 -5 1110 -6 1111 -7
Παράσταση προσήμου και μέτρου Χατζηγεωργίου Αλέξανδρος: Παράσταση προσήμου και μέτρου Παράσταση κλασματικών τιμών Η υποδιαστολή θεωρείται ότι βρίσκεται αμέσως μετά το περισσότερο σημαντικό ψηφίο 1000 + .000 1001 - .125 1010 - .250 1011 - .375 1100 1101 1110 1111 - .875 (2-1 + 2-2 + 2-3) 0000 + .000 0001 + .125 (2-3) 0010 + .250 (2-2) 0011 + .375 0100 0101 0110 0111 + .875
Παράσταση προσήμου και μέτρου Χατζηγεωργίου Αλέξανδρος: Παράσταση προσήμου και μέτρου Μειονεκτήματα Το μηδέν αναπαρίσταται με δύο διαφορετικές ακολουθίες (0000, 1000). Επιπλέον το hardware πρέπει να ξέρει ότι το μηδέν αναπαρίσταται διττά Απαιτούνται διαφορετικά κυκλώματα για την πρόσθεση και την αφαίρεση καθώς τα αποτελέσματα των πράξεων εξαρτώνται από το πρόσημο Κατά συνέπεια ……. Η παράσταση αυτή δεν χρησιμοποιείται πολύ συχνά
Αριθμητική Δυαδικών Πρόσθεση δυαδικών : Α + Β Αποτέλεσμα Κρατούμενο Χατζηγεωργίου Αλέξανδρος: Αριθμητική Δυαδικών Πρόσθεση δυαδικών : Α + Β Αποτέλεσμα Κρατούμενο 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1
Αριθμητική Δυαδικών Πρόσθεση δυαδικών (πρόσημο και μέτρο) : Χατζηγεωργίου Αλέξανδρος: Αριθμητική Δυαδικών Πρόσθεση δυαδικών (πρόσημο και μέτρο) : 1ος Προσθετέος 0 0 1 1 1 (7)10 2ος Προσθετέος : 0 1 0 1 0 (10)10 Άθροισμα : 1 0 0 0 1 (17)10 Κρατούμενο : 0 1 1 1 0
Παράσταση συμπληρώματος ως προς ένα Χατζηγεωργίου Αλέξανδρος: Παράσταση συμπληρώματος ως προς ένα Το συμπλήρωμα ως προς ένα μιας δυαδικής ακολουθίας λαμβάνεται αλλάζοντας όλα τα δυφία από μηδέν σε ένα και αντιστρόφως 1 0 0 1 0 0 1 1 0 1 1 0 1 1 0 0 Παράσταση ακεραίων τιμών Οι αρνητικοί αναπαριστώνται ως το συμπλήρωμα ως προς ένα των θετικών Στην γενική περίπτωση αναπαριστώνται οι [-(2n-1-1), +(2n-1-1) ] 0000 0 0001 +1 0010 +2 0011 +3 0100 +4 0101 +5 0110 +6 0111 +7 1000 -7 1001 -6 1010 -5 1011 -4 1100 -3 1101 -2 1110 -1 1111 -0
Παράσταση συμπληρώματος ως προς ένα Χατζηγεωργίου Αλέξανδρος: Παράσταση συμπληρώματος ως προς ένα Παράσταση κλασματικών τιμών Η υποδιαστολή θεωρείται ότι βρίσκεται αμέσως μετά το περισσότερο σημαντικό δυφίο Αν μία ακολουθία αρχίζει από 0 πρόκειται για θετικό αριθμό, αλλιώς για αρνητικό. Οι θετικές ακολουθίες παριστάνουν τους ίδιους αριθμούς με το σύστημα πρόσημο και μέτρο. Οι αρνητικές διαφέρουν 0000 + .000 0001 + .125 (2-3) 0010 + .250 (2-2) 0011 + .375 0100 0101 0110 0111 + .875 1000 - .875 (2-1 + 2-2 + 2-3) 1001 1010 1011 1100 1101 - .250 1110 - .125 1111 - .000
Παράσταση συμπληρώματος ως προς ένα Χατζηγεωργίου Αλέξανδρος: Παράσταση συμπληρώματος ως προς ένα Αφαίρεση Παρόλο που και σε αυτή την παράσταση υπάρχουν δύο ακολουθίες που αναπαριστούν το μηδέν, τα κυκλώματα του υλικού είναι απλούστερα Η ‘’λογική’’ της αφαίρεσης είναι η ακόλουθη: βρες το συμπλήρωμα του αφαιρετέου πρόσθεσε το συμπλήρωμα στο μειωτέο if η πρόσθεση δώσει τελικό κρατούμενο (1) then πρόσθεσε το κρατούμενο στο άθροισμα (στο LSB)
Παράσταση συμπληρώματος ως προς ένα Χατζηγεωργίου Αλέξανδρος: Παράσταση συμπληρώματος ως προς ένα Παραδείγματα Αφαίρεσης + 510 01012 01012 - + - 210 11012 (συμπλ ως προς ένα) 00102 + 710 01112 - 410 10112 10112 - + 310 00112 (συμπλ ως προς ένα) 11002 - 710 κρατούμενο : 1 01112 1 + 10002 = -710
Αριθμητική Συμπληρώματος του δύο Χατζηγεωργίου Αλέξανδρος: Αριθμητική Συμπληρώματος του δύο Οι αριθμητικές πράξεις υλοποιούνται ευκολότερα Το πιο σημαντικό bit (ΜSB) χρησιμοποιείται για τον προσδιορισμό του προσήμου Όταν MSB = 0, τότε ο αριθμός είναι θετικός ή μηδέν και το μέτρο δίνεται από τα υπόλοιπα (n-1) ψηφία του αριθμού Όταν ΜSB = 1, ο αριθμός είναι αρνητικός και το μέτρο του αριθμού δίνεται από το συμπλήρωμα ως προς 2 του συνόλου των ψηφίων του αριθμού To συμπλήρωμα ως προς 2 βρίσκεται αλλάζοντας όλα τα δυφία (0 σε 1 και 1 σε 0) και προσθέτοντας 1 στο αποτέλεσμα για n=6 bits, Χ10 = +17 => Χ2= 010001
Αρνητικοί Αριθμοί Χ = 17 -> 010001 101110 (Αντιστροφή όλων των bit) Χατζηγεωργίου Αλέξανδρος: Αρνητικοί Αριθμοί για n=6 bits, Χ10 = - 17 => Χ2= 101111 Εύρεση συμπληρώματος ως προς 2 του αριθμού 17 : Χ = 17 -> 010001 101110 (Αντιστροφή όλων των bit) 101111 (Προσθήκη του 1)
Παράσταση συμπληρώματος ως προς δύο Χατζηγεωργίου Αλέξανδρος: Παράσταση συμπληρώματος ως προς δύο Παράσταση ακεραίων τιμών Στην γενική περίπτωση αναπαριστώνται οι [-2n-1, +2n-1-1 ] (Π.χ στην C ενας int λαμβάνει τιμές από [-32768, 32767 ] 0000 0 0001 +1 0010 +2 0011 +3 0100 +4 0101 +5 0110 +6 0111 +7 1000 -8 1001 -7 1010 -6 1011 -5 1100 -4 1101 -3 1110 -2 1111 -1 Άρα: Αν το MSB είναι 1 τότε πρόκειται για αρνητικό αριθμό Το κατεξοχήν αριθμητικό σύστημα που χρησιμοποιείται στους υπολογιστές
Παράσταση συμπληρώματος ως προς δύο Χατζηγεωργίου Αλέξανδρος: Παράσταση συμπληρώματος ως προς δύο Παράσταση κλασματικών τιμών Η υποδιαστολή θεωρείται ότι βρίσκεται αμέσως μετά το περισσότερο σημαντικό δυφίο Αν μία ακολουθία αρχίζει από 0 πρόκειται για θετικό αριθμό, αλλιώς για αρνητικό. Οι θετικές ακολουθίες παριστάνουν τους ίδιους αριθμούς με το σύστημα πρόσημο και μέτρο. Οι αρνητικές διαφέρουν 0000 + .000 0001 + .125 (2-3) 0010 + .250 (2-2) 0011 + .375 0100 0101 0110 0111 + .875 1000 - 1.0 1001 - 0.875 1010 1011 1100 1101 1110 1111 - .125
Αριθμητική Συμπληρώματος του 2 Χατζηγεωργίου Αλέξανδρος: Αριθμητική Συμπληρώματος του 2 Το αλγεβρικό άθροισμα δύο αριθμών στην παράσταση συμπληρώματος του 2, προκύπτει ως το δυαδικό άθροισμα των δύο αριθμών, αγνοώντας το τυχόν κρατούμενο +12 001100 +17 010001 ----- --------- 29 011101 +12 001100 -17 101111 ----- --------- -5 111011 - 12 110100 +17 010001 ----- --------- +5 000101 Αγνοείται το κρατούμενο 1 - 12 110100 - 17 101111 ----- --------- - 29 100011 Αγνοείται το κρατούμενο 1
Παράσταση συμπληρώματος ως προς δύο Χατζηγεωργίου Αλέξανδρος: Παράσταση συμπληρώματος ως προς δύο Αριθμητικές πράξεις Το υλικό των υπολογιστών διαθέτει ένα κύκλωμα αθροιστή που χρησιμοποιείται τόσο για την πρόσθεση όσο και για την αφαίρεση Αλγόριθμος αφαίρεσης βρες το συμπλήρωμα του αφαιρετέου ως προς 2 ; πρόσθεσε το συμπλήρωμα στο μειωτέο ; // αγνοείται το τελικό κρατούμενο αν υπάρχει
Παράσταση συμπληρώματος ως προς δύο Χατζηγεωργίου Αλέξανδρος: Παράσταση συμπληρώματος ως προς δύο Παραδείγματα Αφαίρεσης - 810 10002 10002 - + - 610 10102 (συμπλ ως προς δύο) 01102 - 210 11102 - 210 11102 11102 - + 310 00112 (συμπλ ως προς δύο) 11012 - 510 κρατούμενο (αγν) : 1 10112
Πολλαπλασιασμός - Διαίρεση Χατζηγεωργίου Αλέξανδρος: Πολλαπλασιασμός - Διαίρεση Κάθε υπολογιστής εκτός από τον συσσωρευτή Α διαθέτει έναν επιπρόσθετο καταχωρητή Β που θεωρείται ως επέκταση του Α Οι καταχωρητές Β και Α μπορούν να θεωρηθούν ως ένας διπλού μήκους καταχωρητής Αλγόριθμος Πολλαπλασιασμού : Αρχικά ο πολλαπλασιαστής φορτώνεται στο συσσωρευτή Α και ο πολλαπλασιαστέος σε ένα βοηθητικό καταχωρητή Υ : Β Α πολλαπλασιαστής Υ πολλαπλασιαστέος
Πολλαπλασιασμός - Διαίρεση Χατζηγεωργίου Αλέξανδρος: Πολλαπλασιασμός - Διαίρεση Για πολ/στέο > 0 και πολ/στη > 0 {Β} = 0 for(i=1;i<=n;i++) { if LSB(πολ/στη) == 1 then πρόσθεσε τον πολ/στέο στο MS μέρος του γινομένου {B}; shift_right {BA} }
Πολλαπλασιασμός - Διαίρεση Χατζηγεωργίου Αλέξανδρος: Πολλαπλασιασμός - Διαίρεση 510 x 610 = 3010 Y = 0110 B A 1. 0000 0101 (αρχικά: φόρτωση πολ/στη στο Α) 2. 0110 0101 (LSB{A} = 1 άρα προσθ Υ στο {Β} ) 0011 0010 (shift left {BA} ) i=1 3. 0001 1001 i=2 4. 0111 1001 0011 1100 i=3 5. 0001 1110 i=4 (00011110)2 = (30)10 Παράδειγμα για n=3 bits: 310 x 410 (A = 011, Y = 100)
Πολλαπλασιασμός - Διαίρεση Χατζηγεωργίου Αλέξανδρος: Πολλαπλασιασμός - Διαίρεση Διαίρεση (Θεωρούμε μόνο θετικούς ακεραίους για απλότητα) Στο {ΒΑ} φορτώνεται ο διαιρετέος Στον Υ φορτώνεται ο διαιρέτης Όταν τελειώσει η διαίρεση : πηλίκο στον Α, υπόλ. στον Β for(i=1;i<=n;i++) { shift left {BA} if (διαιρέτης <= Β) then πρόσθεσε συμπλήρωμα ως προς 2 του διαιρέτη στο Β κάνε το LSB του Α ίσο με 1 }
Πολλαπλασιασμός - Διαίρεση Χατζηγεωργίου Αλέξανδρος: Πολλαπλασιασμός - Διαίρεση Διαίρεση 710 / 210 πηλίκο = 310 υπόλοιπο = 110 Y = 0010, Y’ = 1110 Β Α 0000 0111 αρχικά {BA} = διαιρέτης 0000 1110 shift left i=1 0001 1100 shift left i=2 0011 1000 shift left + 1110 (διαιρέτης <=Β) 0001 1001 i=3 0011 0010 shift left 0001 0011 i=4 υπόλοιπο πηλίκο Παράδειγμα για n=5 : Διαίρεση 10 / 4