Κεφ. 2 Αριθμητικά Συστήματα και Κώδικες
Πηγή: Ψηφιακά Ηλεκτρονικά Θεωρία
2.1 Αρχές ανάπτυξης αριθμητικών συστημάτων
Ένα αριθμητικό σύστημα είναι ένα σύνολο από ψηφία (αριθμοί και χαρακτήρες) που χρησιμοποιούνται για αρίθμηση και υπολογισμούς (πρόσθεση, αφαίρεση, πολλαπλασιασμό, διαίρεση).
Η ανάπτυξη των αριθμητικών συστημάτων βασίζεται σε δύο αρχές:
1. την ύπαρξη βάσης (base, radix) του συστήματος
2. την ύπαρξη αξίας – βάρους (weight) των θέσεων των ψηφίων
Το περισσότερο χρησιμοποιούμενο αριθμητικό σύστημα είναι το δεκαδικό (αραβικό σύστημα). Αλλα συστήματα με τα οποία και θα ασχοληθούμε είναι το δυαδικό, το οκταδικό και το δεκαεξαδικό.
2.2 Δεκαδικό Σύστημα
Το δεκαδικό σύστημα χρησιμοποιεί δέκα ψηφία (τους αριθμούς 0-9), έχει βάση το 10 και η αξία των ψηφίων εξαρτάται από τις θέσεις τους (το βάρος των θέσεων υπολογίζεται από την αντίστοιχη δύναμη του 10). Για παράδειγμα, o αριθμός 5832 του δεκαδικού συστήματος παριστάνει μία ποσότητα που είναι ίση με 5 χιλιάδες συν 8 εκατοντάδες συν 3 δεκάδες συν 2 μονάδες, αφού:

Το πρώτο ψηφίο του αριθμού είναι το Περισσότερο Σημαντικό Ψηφίο (Most Significant Digit – MSD), γιατί έχει την μεγαλύτερη αξία, ενώ το τελευταίο ψηφίο είναι το Λιγότερο Σημαντικό Ψηφίο (Least Significant Digit – lSD), γιατί έχει την μικρότερη αξία.
Από τις θέσεις των ψηφίων προκύπτουν τα βάρη τους.

Κάθε αριθμός εκφρασμένος σε κάποιο αριθμητικό σύστημα με βάση (radix) το r μπορεί να παρασταθεί όπως παρακάτω:
(A)r = an ∙ rn + an-1 ∙ rn-1 + an-2 ∙ rn-2 + … + a2 ∙ r2 + a1 ∙ r1 + a0 ∙ r0
2.3 ΔΥΑΔΙΚΟ ΣΥΣΤΗΜΑ
Ορισμοί
Το δυαδικό σύστημα έχει βάση τον αριθμό 2. Επομένως, χρησιμοποιεί τα ψηφία 0 και 1.
- Κάθε δυαδικός αριθμός παριστάνεται από μία σειρά από τέτοια ψηφία που ονομάζονται δυαδικά ψηφία (bits). Από τις θέσεις των ψηφίων προκύπτουν τα βάρη τους (οι αντίστοιχες δυνάμεις του 2).
- Περισσότερο Σημαντικό Δυαδικό Ψηφίο (Most Significant Bit – MSB), είναι το πρώτο ψηφίο του αριθμού και έχει την μεγαλύτερη αξία.
- Λιγότερο Σημαντικό Δυαδικό Ψηφίο (Least Significant Bit – LSB), είναι το τελευταίο ψηφίο και έχει την μικρότερη αξία.

Ο αντίστοιχος δεκαδικός αριθμός είναι:

Αρίθμηση στο δυαδικό σύστημα
Στο δεκαδικό σύστημα χρησιμοποιώντας n ψηφία μπορούμε να μετρήσουμε 10n αριθμούς (από το 0 μέχρι και το 10n -1).
Για παράδειγμα με 1 ψηφίο μπορούμε να μετρήσουμε τους αριθμούς 0-9, με δύο ψηφία τους αριθμούς 0-99, με τρία ψηφία τους αριθμούς 0-999. Αντίστοιχα, στο δυαδικό σύστημα χρησιμοποιώντας n ψηφία (bits) μπορούμε να μετρήσουμε 2n αριθμούς (από το 0 μέχρι και το 2n -1).
Για παράδειγμα με 1 ψηφίο μπορούμε να μετρήσουμε τους αριθμούς 0 – 1, με δύο ψηφία τους αριθμούς 0 – 3, με τρία ψηφία τους αριθμούς 0 – 7, με τέσσερα ψηφία τους αριθμούς 0 – 15.
Η ακολουθία δυαδικής αρίθμησης, χρησιμοποιώντας τέσσερα ψηφία (bits) παρουσιάζεται στον στον παρακάτω πίνακα , από όπου προκύπτει ότι:
- το λιγότερο σημαντικό bit (LSB – τελευταία στήλη) αλλάζει (από 0 σε 1 και από 1 σε 0) σε κάθε βήμα αρίθμησης,
- το αμέσως προηγούμενο bit αλλάζει κάθε δύο βήματα αρίθμησης,
- το αμέσως προηγούμενο bit αλλάζει κάθε τέσσερα βήματα αρίθμησης και
- το περισσότερο σημαντικό bit (MSB) αλλάζει κάθε οκτώ βήματα.
Αυτή η παρατήρηση αποτελεί έναν εύκολο μνημονικό κανόνα για να θυμάστε την ακολουθία δυαδικής αρίθμησης.

Μετατροπή δυαδικού σε δεκαδικό
Για τη μετατροπή το δυαδικού αριθμού

σε δεκαδικό αριθμό χρησιμοποιείται ο ακόλουθος τύπος:

Παράδειγμα:

Μετατροπή δεκαδικού σε δυαδικό
Για τη μετατροπή ενός ακέραιου δεκαδικού αριθμού σε δυαδικό αριθμό πραγματοποιείται η ακόλουθη διαδικασία:
Ο δεκαδικός αριθμός διαιρείται δια του 2, οπότε προκύπτει ακέραιο πηλίκο και υπόλοιπο (που είναι 0 ή 1. Το πηλίκο της προηγούμενης διαίρεσης διαιρείται εκ νέου δια του 2, οπότε προκύπτει νέο ακέραιο πηλίκο και νέο υπόλοιπο. Η διαδικασία επαναλαμβάνεται μέχρι να προκύψει πηλίκο ίσο με 0. Τα υπόλοιπα των διαιρέσεων αποτελούν τα ψηφία του ακέραιου μέρους του δυαδικού αριθμού με LSB, το υπόλοιπο της πρώτης διαίρεσης και MSB το υπόλοιπο της τελευταίας διαίρεσης.
Παράδειγμα:

2.4 Οκταδικό Σύστημα
- Το οκταδικό σύστημα έχει βάση τον αριθμό 8.
- Χρησιμοποιεί τα ψηφία 0, 1, 2, 3, 4, 5, 6 και 7.
- Κάθε οκταδικός αριθμός παριστάνεται από μία σειρά από τέτοια ψηφία. Από τις θέσεις των ψηφίων προκύπτουν τα βάρη τους (οι αντίστοιχες δυνάμεις του 8).
- Το πρώτο ψηφίο του αριθμού ονομάζεται Περισσότερο Σημαντικό Ψηφίο (Most Significant Digit – MSD),
- το τελευταίο ψηφίο ονομάζεται Λιγότερο Σημαντικό Ψηφίο (Least Significant Digit – LSD).

Παράδειγμα:
(452)8 = 4×82 + 5×81 +2×80 =(298)10
Αρίθμηση στο οκταδικό σύστημα
Στο οκταδικό σύστημα, χρησιμοποιώντας n ψηφία μπορούμε να μετρήσουμε 8n αριθμούς (από το 0 μέχρι και το 8n -1).
- με 1 ψηφίο μπορούμε να μετρήσουμε τους αριθμούς 0 – 7,
- με δύο ψηφία τους αριθμούς 0 – 63,
- με τρία ψηφία τους αριθμούς 0 – 511,
- με τέσσερα ψηφία τους αριθμούς 0 – 4095.

Μετατροπή οκταδικού σε δεκαδικό
Για τη μετατροπή του οκταδικού αριθμού

σε δεκαδικό αριθμό χρησιμοποιείται ο ακόλουθος τύπος:

Παράδειγμα:
(372)8 =3×82 + 7×81 +2×80 =3×64+7×8+2×1= 192+56+2=(250)10
Μετατροπή δεκαδικού σε οκταδικό
Για τη μετατροπή ενός δεκαδικού αριθμού σε οκταδικό αριθμό χρησιμοποιείται η μέθοδος διαδοχικών διαιρέσεων δια του 8 (η διαδικασία είναι ανάλογη με τη διαδικασία για μετατροπή ενός δεκαδικού αριθμού σε δυαδικό αριθμό).
Παράδειγμα:

Μετατροπή οκταδικού σε δυαδικό
Για τη μετατροπή ενός οκταδΙΚ0ύ αριθμού σε δυαδικό αριθμό μετατρέπεται Κάθε ψηφίο του οκταδικού αριθμού μία ομάδα τριών (3) δυαδικών ψηφίων, επειδή με τρία δυαδικά ψηφία μπορούν να αναπαρασταθούν όλα τα ψηφία του οκταδικού συστήματος.
Η αντιστοιχία των οκτώ πιθανών ψηφίων ενός οκταδικού αριθμού με τις οκτώ τριάδες bits φαίνεται στον παρακάτω πίνακα.

Παράδειγμα:

Μετατροπή δυαδικού σε οκταδικό
Για τη μετατροπή ενός δυαδικού αριθμού σε οκταδικό αριθμό, χωρίζεται ο δυαδικός αριθμός σε ομάδες τριών (3) bits και κάθε ομάδα μετατρέπεται στο ισοδύναμο οκταδικό ψηφίο. Αν ο δυαδικός αριθμός δε χωρίζεται ακριβώς σε τριάδες bits, τότε προστίθενται όσα ″0″ απαιτούνται στα αριστερά του MSB του δυαδικού αριθμού (γιατί αυτό δεν επηρεάζει τον αριθμό) ώστε να δημιουργηθεί η τελευταία τριάδα bits.
Παράδειγμα:

2.5 Δεκαεξαδικό Σύστημα
- Το δεκαεξαδικό σύστημα έχει βάση τον αριθμό 16
- χρησιμοποιεί 16 ψηφία που είναι οι αριθμοί 0, 1, 2, 3, 4, 5, 6, 7, 8 και 9 και τα γράμματα A, Β, C, D, Ε και F.
- Κάθε δεκαεξαδικός αριθμός παριστάνεται από μία σειρά από τέτοια ψηφία. Από τις θέσεις των ψηφίων προκύπτουν τα βάρη τους (οι αντίστοιχες δυνάμεις του 16).
- Το πρώτο ψηφίο του αριθμού ονομάζεται Περισσότερο Σημαντικό Ψηφίο (Most Significant Digit – MSD),
- ενώ το τελευταίο ψηφίο ονομάζεται Λιγότερο Σημαντικό Ψηφίο (Least Significant Digit – LSD).

Για παράδειγμα, τα βάρη των θέσεων του δεκαεξαδικού αριθμού 8F9 φαίνονται στον παραπάνω πίνακα. Ο αντίστοιχος δεκαδικός αριθμός είναι:
8F9 = 8 x 162 + 15 x 161 +9 x 160 = 2297
Αρίθμηση στο δεκαεξαδικό σύστημα
- Με 1 ψηφίο μπορούμε να μετρήσουμε τους αριθμούς 0 – 15,
- με 2 ψηφία τους αριθμούς 0 – 255,
- με 3 ψηφία τους αριθμούς 0 – 4095,
- με 4 ψηφία τους αριθμούς 0 – 65535.

Μετατροπή δεκαεξαδικού σε δεκαδικό
Για τη μετατροπή του δεκαεξαδικού αριθμού (A)16 =an an-1 …a2 a1 a0 σε δεκαδικό αριθμό χρησιμοποιείται ο ακόλουθος τύπος:

Παράδειγμα:
(B5D)16 =11 x 162 + 5 x 161+13 x 160 = 11 x 256 + 5 x 16 + 13 x 1 =(2909)10
Μετατροπή δεκαδικού σε δεκαεξαδικό
Για τη μετατροπή ενός δεκαδικού αριθμού σε δεκαεξαδικό αριθμό χρησιμοποιείται η μέθοδος διαδοχικών διαιρέσεων δια του 16.
Παράδειγμα:

Μετατροπή δεκαεξαδικού σε δυαδικό
Για τη μετατροπή ενός δεκαεξαδικού αριθμού σε δυαδικό αριθμό μετατρέπεται κάθε ψηφίο του δεκαεξαδικού αριθμού σε μία ομάδα τεσσάρων (4) δυαδικών ψηφίων επειδή με τέσσερα δυαδικά ψηφία μπορούν να αναπαρασταθούν όλα τα ψηφία του δεκαεξαδικού συστήματος.

Παράδειγμα:

Μετατροπή δυαδικού σε δεκαεξαδικό
Για τη μετατροπή ενός δυαδικού αριθμού σε δεκαεξαδικό αριθμό χωρίζεται ο δυαδικός αριθμός σε ομάδες τεσσάρων (4) bits και κάθε ομάδα μετατρέπεται στο ισοδύναμο δεκαεξαδικό ψηφίο. Αν ο δυαδικός αριθμός δε χωρίζεται ακριβώς σε τετράδες bits, τότε προστίθενται όσα ″0″ απαιτούνται στα αριστερά του MSB του δυαδικού, ώστε να δημιουργηθεί η τελευταία τετράδα bits.
Παράδειγμα:

Μετατροπή δεκαεξαδικού σε οκταδικό
Για τη μετατροπή ενός δεκαεξαδικού αριθμού σε οκταδικό αριθμό, μετατρέπεται ο δεκαεξαδικός αριθμός σε δυαδικό αριθμό που με την σειρά του μετατρέπεται σε οκταδικό αριθμό.
Παράδειγμα:

Μετατροπή οκταδικού σε δεκαεξαδικό
Για τη μετατροπή ενός οκταδικού αριθμού σε δεκαεξαδικό αριθμό, μετατρέπεται ο οκταδικός αριθμός σε δυαδικό αριθμό που με τη σειρά του μετατρέπεται σε δεκαεξαδικό αριθμό.
Παράδειγμα:

2.6 Αριθμητικές Πράξεις
Πρόσθεση
Το άθροισμα δύο δυαδικών αριθμών υπολογίζεται με ανάλογη διαδικασία του υπολογισμού του αθροίσματος δύο δεκαδικών αριθμών: η πρόσθεση ξεκινάει από τα LSB προς τα MSB των προσθετέων, κάθε bit του αθροίσματος είναι ″0″ ή ″1″ και το κρατούμενο κάθε θέσης προστίθεται στα bits των προσθετέων της επόμενης θέσης.
Οι μνημονικοί κανόνες της δυαδικής πρόσθεσης είναι:
0+0=0
0+1=1
1+0=1
1+1=10 (άθροισμα 0 και κρατούμενο 1)
Παρατήρηση: Το σύμβολο + που χρησιμοποιείται στην πρόσθεση έχει σαφώς διαφορετική σημασία από το σύμβολο + που χρησιμοποιείται στη
λογική πράξη OR.
Παράδειγμα:

Η αντίστοιχη δεκαδική πρόσθεση είναι: (9)10 +(12)10 =(21)10
Αφαίρεση δυαδικών αριθμών
Η διαφορά δύο δυαδικών αριθμών υπολογίζεται με ανάλογη διαδικασία του υπολογισμού της διαφοράς δύο δεκαδικών αριθμών: η αφαίρεση ξεκινάει από τα LSB προς τα MSB του μειωτέου και του αφαιρετέου.
Οι μνημονικοί κανόνες της δυαδικής αφαίρεσης είναι:
0-0=0
0-1=11 (διαφορά 1 και δανεικό 1)
1-0=1
1-1=0
Παράδειγμα:

Η αντίστοιχη δεκαδική αφαίρεση είναι: (9)10-(4)10 =(5)10
Αριθμητικές πράξεις στο δεκαεξαδικό σύστημα
Οι δεκαεξαδικοί αριθμοί χρησιμοποιούνται ευρύτατα στην Πληροφορική, όπως για παράδειγμα στην αρίθμηση των διευθύνσεων μνήμης των ηλεκτρονικών υπολογιστών ή στον προγραμματισμό των μικροϋπολογιστών σε γλώσσα μηχανής.
Πρόσθεση δεκαεξαδικών αριθμών
Το άθροισμα δύο δεκαεξαδικών αριθμών υπολογίζεται με την ακόλουθη διαδικασία:
Η πρόσθεση ξεκινάει από τα LSD προς τα MSD των προσθετέων. Τα ψηφία των δεκαεξαδικών αριθμών προστίθενται σε κάθε θέση, όπως προστίθενται οι δεκαδικοί αριθμοί.
- Αν το αποτέλεσμα είναι μικρότερο από 15 ή ίσο με 15, τότε το άθροισμα είναι το αντίστοιχο δεκαεξαδικό ψηφίο.
- Αν το αποτέλεσμα είναι μεγαλύτερο από 15, τότε το άθροισμα είναι το δεκαεξαδικό ψηφίο που αντιστοιχεί στην διαφορά του αποτελέσματος μείον 16 και μεταφέρεται κρατούμενο 1 στην επόμενη θέση.
Παράδειγμα:

Η αντίστοιχη δεκαδική πρόσθεση είναι: (60312)10 +(20273)10 =(80585)10
Αφαίρεση δεκαεξαδικών αριθμών
Η διαφορά δύο δεκαεξαδικών αριθμών υπολογίζεται με την ακόλουθη διαδικασία:
Η αφαίρεση ξεκινάει από τα LSD προς τα MSD του μειωτέου και του αφαιρετέου.
- Αν σε κάθε θέση το ψηφίο του μειωτέου είναι μεγαλύτερο από ή ίσο με το ψηφίο του αφαιρετέου, τότε τα ψηφία των δεκαεξαδικών αριθμών αφαιρούνται, όπως αφαιρούνται οι δεκαδικοί αριθμοί. Η διαφορά είναι το αντίστοιχο δεκαεξαδικό ψηφίο.
- Αν σε κάθε θέση το ψηφίο του μειωτέου είναι μικρότερο από το ψηφίο του αφαιρετέου, τότε μεταφέρεται δανεικό 1 από την επόμενη θέση (το δεκαεξαδικό ψηφίο της επόμενης θέσης μειώνεται κατά 1). Στο ψηφίο του μειωτέου προστίθεται το 16 και από αυτό το άθροισμα αφαιρείται το ψηφίο του αφαιρετέου. Η διαφορά είναι το αντίστοιχο δεκαεξαδικό ψηφίο του αποτελέσματος αυτής της αφαίρεσης.
Παράδειγμα:

Η αντίστοιχη δεκαδική αφαίρεση είναι: (25288)10-(11795)10 =(13493)10
2.7 Κώδικες
Δυαδικοί κώδικες
Στα υπολογιστικά συστήματα ο χρήστης εισάγει δεδομένα σε δεκαδική μορφή και το σύστημα τα μετατρέπει σε δυαδική μορφή και τα επεξεργάζεται.
Κωδικοποίηση ονομάζεται η κατάλληλη μετατροπή των πληροφοριών για την επεξεργασία τους από το υπολογιστικό σύστημα.
Κώδικας είναι ένας συστηματικός τρόπος παράστασης πληροφοριών.
Τα ηλεκτρονικά ψηφιακά συστήματα χρησιμοποιούν σήματα που έχουν δύο διακριτές τιμές. Όμως, τα ψηφιακά συστήματα αναπαριστούν και χειρίζονται πολλά διακριτά στοιχεία πληροφορίας και όχι μόνο δυαδικές πληροφορίες. Κάθε διακριτό στοιχείο πληροφορίας μπορεί να παρασταθεί με έναν δυαδικό κώδικα.
Δυαδικός κώδικας είναι ένας συστηματικός τρόπος παράστασης πληροφοριών σε δυαδική μορφή. Οι δυαδικοί κώδικες χρησιμοποιούν δυαδικά ψηφία bits με δύο πιθανές τιμές ″0″ και ″1″. Με έναν δυαδικό κώδικα που χρησιμοποιεί n bits μπορούν να παρασταθούν το πολύ 2n διαφορετικοί συνδυασμοί.
Οι δυαδικοί κώδικες ανήκουν στις δύο ακόλουθες κατηγορίες ανάλογα με τον τρόπο κατασκευής τους:
- Δυαδικοί κώδικες με βάρη
- Δυαδικοί κώδικες χωρίς βάρη
Δυαδικοί κώδικες με βάρη
Οι δυαδικοί κώδικες με βάρη κατασκευάζονται με τέτοιον τρόπο ώστε στη θέση κάθε bit του κώδικα να αντιστοιχεί ένα βάρος (κάθε θέση έχει μία αξία). Οι ακόλουθοι δυαδικοί κώδικες με βάρη στα bits ανάλογα με τη θέση τους, χρησιμοποιούνται για την κωδικοποίηση των 10 ψηφίων του δεκαδικού συστήματος:
- ο BCD κώδικας που χρησιμοποιεί 4 bits με βάρη 8 4 2 1
- ο κώδικας με βάρη 7 4 2 1 που χρησιμοποιεί 4 bits με βάρη 7 4 2 1
- ο κώδικας Biquinary που χρησιμοποιεί 7 bits με βάρη 5 0 4 3 2 1 0
Κώδικας BCD
Ο κώδικας BCD Binary Coded Decimal (δυαδικά κωδικοποιημένο δεκαδικό)είναι δυαδικός κώδικας με βάρη, που χρησιμοποιείται για την κωδικοποίηση των 10 ψηφίων του δεκαδικού συστήματος.

Μετατροπή από BCD σε δεκαδικό
Για τη μετατροπή ενός BCD αριθμού σε δεκαδικό αριθμό χωρίζεται ο BCD αριθμός σε ομάδες τεσσάρων (4) bits και κάθε ομάδα μετατρέπεται στο ισοδύναμο δεκαδικό ψηφίο.
Παράδειγμα: Μετατροπή του BCD αριθμού 1000011000101001 σε δεκαδικό αριθμό.

Μετατροπή από δεκαδικό σε BCD
Για τη μετατροπή ενός BCD αριθμού σε δεκαδικό αριθμό χωρίζεται ο BCD αριθ μός σε ομάδες τεσσάρων (4) bits και κάθε ομάδα μετατρέπεται στο ισοδύναμο δεκαδικό ψηφίο.
Παράδειγμα: Μετατροπή του δεκαδικού 4638 σε BCD κώδικα.

Παρατήρηση: Ο κώδικας BCD χρησιμοποιεί τους 10 από τους 16 δυνατούς συνδυασμούς των 4 bits. Οι 6 συνδυασμοί 1010, 1011, 1100, 1101, 1110 και 1111 δε χρησιμοποιούνται.
Ο κώδικας BCD δεν είναι αριθμητικό σύστημα, είναι ένας άμεσος δυαδικός μετατροπέας μόνο για τους δεκαδικούς αριθμούς 0-9. Για τους δεκαδικούς αριθμούς που είναι μεγαλύτεροι από 9, η κωδικοποίηση και η μετατροπή είναι διαφορετικές. Για παράδειγμα, ο δεκαδικός αριθμός 253 αντιστοιχεί:
- στον 12-bits BCD αριθμό 001001010011
- στον 8-bits δυαδικό αριθμό 11111101
2.7.3 Δυαδικοί κώδικες χωρίς βάρη
Στους δυαδικούς κώδικες χωρίς βάρη, η θέση κάθε bit του κώδικα δεν αντιστοιχεί σε κάποιο βάρος, όπως γίνεται στους δυαδικούς κώδικες με βάρη. Αυτοί οι κώδικες προκύπτουν από κάποιον κανόνα. Τέτοιοι δυαδικοί κώδικες χωρίς βάρη είναι:
- ο κώδικας Gray
- ο κώδικας υπερβολής κατά 3 (excess-3)
Ο κώδικας Gray είναι δυαδικός κώδικας χωρίς βάρη που χρησιμοποιείται για την κωδικοποίηση των δεκαδικών αριθμών (όχι μόνο των 10 ψηφίων του δεκαδικού συστήματος, όπως γίνεται στον κώδικα BCD). Ο κώδικας Gray που χρησιμοποιεί 4 bits (κωδικοποίηση των 16 πρώτων δεκαδικών αριθμών 0-15). Ο κώδικας Gray ονομάζεται κατοπτρικός κώδικας, λόγω του τρόπου κατασκευής του.

- Χαρακτηριστικό του κώδικα Gray είναι ότι αλλάζει ένα μόνο bit μεταξύ δύο διαδοχικών αριθμών. Έτσι ελαχιστοποιείται η πιθανότητα σφάλματος κατά την μετάβαση από ένα αριθμό στον επόμενο ή στον προηγούμενο.
2.7.4 Αλφαριθμητικοί κώδικες
Πολλές εφαρμογές των ηλεκτρονικών υπολογιστών απαιτούν τη χρήση δεδομένων που αποτελούνται από αριθμούς, γράμματα και από ειδικούς χαρακτήρες.
Οι αλφαριθμητικοί χαρακτήρες περιλαμβάνουν:
- τα 26 κεφαλαία γράμματα του αγγλικού αλφαβήτου Α-Ζ
- τα 26 μικρά γράμματα του αγγλικού αλφαβήτου a-z
- τα 10 δεκαδικά ψηφία 0-9
- τους ειδικούς χαρακτήρες (τα σημεία στίξης όπως ! . , ? και άλλους χαρακτήρες όπως @ # $ % & * + /)
Ένας αλφαριθμητικός κώδικας είναι ένας συστηματικός τρόπος παράστασης των αλφαριθμητικών χαρακτήρων σε δυαδική μορφή. Κάθε αλφαριθμητικός χαρακτήρας παριστάνεται με μία ομάδα bits, το μέγεθος της οποίας εξαρτάται από το πλήθος των αλφαριθμητικών χαρακτήρων που παριστάνει ο κώδικας.
Τέτοιοι δυαδικοί αλφαριθμητικοί κώδικες είναι οι ακόλουθοι:
- ο κώδικας ASCII που χρησιμοποιεί 7 bits
- ο κώδικας Baudot που χρησιμοποιεί 5 bits
Ο κώδικας ASCII
Ο πλέον συχνά χρησιμοποιούμενος δυαδικός αλφαριθμητικός κώδικας είναι ο κώδικας ASCII (American Standard Code for Information Interchange) ο οποίος χρησιμοποιεί 7 bits για την κωδικοποίηση 128 χαρακτήρων. Ο κώδικας ASCII περιλαμβάνει:
- 94 εκτυπώσιμους γραφικούς χαρακτήρες και
- 34 μη εκτυπώσιμους χαρακτήρες ελέγχου (control characters).

Οι εκτυπώσιμοι χαρακτήρες είναι:
- τα 26 κεφαλαία γράμματα του αγγλικού αλφαβήτου Α-Ζ
- τα 26 μικρά γράμματα του αγγλικού αλφαβήτου a-z
- οι 10 αριθμοί 0-9
- οι 32 ειδικοί χαρακτήρες.
Οι χαρακτήρες ελέγχου χωρίζονται σε:
- διαμορφωτές μορφής
- διαχωριστές πληροφορίας
- χαρακτήρες ελέγχου-επικοινωνίας.
Οι ηλεκτρονικοί υπολογιστές συνήθως χρησιμοποιούν δυαδικές λέξεις των 8 bits (1 byte),ενώ ο κώδικας ASCII χρησιμοποιεί 7 bits. Έτσι, κάθε χαρακτήρας του κώδικα ASCII συνήθως αναπαρίσταται με 1 byte των 8 bits (το MSB είναι 0), οπότε μπορεί να γίνει κωδικοποίηση 256 χαρακτήρων. Για την κωδικοποίηση των 128 χαρακτήρων του κώδικα ASCII χρησιμοποιείται το MSB με τιμή “0” (και τα υπόλοιπα 7 bits είναι τα 7 bits του κώδικα ASCII).
Παράδειγμα: Η λέξη bit στον κώδικα ASCII είναι

Για την κωδικοποίηση άλλων χαρακτήρων (για παράδειγμα τα γράμματα του ελληνικού αλφαβήτου) χρησιμοποιείται το MSB με τιμή ″1″. Με τον τρόπο αυτόν έχει προκύψει το Πρότυπο ΕΛΟΤ-928 του Ελληνικού Οργανισμού Τυποποίησης που είναι εγκεκριμένο από την ISO (International Standards Organisation).
