Όλοι οι χαρακτήρες και τα γράμματα μπορούν να κωδικοποιηθούν χρησιμοποιώντας οκτώ δυαδικά bit. Οι πιο συνηθισμένοι πίνακες για την αναπαράσταση γραμμάτων σε δυαδικό κώδικα είναι οι ASCII και ANSI, μπορούν να χρησιμοποιηθούν για τη σύνταξη κειμένων σε μικροεπεξεργαστές. Στους πίνακες ASCII και ANSI, οι πρώτοι 128 χαρακτήρες είναι οι ίδιοι. Αυτό το μέρος του πίνακα περιέχει κωδικούς για αριθμούς, σημεία στίξης, κεφαλαία και πεζά λατινικά γράμματα και χαρακτήρες ελέγχου. Οι εθνικές επεκτάσεις πινάκων χαρακτήρων και ψευδογραφικών συμβόλων περιέχονται στους τελευταίους 128 κωδικούς αυτών των πινάκων, επομένως τα ρωσικά κείμενα στα λειτουργικά συστήματα DOS και WINDOWS δεν ταιριάζουν.
Κατά την πρώτη γνωριμία με υπολογιστές και μικροεπεξεργαστές, μπορεί να προκύψει το ερώτημα - "πώς να μετατρέψετε κείμενο σε δυαδικό κώδικα;" Ωστόσο, αυτή η μεταμόρφωση είναι η πιο απλή ενέργεια! Για να το κάνετε αυτό, πρέπει να χρησιμοποιήσετε οποιοδήποτε πρόγραμμα επεξεργασίας κειμένου. Το πιο απλό πρόγραμμα σημειωματάριο, το οποίο αποτελεί μέρος του λειτουργικού συστήματος των Windows, είναι επίσης κατάλληλο. Παρόμοιοι επεξεργαστές υπάρχουν σε όλα τα περιβάλλοντα προγραμματισμού για γλώσσες όπως C, Pascal ή Java. Θα πρέπει να σημειωθεί ότι το πιο κοινό πρόγραμμα επεξεργασίας κειμένου Word δεν είναι κατάλληλο για απλή μετατροπή κειμένου σε δυαδικό κώδικα. Αυτός ο δοκιμαστικός επεξεργαστής εισάγει έναν τεράστιο όγκο πρόσθετων πληροφοριών, όπως το χρώμα των γραμμάτων, τους πλάγιους χαρακτήρες, την υπογράμμιση, τη γλώσσα στην οποία είναι γραμμένη μια συγκεκριμένη φράση και τη γραμματοσειρά.
Πρέπει να σημειωθεί ότι, στην πραγματικότητα, ο συνδυασμός μηδενικών και μονάδων, με τη βοήθεια των οποίων κωδικοποιούνται οι πληροφορίες κειμένου, δεν είναι δυαδικός κώδικας, διότι bits σε αυτόν τον κώδικα δεν υπακούουν στους νόμους. Ωστόσο, στο Διαδίκτυο, η φράση αναζήτησης «που αναπαριστά γράμματα σε δυαδικό κώδικα» είναι η πιο κοινή. Ο Πίνακας 1 δείχνει την αντιστοιχία των δυαδικών κωδικών με γράμματα του λατινικού αλφαβήτου. Για λόγους συντομίας, η ακολουθία των μηδενικών και των μονάδων σε αυτόν τον πίνακα παρουσιάζεται σε δεκαδικούς και δεκαεξαδικούς κωδικούς.
Τραπέζι 1Πίνακας αναπαράστασης λατινικών γραμμάτων σε δυαδικό κώδικα (ASCII)
Δεκαδικός κωδικός | Hex κωδικός | Εμφάνιση χαρακτήρα | Εννοια |
---|---|---|---|
0 | 00 | NUL | |
1 | 01 | ☺ | (εμφάνιση λέξης ελέγχου) |
2 | 02 | ☻ | (Πρώτη λέξη που μεταδόθηκε) |
3 | 03 | ETX (Τελευταία λέξη μετάδοσης) | |
4 | 04 | ♦ | ΕΟΤ (τέλος μετάδοσης) |
5 | 05 | ♣ | ENQ (αρχικοποίηση) |
6 | 06 | ♠ | ACK (επιβεβαίωση) |
7 | 07 | BEL | |
8 | 08 | ◘ | BS |
9 | 09 | ○ | HT (οριζόντια καρτέλα |
10 | 0Α | ◙ | LF (τροφοδοσία γραμμής) |
11 | 0Β | ♂ | VT (κάθετη καρτέλα) |
12 | 0C | ♀ | FF (επόμενη σελίδα) |
13 | 0D | ♪ | CR (επιστροφή μεταφοράς) |
14 | 0Ε | ♫ | SO (διπλό πλάτος) |
15 | 0F | ☼ | SI (Συμπυκνωμένη σφράγιση) |
16 | 10 | DLE | |
17 | 11 | ◄ | DC1 |
18 | 12 | ↕ | DC2 (Ακύρωση συμπυκνωμένης εκτύπωσης) |
19 | 13 | ‼ | DC3 (έτοιμο) |
20 | 14 | ¶ | DC4 (ακύρωση διπλού πλάτους) |
21 | 15 | § | NAC (Μη επιβεβαίωση) |
22 | 16 | ▬ | ΣΥΝ |
23 | 17 | ↨ | ETB |
24 | 18 | ΜΠΟΡΩ | |
25 | 19 | ↓ | EM |
26 | 1Α | → | ΥΠΟ |
27 | 1Β | ← | ESC (Έλεγχος ακολουθίας έναρξης) |
28 | 1C | ∟ | FS |
29 | 1Δ | ↔ | Γ.Σ |
30 | 1Ε | ▲ | RS |
31 | 1ΣΤ | ▼ | ΜΑΣ |
32 | 20 | Χώρος | |
33 | 21 | ! | Θαυμαστικό |
34 | 22 | « | γωνιακό στήριγμα |
35 | 23 | # | Αριθμητικό σημάδι |
36 | 24 | $ | Σημάδι νομίσματος (δολάριο) |
37 | 25 | % | Σημάδι τοις εκατό |
38 | 26 | & | Ampersand |
39 | 27 | " | Απόστροφος |
40 | 28 | ( | ανοιγόμενο στήριγμα |
41 | 29 | ) | Κλείστε το στήριγμα |
42 | 2Α | * | Αστέρι |
43 | 2Β | + | σύμβολο συν |
44 | 2C | , | Κόμμα |
45 | 2D | - | Σημάδι μείον |
46 | 2Ε | . | Τελεία |
47 | 2ΣΤ | / | Κλασματική ράβδος |
48 | 30 | 0 | Αριθμητικό μηδέν |
49 | 31 | 1 | νούμερο ένα |
50 | 32 | 2 | Νούμερο δύο |
51 | 33 | 3 | νούμερο τρία |
52 | 34 | 4 | Νούμερο τέσσερα |
53 | 35 | 5 | Νούμερο πέντε |
54 | 36 | 6 | Νούμερο έξι |
55 | 37 | 7 | Νούμερο επτά |
56 | 38 | 8 | Νούμερο οκτώ |
57 | 39 | 9 | Αριθμός εννιά |
58 | 3Α | : | Ανω κάτω τελεία |
59 | 3Β | ; | Ανω τελεία |
60 | 3C | < | λιγότερο από σημάδι |
61 | 3D | = | σύμβολο ίσου |
62 | 3Ε | > | Υπογράψτε περισσότερα |
63 | 3F | ? | ερωτηματικό |
64 | 40 | @ | Επαγγελματικός όροφος |
65 | 41 | ΕΝΑ | Κεφάλαιο λατινικό γράμμα Α |
66 | 42 | σι | Λατινικό κεφαλαίο γράμμα Β |
67 | 43 | ντο | Λατινικό κεφαλαίο γράμμα C |
68 | 44 | ρε | Κεφάλαιο λατινικό γράμμα D |
69 | 45 | μι | Λατινικό κεφαλαίο γράμμα Ε |
70 | 46 | φά | Λατινικό κεφαλαίο γράμμα F |
71 | 47 | σολ | Λατινικό κεφαλαίο γράμμα G |
72 | 48 | H | Λατινικό κεφαλαίο γράμμα H |
73 | 49 | Εγώ | Κεφάλαιο λατινικό γράμμα I |
74 | 4Α | J | Λατινικό κεφαλαίο γράμμα J |
75 | 4Β | κ | Κεφάλαιο λατινικό γράμμα Κ |
76 | 4C | μεγάλο | Κεφάλαιο λατινικό γράμμα L |
77 | 4D | Μ | Κεφάλαιο λατινικό γράμμα |
78 | 4Ε | Ν | Κεφάλαιο λατινικό γράμμα N |
79 | 4F | Ο | Κεφάλαιο λατινικό γράμμα Ο |
80 | 50 | Π | Λατινικό κεφαλαίο γράμμα P |
81 | 51 | Q | Κεφάλαιο λατινικό γράμμα |
82 | 52 | R | Λατινικό κεφαλαίο γράμμα R |
83 | 53 | μικρό | Κεφάλαιο λατινικό γράμμα S |
84 | 54 | Τ | Λατινικό κεφαλαίο γράμμα Τ |
85 | 55 | U | Λατινικό κεφαλαίο γράμμα U |
86 | 56 | V | Κεφάλαιο λατινικό γράμμα V |
87 | 57 | W | Λατινικό κεφαλαίο γράμμα W |
88 | 58 | Χ | Κεφάλαιο λατινικό γράμμα Χ |
89 | 59 | Υ | Κεφάλαιο λατινικό γράμμα Y |
90 | 5Α | Ζ | Κεφάλαιο λατινικό γράμμα Z |
91 | 5Β | [ | Ανοιγόμενος τετράγωνος βραχίονας |
92 | 5C | \ | Πίσω κάθετο |
93 | 5Δ | ] | Τετράγωνο κλείσιμο |
94 | 5Ε | ^ | "Καπάκι" |
95 | 5 | _ | Υπογράμμιση χαρακτήρα |
96 | 60 | ` | Απόστροφος |
97 | 61 | ένα | Λατινικό πεζό γράμμα α |
98 | 62 | σι | Λατινικό πεζό γράμμα β |
99 | 63 | ντο | Λατινικό πεζό γράμμα γ |
100 | 64 | ρε | Λατινικό πεζό γράμμα δ |
101 | 65 | μι | Λατινικό πεζό γράμμα e |
102 | 66 | φά | Λατινικό πεζό γράμμα f |
103 | 67 | σολ | Λατινικό πεζό γράμμα g |
104 | 68 | η | Λατινικό πεζό γράμμα h |
105 | 69 | Εγώ | Λατινικό πεζό γράμμα i |
106 | 6Α | ι | Λατινικό πεζό γράμμα j |
107 | 6Β | κ | Λατινικό πεζό γράμμα k |
108 | 6C | μεγάλο | Λατινικό πεζό γράμμα l |
109 | 6D | Μ | Λατινικό πεζό γράμμα m |
110 | 6Ε | n | Λατινικό πεζό γράμμα n |
111 | 6F | ο | Λατινικό πεζό γράμμα ο |
112 | 70 | Π | Λατινικό πεζό γράμμα p |
113 | 71 | q | Λατινικό πεζό γράμμα q |
114 | 72 | r | Λατινικό πεζό γράμμα r |
115 | 73 | μικρό | Λατινικό πεζό γράμμα s |
116 | 74 | t | Λατινικό πεζό γράμμα t |
117 | 75 | u | Λατινικό πεζό γράμμα u |
118 | 76 | v | Λατινικό πεζό γράμμα v |
119 | 77 | w | Λατινικό πεζό γράμμα w |
120 | 78 | Χ | πεζό λατινικό γράμμα x |
121 | 79 | y | Λατινικό πεζό γράμμα y |
122 | 7Α | z | Λατινικό πεζό γράμμα z |
123 | 7Β | { | Ανοιχτό σγουρό στήριγμα |
124 | 7C | | | κάθετη μπάρα |
125 | 7Δ | } | Κλείστε το σγουρό στήριγμα |
126 | 7Ε | ~ | Πεσπιρώμενη |
127 | 7F | ⌂ |
Στην κλασική έκδοση του πίνακα χαρακτήρων ASCII, δεν υπάρχουν ρωσικά γράμματα και αποτελείται από 7 bit. Ωστόσο, αργότερα αυτός ο πίνακας επεκτάθηκε σε 8 bit και τα ρωσικά γράμματα σε δυαδικό κώδικα και ψευδογραφικά σύμβολα εμφανίστηκαν στις επάνω 128 γραμμές. Στη γενική περίπτωση, το δεύτερο μέρος περιέχει τα εθνικά αλφάβητα διαφορετικών χωρών και τα ρωσικά γράμματα, υπάρχει μόνο ένα από τα πιθανά σύνολα (855) μπορεί να υπάρχει ένας γαλλικός (863), ένας γερμανικός (1141) ή ένας ελληνικός (737) πίνακας. Ο Πίνακας 2 δείχνει ένα παράδειγμα αναπαράστασης ρωσικών γραμμάτων σε δυαδικό κώδικα.
Πίνακας 2.Πίνακας αναπαράστασης ρωσικών γραμμάτων σε δυαδικό κώδικα (ASCII)
Δεκαδικός κωδικός | Hex κωδικός | Εμφάνιση χαρακτήρα | Εννοια |
---|---|---|---|
128 | 80 | ΑΛΛΑ | Κεφάλαιο ρωσικό γράμμα Α |
129 | 81 | σι | Κεφάλαιο ρωσικό γράμμα Β |
130 | 82 | ΣΤΟ | Κεφάλαιο ρωσικό γράμμα V |
131 | 83 | σολ | Κεφάλαιο ρωσικό γράμμα G |
132 | 84 | ρε | Κεφάλαιο ρωσικό γράμμα D |
133 | 85 | μι | Κεφάλαιο ρωσικό γράμμα Ε |
134 | 86 | ΚΑΙ | Κεφάλαιο ρωσικό γράμμα Zh |
135 | 87 | W | Κεφάλαιο ρωσικό γράμμα Z |
136 | 88 | Και | Κεφάλαιο ρωσικό γράμμα I |
137 | 89 | Υ | Κεφάλαιο ρωσικό γράμμα Y |
138 | 8Α | Προς την | Κεφάλαιο ρωσικό γράμμα Κ |
139 | 8Β | μεγάλο | Κεφάλαιο ρωσικό γράμμα L |
140 | 8C | Μ | Κεφάλαιο ρωσικό γράμμα M |
141 | 8D | H | Κεφάλαιο ρωσικό γράμμα N |
142 | 8Ε | Ο | Κεφάλαιο ρωσικό γράμμα Ο |
143 | 8F | Π | Κεφάλαιο ρωσικό γράμμα P |
144 | 90 | R | Κεφάλαιο ρωσικό γράμμα R |
145 | 91 | ΑΠΟ | Κεφάλαιο ρωσικό γράμμα C |
146 | 92 | Τ | Κεφάλαιο ρωσικό γράμμα T |
147 | 93 | Στο | Κεφάλαιο ρωσικό γράμμα U |
148 | 94 | φά | Κεφάλαιο ρωσικό γράμμα F |
149 | 95 | Χ | Κεφάλαιο ρωσικό γράμμα Χ |
150 | 96 | ντο | Κεφάλαιο ρωσικό γράμμα C |
151 | 97 | H | Κεφάλαιο ρωσικό γράμμα Ch |
152 | 98 | W | Κεφάλαιο ρωσικό γράμμα Sh |
153 | 99 | SCH | Κεφάλαιο ρωσικό γράμμα Ш |
154 | 9Α | Kommersant | Κεφάλαιο ρωσικό γράμμα Ъ |
155 | 9Β | μικρό | Κεφάλαιο ρωσικό γράμμα Y |
156 | 9C | σι | Κεφάλαιο ρωσικό γράμμα β |
157 | 9D | μι | Κεφάλαιο ρωσικό γράμμα Ε |
158 | 9Ε | YU | Κεφάλαιο ρωσικό γράμμα Yu |
159 | 9F | Εγώ | Κεφάλαιο ρωσικό γράμμα Ya |
160 | Α0 | ένα | Μικρό ρωσικό γράμμα α |
161 | Α'1 | σι | Ρωσικό πεζό γράμμα β |
162 | Α2 | σε | Ρωσικό γράμμα πεζό v |
163 | Α3 | σολ | Ρωσικό πεζό γράμμα ζ |
164 | Α4 | ρε | Ρωσικά πεζά γράμματα δ |
165 | Α5 | μι | Ρωσικό πεζό γράμμα e |
166 | Α6 | και | Ρωσικό πεζό γράμμα zh |
167 | Α7 | η | Μικρό ρωσικό γράμμα z |
168 | Α8 | και | Ρωσικά πεζά γράμματα και |
169 | Α9 | ου | Ρωσικό πεζό γράμμα y |
170 | AA | προς την | Μικρό ρωσικό γράμμα k |
171 | ΑΒ | μεγάλο | Ρωσικό πεζό γράμμα l |
172 | ΜΕΤΑ ΧΡΙΣΤΟΝ | Μ | Μικρό ρωσικό γράμμα m |
173 | ΕΝΑ Δ | n | Ρωσικό πεζό γράμμα n |
174 | ΑΕ | σχετικά με | Ρωσικό πεζό γράμμα o |
175 | AF | Π | Ρωσικά πεζά γράμματα σελ |
176 | Β0 | ░ | |
177 | Β1 | ▒ | |
178 | Β2 | ▓ | |
179 | Β3 | │ | Ψευδοσύμβολο |
180 | Β4 | ┤ | Ψευδοσύμβολο |
181 | Β5 | ╡ | Ψευδοσύμβολο |
182 | Β6 | ╢ | Ψευδοσύμβολο |
183 | Β7 | ╖ | Ψευδοσύμβολο |
184 | Β8 | ╕ | Ψευδοσύμβολο |
185 | Β9 | ╣ | Ψευδοσύμβολο |
186 | ΒΑ | ║ | Ψευδοσύμβολο |
187 | ΒΒ | ╗ | Ψευδοσύμβολο |
188 | προ ΧΡΙΣΤΟΥ | ╝ | Ψευδοσύμβολο |
189 | BD | ╜ | Ψευδοσύμβολο |
190 | ΕΙΝΑΙ | ╛ | Ψευδοσύμβολο |
191 | bf | ┐ | Ψευδοσύμβολο |
192 | C0 | └ | Ψευδοσύμβολο |
193 | Γ1 | ┴ | Ψευδοσύμβολο |
194 | Γ2 | ┬ | Ψευδοσύμβολο |
195 | C3 | ├ | Ψευδοσύμβολο |
196 | Γ4 | ─ | Ψευδοσύμβολο |
197 | Γ5 | ┼ | Ψευδοσύμβολο |
198 | Γ6 | ╞ | Ψευδοσύμβολο |
199 | Γ7 | ╟ | Ψευδοσύμβολο |
200 | Γ8 | ╚ | Ψευδοσύμβολο |
201 | C9 | ╔ | Ψευδοσύμβολο |
202 | CA | ╩ | Ψευδοσύμβολο |
203 | CB | ╦ | Ψευδοσύμβολο |
204 | CC | ╠ | Ψευδοσύμβολο |
205 | CD | ═ | Ψευδοσύμβολο |
206 | CE | ╬ | Ψευδοσύμβολο |
207 | CF | ╧ | Ψευδοσύμβολο |
208 | D0 | ╨ | Ψευδοσύμβολο |
209 | Δ1 | ╤ | Ψευδοσύμβολο |
210 | Δ2 | ╥ | Ψευδοσύμβολο |
211 | D3 | ╙ | Ψευδοσύμβολο |
212 | Δ4 | ╘ | Ψευδοσύμβολο |
213 | D5 | ╒ | Ψευδοσύμβολο |
214 | D6 | ╓ | Ψευδοσύμβολο |
215 | Δ7 | ╫ | Ψευδοσύμβολο |
216 | D8 | ╪ | Ψευδοσύμβολο |
217 | D9 | ┘ | Ψευδοσύμβολο |
218 | DA | ┌ | Ψευδοσύμβολο |
219 | D.B. | █ | |
220 | DC | ▄ | |
221 | DD | ▌ | |
222 | DE | ▐ | |
223 | D.F. | ▀ | |
224 | Ε0 | R | Ρωσικά πεζά γράμματα σελ |
225 | Ε1 | Με | Ρωσικό πεζό γράμμα γ |
226 | Ε2 | t | Ρωσικό πεζό γράμμα t |
227 | Ε3 | στο | Ρωσικό πεζό γράμμα u |
228 | Ε4 | φά | Ρωσικό πεζό γράμμα f |
229 | Ε5 | Χ | Μικρό ρωσικό γράμμα x |
230 | Ε6 | ντο | Ρωσικό πεζό γράμμα γ |
231 | Ε7 | η | Ρωσικό πεζό γράμμα h |
232 | Ε8 | w | Ρωσικό πεζό γράμμα sh |
233 | Ε9 | sch | Ρωσικό πεζό γράμμα u |
234 | EA | σι | Ρωσικά πεζά γράμματα ъ |
235 | EB | μικρό | Ρωσικό πεζό γράμμα y |
236 | ΕΕ | σι | Ρωσικό πεζό γράμμα ь |
237 | ED | ε | Ρωσικό πεζό γράμμα e |
238 | EE | Yu | Ρωσικό πεζό γράμμα u |
239 | ΕΦ | Εγώ | Ρωσικό πεζό γράμμα i |
240 | F0 | Yo | Κεφάλαιο ρωσικό γράμμα Yo |
241 | F1 | yo | Ρωσικό πεζό γράμμα ё |
242 | F2 | Є | |
243 | F3 | є | |
244 | F4 | Ї | |
245 | F5 | Ї | |
246 | F6 | Ў | |
247 | F7 | ў | |
248 | F8 | ° | σημάδι βαθμού |
249 | F9 | ∙ | Σήμα πολλαπλασιασμού (κουκκίδα) |
250 | ΦΑ | · | |
251 | √ | Ριζοσπάστης (παίρνοντας τη ρίζα) | |
252 | FC | № | Αριθμητικό σημάδι |
253 | FD | ¤ | Σημάδι νομίσματος (ρούβλι) |
254 | F.E. | ■ | |
255 | FF |
Κατά τη σύνταξη κειμένων, εκτός από τους δυαδικούς κωδικούς που εμφανίζουν απευθείας γράμματα, χρησιμοποιούνται κωδικοί που υποδεικνύουν τη μετάβαση σε μια νέα γραμμή και την επιστροφή του δρομέα (επιστροφή μεταφοράς) στη μηδενική θέση της γραμμής. Αυτοί οι χαρακτήρες χρησιμοποιούνται συνήθως μαζί. Οι δυαδικοί κωδικοί τους αντιστοιχούν σε δεκαδικούς αριθμούς - 10 (0A) και 13 (0D). Για παράδειγμα, παρακάτω είναι ένα τμήμα του κειμένου αυτής της σελίδας (αποτύπωση μνήμης). Αυτή η ενότητα περιέχει την πρώτη παράγραφο. Η ακόλουθη μορφή χρησιμοποιείται για την εμφάνιση πληροφοριών σε μια ένδειξη μνήμης:
- η πρώτη στήλη περιέχει τη δυαδική διεύθυνση του πρώτου byte της συμβολοσειράς
- Οι επόμενες δεκαέξι στήλες περιέχουν τα byte που περιέχονται στο αρχείο κειμένου. Για πιο βολικό προσδιορισμό του αριθμού byte, σχεδιάζεται μια κάθετη γραμμή μετά την όγδοη στήλη. Τα byte, για συντομία, αντιπροσωπεύονται σε δεκαεξαδικό κώδικα.
- στην τελευταία στήλη, αυτά τα ίδια byte αντιπροσωπεύονται ως εμφανιζόμενοι αλφαβητικοί χαρακτήρες
Στο παραπάνω παράδειγμα, μπορείτε να δείτε ότι η πρώτη γραμμή κειμένου είναι 80 byte. Το πρώτο byte 82 αντιστοιχεί στο γράμμα "B". Το δεύτερο byte E1 αντιστοιχεί στο γράμμα "c". Το τρίτο byte A5 αντιστοιχεί στο γράμμα "e". Το επόμενο byte 20 αντιπροσωπεύει το κενό διάστημα μεταξύ των λέξεων (κενό) " ". Τα byte 81 και 82 περιέχουν χαρακτήρες επιστροφής μεταφοράς και τροφοδοσίας γραμμής 0D 0A. Βρίσκουμε αυτούς τους χαρακτήρες στη δυαδική διεύθυνση 00000050: Η επόμενη γραμμή του κειμένου πηγής δεν είναι πολλαπλάσιο του 16 (το μήκος της είναι 76 γράμματα), επομένως για να βρείτε το τέλος της, πρέπει πρώτα να βρείτε τη γραμμή 000000E0: και να μετρήσετε εννέα στήλες από αυτό. Τα byte επιστροφής μεταφοράς και τροφοδοσίας γραμμής 0D 0A γράφονται ξανά εκεί. Το υπόλοιπο κείμενο αναλύεται με τον ίδιο ακριβώς τρόπο.
Ημερομηνία τελευταίας ενημέρωσης αρχείου 04.12.2018
Βιβλιογραφία:
Μαζί με το άρθρο «Συγγραφή κειμένων σε δυαδικό κώδικα» διαβάζουν:
Αναπαράσταση δυαδικών αριθμών στη μνήμη υπολογιστή ή μικροελεγκτή
http://website/proc/IntCod.php
Μερικές φορές είναι βολικό να αποθηκεύονται αριθμοί στη μνήμη του επεξεργαστή σε δεκαδική μορφή.
http://website/proc/DecCod.php
Τυπικές μορφές κινητής υποδιαστολής για υπολογιστές και μικροελεγκτές
http://website/proc/float/
Επί του παρόντος, τόσο τα συστήματα αριθμών θέσης όσο και τα μη θέσεις χρησιμοποιούνται ευρέως τόσο στην τεχνολογία όσο και στην καθημερινή ζωή.
.php
Δεδομένου ότι είναι το πιο απλό και πληροί τις απαιτήσεις:
- Όσο λιγότερες τιμές υπάρχουν στο σύστημα, τόσο πιο εύκολο είναι να δημιουργηθούν μεμονωμένα στοιχεία που να λειτουργούν με αυτές τις τιμές. Συγκεκριμένα, δύο ψηφία του δυαδικού συστήματος αριθμών μπορούν εύκολα να αναπαρασταθούν από πολλά φυσικά φαινόμενα: υπάρχει ρεύμα - δεν υπάρχει ρεύμα, η επαγωγή του μαγνητικού πεδίου είναι μεγαλύτερη από την τιμή κατωφλίου ή όχι, κ.λπ.
- Όσο μικρότερος είναι ο αριθμός των καταστάσεων για ένα στοιχείο, τόσο μεγαλύτερη είναι η ασυλία θορύβου και τόσο πιο γρήγορα μπορεί να λειτουργήσει. Για παράδειγμα, για την κωδικοποίηση τριών καταστάσεων μέσω της τιμής της επαγωγής του μαγνητικού πεδίου, θα χρειαστεί να εισαγάγετε δύο τιμές κατωφλίου, οι οποίες δεν θα συμβάλλουν στην ασυλία θορύβου και την αξιοπιστία της αποθήκευσης πληροφοριών.
- Η δυαδική αριθμητική είναι αρκετά απλή. Απλοί είναι οι πίνακες πρόσθεσης και πολλαπλασιασμού - οι βασικές πράξεις στους αριθμούς.
- Είναι δυνατή η χρήση της συσκευής της άλγεβρας της λογικής για την εκτέλεση δυαδικών πράξεων σε αριθμούς.
Συνδέσεις
- Ηλεκτρονική αριθμομηχανή για τη μετατροπή αριθμών από ένα σύστημα αριθμών σε άλλο
Ίδρυμα Wikimedia. 2010 .
Δείτε τι είναι ο "Δυαδικός Κώδικας" σε άλλα λεξικά:
2 Κωδικός Bittal του γκρι 00 01 11 10 3 bit κωδικός γκρι 000 000 001 011 010 110 111 101 100 4 bit Κωδικός 0000 00 0001 0011 0010 0110 01111 0100 11001111111110 1010 1011 1000 Γκρι προσαρμοσμένος κώδικας, στον οποίο είναι δύο γειτονικές τιμές στις οποίες υπάρχουν δύο γειτονικές τιμές … … Wikipedia
Ο κωδικός σημείου σήματος (Αγγλικός κωδικός σημείου σήματος (SPC)) του συστήματος σηματοδότησης 7 (SS7, SS 7) είναι μια μοναδική (στο οικιακό δίκτυο) διεύθυνση κόμβου που χρησιμοποιείται στο τρίτο επίπεδο MTP (δρομολόγηση) στα δίκτυα SS 7 τηλεπικοινωνιών σε ταυτοποίηση ... Wikipedia
Στα μαθηματικά, ατετράγωνος αριθμός είναι ένας αριθμός που δεν διαιρείται με κανένα τετράγωνο εκτός από το 1. Για παράδειγμα, το 10 είναι ατετράγωνο, αλλά το 18 δεν είναι, αφού το 18 διαιρείται με το 9 = 32. Η αρχή της ακολουθίας των ατετράγωνων αριθμών είναι : 1, 2, 3, 5, 6, 7, ... ... Wikipedia
Θα θέλατε να βελτιώσετε αυτό το άρθρο;: Wikify το άρθρο. Επεξεργαστείτε ξανά το σχέδιο σύμφωνα με τους κανόνες για τη σύνταξη άρθρων. Διορθώστε το άρθρο σύμφωνα με τους στυλιστικούς κανόνες της Wikipedia ... Wikipedia
Αυτός ο όρος έχει άλλες έννοιες, βλέπε Python (αποσαφήνιση). Μάθημα γλώσσας Python: mu ... Wikipedia
Με τη στενή έννοια της λέξης, προς το παρόν, η φράση νοείται ως "Επίθεση στο σύστημα ασφαλείας" και τείνει μάλλον στην έννοια του ακόλουθου όρου επίθεση Cracker. Αυτό οφειλόταν σε διαστρέβλωση της σημασίας της λέξης «χάκερ». Χάκερ ... ... Wikipedia
Αποφάσισα να φτιάξω ένα τέτοιο εργαλείο όπως η μετατροπή κειμένου σε δυαδικό κώδικα και αντίστροφα, υπάρχουν τέτοιες υπηρεσίες, αλλά συνήθως λειτουργούν με λατινικά, αλλά το δικό μου Ο μεταφραστής λειτουργεί με κωδικοποίηση unicode UTF-8, το οποίο κωδικοποιεί κυριλλικούς χαρακτήρες σε δύο byte. Είναι αδύνατο να μεταφραστούν κινεζικοί χαρακτήρες, αλλά θα διορθώσω αυτήν την ατυχή παρεξήγηση.
Για να μετατρέψετε κείμενο σε δυαδική αναπαράστασηεισάγετε το κείμενο στο αριστερό πλαίσιο και πατήστε TEXT->BIN στο δεξιό πλαίσιο, θα εμφανιστεί η δυαδική αναπαράστασή του.
Για να μετατρέψετε δυαδικό κώδικα σε κείμενοεισάγετε τον κωδικό στο δεξί παράθυρο και πατήστε BIN->TEXT στο αριστερό παράθυρο θα εμφανιστεί η συμβολική αναπαράστασή του.
Αν μετατροπή δυαδικού κώδικα σε κείμενοή το αντίστροφο δεν λειτούργησε - ελέγξτε την ορθότητα των δεδομένων σας!
Εκσυγχρονίζω!
Ο μετασχηματισμός κειμένου αντίστροφης προβολής είναι πλέον διαθέσιμος:
σε κανονική εμφάνιση. Για να το κάνετε αυτό, επιλέξτε το πλαίσιο: "Αντικατάσταση 0 με κενά και 1 με σύμβολο κράτησης θέσης █". Στη συνέχεια, επικολλήστε το κείμενο στο δεξιό πλαίσιο: "Κείμενο σε δυαδική αναπαράσταση" και πατήστε το κουμπί κάτω από αυτό "BIN->TEXT".
Όταν αντιγράφετε τέτοια κείμενα, χρειάζεται να είστε προσεκτικοί γιατί. μπορείτε εύκολα να χάσετε κενά στην αρχή ή στο τέλος. Για παράδειγμα, η παραπάνω γραμμή μοιάζει με:
██ █ █ ███████ █ ██ ██ █ █ ███ ██ █ █ ██ █ ██ █ █ ██ █ ███ █ ██ █ █ ██ █ █ ███ ██ █ █ ███ ██ █ ██
και σε κόκκινο φόντο:
██ █ █ ███████ █ ██ ██ █ █ ███ ██ █ █ ██ █ ██ █ █ ██ █ ███ █ ██ █ █ ██ █ █ ███ ██ █ █ ███ ██ █ ██
δείτε πόσα κενά στο τέλος μπορούν να χαθούν;
Οι υπολογιστές δεν καταλαβαίνουν τις λέξεις και τους αριθμούς όπως οι άνθρωποι. Το σύγχρονο λογισμικό επιτρέπει στον τελικό χρήστη να το αγνοήσει, αλλά στα χαμηλότερα επίπεδα ο υπολογιστής σας λειτουργεί με ένα δυαδικό ηλεκτρικό σήμα που έχει μόνο δύο πολιτείες: υπάρχει ρεύμα ή δεν υπάρχει ρεύμα. Για να «καταλάβετε» σύνθετα δεδομένα, ο υπολογιστής σας πρέπει να τα κωδικοποιήσει σε δυαδικό.
Το δυαδικό σύστημα βασίζεται σε δύο ψηφία, το 1 και το 0, που αντιστοιχούν σε καταστάσεις ενεργοποίησης και απενεργοποίησης που μπορεί να καταλάβει ο υπολογιστής σας. Μάλλον γνωρίζετε το δεκαδικό σύστημα. Χρησιμοποιεί δέκα ψηφία, από το 0 έως το 9, και στη συνέχεια προχωρά στην επόμενη σειρά για να σχηματίσει διψήφιους αριθμούς, με το ψηφίο από κάθε σειρά δέκα φορές το προηγούμενο. Το δυαδικό σύστημα είναι παρόμοιο, με κάθε ψηφίο να είναι διπλάσιο από το προηγούμενο.
Καταμέτρηση σε δυαδικό
Στο δυαδικό, το πρώτο ψηφίο είναι ισοδύναμο με 1 σε δεκαδικό. Το δεύτερο ψηφίο είναι 2, το τρίτο είναι 4, το τέταρτο είναι 8 και ούτω καθεξής—διπλασιάζοντας κάθε φορά. Η προσθήκη όλων αυτών των τιμών θα σας δώσει έναν αριθμό σε δεκαδική μορφή.
1111 (δυαδικό) = 8 + 4 + 2 + 1 = 15 (δεκαδικός)
Η λογιστική για το 0 μας δίνει 16 πιθανές τιμές για τέσσερα δυαδικά bit. Μετακινήστε 8 bit και λαμβάνετε 256 πιθανές τιμές. Αυτό καταλαμβάνει πολύ περισσότερο χώρο για να αναπαραστήσουμε, καθώς τα τέσσερα ψηφία σε δεκαδικό μας δίνουν 10.000 πιθανές τιμές. Φυσικά, ο δυαδικός κώδικας καταλαμβάνει περισσότερο χώρο, αλλά οι υπολογιστές κατανοούν τα δυαδικά αρχεία πολύ καλύτερα από το δεκαδικό σύστημα. Και για ορισμένα πράγματα, όπως η λογική επεξεργασία, το δυαδικό είναι καλύτερο από το δεκαδικό.
Πρέπει να πούμε ότι υπάρχει ένα άλλο βασικό σύστημα που χρησιμοποιείται στον προγραμματισμό: δεκαεξαδικό. Αν και οι υπολογιστές δεν λειτουργούν σε δεκαεξαδικό, οι προγραμματιστές το χρησιμοποιούν για να αναπαραστήσουν δυαδικές διευθύνσεις σε μορφή αναγνώσιμη από τον άνθρωπο όταν γράφουν κώδικα. Αυτό συμβαίνει επειδή δύο ψηφία ενός δεκαεξαδικού αριθμού μπορούν να αντιπροσωπεύουν ένα ολόκληρο byte, δηλαδή αντικαθιστούν οκτώ ψηφία σε δυαδικό. Το δεκαεξαδικό σύστημα χρησιμοποιεί τους αριθμούς 0-9, καθώς και τα γράμματα A έως F, για να πάρει επιπλέον έξι ψηφία.
Γιατί οι υπολογιστές χρησιμοποιούν δυαδικά αρχεία
Σύντομη απάντηση: το υλικό και οι νόμοι της φυσικής. Κάθε χαρακτήρας στον υπολογιστή σας είναι ένα ηλεκτρικό σήμα, και στις πρώτες μέρες των υπολογιστών, η μέτρηση των ηλεκτρικών σημάτων ήταν πολύ πιο δύσκολη. Ήταν πιο λογικό να γίνει διάκριση μεταξύ μόνο της κατάστασης "on", που αντιπροσωπεύεται από ένα αρνητικό φορτίο, και της κατάστασης "off", που αντιπροσωπεύεται από ένα θετικό φορτίο.
Για όσους δεν ξέρουν γιατί το "off" αντιπροσωπεύεται από ένα θετικό φορτίο, αυτό συμβαίνει επειδή τα ηλεκτρόνια έχουν αρνητικό φορτίο και περισσότερα ηλεκτρόνια σημαίνει περισσότερο ρεύμα με αρνητικό φορτίο.
Έτσι χρησιμοποιήθηκαν πρώιμοι υπολογιστές μεγέθους δωματίου δυαδικάγια να κατασκευάσουν τα συστήματά τους, και παρόλο που χρησιμοποιούσαν παλαιότερο, πιο ογκώδες εξοπλισμό, λειτουργούσαν με τις ίδιες θεμελιώδεις αρχές. Οι σύγχρονοι υπολογιστές χρησιμοποιούν αυτό που λέγεται τρανζίστορ για να εκτελέσετε υπολογισμούς με δυαδικό κώδικα.
Εδώ είναι ένα σχηματικό σχήμα ενός τυπικού τρανζίστορ:
Βασικά, επιτρέπει στο ρεύμα να ρέει από την πηγή στην αποχέτευση εάν υπάρχει ρεύμα στην πύλη. Αυτό σχηματίζει ένα δυαδικό κλειδί. Οι κατασκευαστές μπορούν να φτιάξουν αυτά τα τρανζίστορ τόσο μικρά όσο 5 νανόμετρα ή τόσο μικρά όσο δύο κλώνοι DNA. Έτσι λειτουργούν οι σύγχρονοι επεξεργαστές, και ακόμη και αυτοί μπορεί να υποφέρουν από προβλήματα στη διάκριση μεταξύ των καταστάσεων ενεργοποίησης και απενεργοποίησης (αν και αυτό οφείλεται στο μη ρεαλιστικό μοριακό τους μέγεθος, με την επιφύλαξη παραξενιές της κβαντικής μηχανικής).
Γιατί μόνο δυαδικό σύστημα
Ίσως λοιπόν να σκέφτεστε, «Γιατί μόνο 0 και 1; Γιατί να μην προσθέσετε έναν άλλο αριθμό; Αν και αυτό οφείλεται εν μέρει στις παραδόσεις της δημιουργίας υπολογιστών, την ίδια στιγμή, η προσθήκη ενός ακόμη ψηφίου θα σήμαινε την ανάγκη να επισημανθεί μια ακόμη κατάσταση του ρεύματος, και όχι απλώς "off" ή "on".
Το πρόβλημα εδώ είναι ότι αν θέλετε να χρησιμοποιήσετε πολλαπλά επίπεδα τάσης, χρειάζεστε έναν τρόπο να κάνετε εύκολα υπολογισμούς με αυτά και το σύγχρονο υλικό που μπορεί να το κάνει αυτό δεν είναι βιώσιμο ως αντικατάσταση δυαδικών υπολογισμών. Για παράδειγμα, υπάρχει ένα λεγόμενο τριπλός υπολογιστής, αναπτύχθηκε τη δεκαετία του 1950, αλλά η ανάπτυξη σταμάτησε εκεί. Τριαδική λογική πιο αποτελεσματικό από το δυαδικό, αλλά δεν υπάρχει ακόμη αποτελεσματική αντικατάσταση για το δυαδικό τρανζίστορ ή τουλάχιστον κανένα τρανζίστορ τόσο μικροσκοπικό όσο το δυαδικό.
Ο λόγος που δεν μπορούμε να χρησιμοποιήσουμε τριμερή λογική οφείλεται στο πώς συνδέονται τα τρανζίστορ σε έναν υπολογιστή και πώς χρησιμοποιούνται για μαθηματικούς υπολογισμούς. Το τρανζίστορ λαμβάνει πληροφορίες για δύο εισόδους, εκτελεί μια λειτουργία και επιστρέφει το αποτέλεσμα σε μία έξοδο.
Έτσι, τα δυαδικά μαθηματικά είναι ευκολότερα για έναν υπολογιστή από οτιδήποτε άλλο. Η δυαδική λογική μετατρέπεται εύκολα σε δυαδικά συστήματα, με το True και το False να αντιστοιχούν στις καταστάσεις On και Off.
Ένας δυαδικός πίνακας αλήθειας που λειτουργεί με δυαδική λογική θα έχει τέσσερις πιθανές εξόδους για κάθε θεμελιώδη πράξη. Όμως, εφόσον οι τριπλές πύλες χρησιμοποιούν τρεις εισόδους, ο πίνακας τριπλής αλήθειας θα έχει 9 ή περισσότερες. Ενώ ένα δυαδικό σύστημα έχει 16 πιθανούς τελεστές (2^2^2), ένα τριμερές σύστημα θα είχε 19683 (3^3^3). Η κλιμάκωση γίνεται πρόβλημα γιατί αν και η τριάδα είναι πιο αποτελεσματική, είναι επίσης εκθετικά πιο περίπλοκη.
Ποιός ξέρει?Στο μέλλον, μπορεί κάλλιστα να δούμε τριμερείς υπολογιστές καθώς η δυαδική λογική έχει αντιμετωπίσει προβλήματα σμίκρυνσης. Προς το παρόν, ο κόσμος θα συνεχίσει να λειτουργεί σε δυαδική λειτουργία.
Χωρητικότητα δυαδικού κώδικα, Μετατροπή πληροφοριών από συνεχή σε διακριτή μορφή, Καθολικότητα δυαδικής κωδικοποίησης, Ενιαίοι και μη ομοιόμορφοι κωδικοί, Πληροφορική Βαθμός 7 Bosov, Πληροφορική Βαθμός 7
1.5.1. Μετατροπή πληροφοριών από συνεχή σε διακριτή μορφή
Για να λύσει τα προβλήματά του, ένα άτομο πρέπει συχνά να μετατρέψει τις διαθέσιμες πληροφορίες από μια μορφή αναπαράστασης σε άλλη. Για παράδειγμα, όταν διαβάζετε δυνατά, οι πληροφορίες μετατρέπονται από διακριτή μορφή (κείμενο) σε συνεχή (ήχος). Κατά τη διάρκεια μιας υπαγόρευσης σε ένα μάθημα της ρωσικής γλώσσας, αντίθετα, οι πληροφορίες μετατρέπονται από μια συνεχή μορφή (η φωνή του δασκάλου) σε μια διακριτή (σημειώσεις των μαθητών).
Οι πληροφορίες που παρουσιάζονται σε διακριτή μορφή είναι πολύ πιο εύκολο να μεταφερθούν, να αποθηκευτούν ή να επεξεργαστούν αυτόματα. Ως εκ τούτου, στην τεχνολογία των υπολογιστών, δίνεται μεγάλη προσοχή στις μεθόδους μετατροπής πληροφοριών από μια συνεχή μορφή σε μια διακριτή.
Η διακριτοποίηση πληροφοριών είναι η διαδικασία μετατροπής πληροφοριών από μια συνεχή μορφή αναπαράστασης σε μια διακριτή.
Εξετάστε την ουσία της διαδικασίας διακριτοποίησης των πληροφοριών σε ένα παράδειγμα.
Οι μετεωρολογικοί σταθμοί διαθέτουν όργανα αυτοκαταγραφής για συνεχή καταγραφή της ατμοσφαιρικής πίεσης. Το αποτέλεσμα της δουλειάς τους είναι βαρογράμματα - καμπύλες που δείχνουν πώς η πίεση έχει αλλάξει σε μεγάλες χρονικές περιόδους. Μία από αυτές τις καμπύλες που χαράσσονται από το όργανο κατά τη διάρκεια επτά ωρών παρατηρήσεων φαίνεται στο Σχ. 1.9.
Με βάση τις πληροφορίες που ελήφθησαν, είναι δυνατό να κατασκευαστεί ένας πίνακας που περιέχει τις ενδείξεις του οργάνου στην αρχή των μετρήσεων και στο τέλος κάθε ώρας παρατηρήσεων (Εικ. 1.10).
Ο πίνακας που προκύπτει δεν παρέχει πλήρη εικόνα για το πώς άλλαξε η πίεση κατά τη διάρκεια της περιόδου παρατήρησης: για παράδειγμα, η υψηλότερη τιμή πίεσης που σημειώθηκε κατά την τέταρτη ώρα παρατήρησης δεν υποδεικνύεται. Αλλά αν εισάγετε στον πίνακα τις τιμές πίεσης που παρατηρούνται κάθε μισή ώρα ή 15 λεπτά, τότε ο νέος πίνακας θα δώσει μια πιο ολοκληρωμένη εικόνα για το πώς έχει αλλάξει η πίεση.
Έτσι, τις πληροφορίες που παρουσιάζονται σε συνεχή μορφή (βαρόγραμμα, καμπύλη), με κάποια απώλεια ακρίβειας, τις μετατρέψαμε σε διακριτή μορφή (πίνακας).
Στο μέλλον, θα εξοικειωθείτε με τις μεθόδους διακριτής παρουσίασης ηχητικών και γραφικών πληροφοριών.
Οι αλυσίδες τριών δυαδικών χαρακτήρων λαμβάνονται με τη συμπλήρωση διψήφιων δυαδικών κωδικών στα δεξιά με έναν χαρακτήρα 0 ή 1. Ως αποτέλεσμα, οι συνδυασμοί κωδικών τριών δυαδικών χαρακτήρων είναι 8 - διπλάσιοι από δύο δυαδικούς χαρακτήρες:
Αντίστοιχα, ένα δυαδικό τεσσάρων bit σάς επιτρέπει να λαμβάνετε 16 συνδυασμούς κωδικών, ένα πέντε bit - 32, ένα έξι bit - 64, κ.λπ. Το μήκος της δυαδικής αλυσίδας - ο αριθμός των χαρακτήρων στον δυαδικό κώδικα - είναι ονομάζεται το βάθος bit του δυαδικού κώδικα.
Σημειώστε ότι:
4 = 2 * 2,
8 = 2 * 2 * 2,
16 = 2 * 2 * 2 * 2,
32 = 2 * 2 * 2 * 2 * 2 κ.λπ.
Εδώ, ο αριθμός των συνδυασμών κώδικα είναι το γινόμενο ενός ορισμένου αριθμού πανομοιότυπων παραγόντων ίσου με το βάθος bit του δυαδικού κώδικα.
Εάν ο αριθμός των συνδυασμών κωδικών συμβολίζεται με το γράμμα N και το βάθος bit του δυαδικού κώδικα συμβολίζεται με το γράμμα i, τότε το μοτίβο που αποκαλύπτεται σε γενική μορφή θα γραφτεί ως εξής:
N = 2 * 2 * ... * 2.
i παράγοντες
Στα μαθηματικά, τέτοια προϊόντα γράφονται ως:
Ν = 2i.
Εγγραφή 2 Διαβάζω ως εξής: "2 στην i-η δύναμη."
Μια εργασία. Ο αρχηγός της φυλής Multi έδωσε εντολή στον υπουργό του να αναπτύξει ένα δυαδικό και να μεταφράσει σε αυτό όλες τις σημαντικές πληροφορίες. Τι βάθος bit θα απαιτούνταν εάν το αλφάβητο που χρησιμοποιείται από τη φυλή Multi έχει 16 χαρακτήρες; Καταγράψτε όλους τους συνδυασμούς κωδικών.
Λύση. Δεδομένου ότι το αλφάβητο της φυλής Multi αποτελείται από 16 χαρακτήρες, τότε χρειάζονται 16 συνδυασμούς κωδικών.Σε αυτήν την περίπτωση, το μήκος (χωρητικότητα ψηφίου) του δυαδικού κωδικού καθορίζεται από την αναλογία: 16 = 2 i . Άρα i = 4.
Για να γράψουμε όλους τους συνδυασμούς κωδικών των τεσσάρων 0 και 1, χρησιμοποιούμε το διάγραμμα στο Σχ. 1.13: 0000, 0001, 0010, 0011, 0100, 0101, 0110,0111,1000,1001,1010,1011,1100,1101,1110,1111.
1.5.3. Ευελιξία της δυαδικής κωδικοποίησης
Στην αρχή αυτής της ενότητας, μάθατε ότι, όταν αναπαρίσταται σε συνεχή μορφή, μπορεί να εκφραστεί χρησιμοποιώντας τα σύμβολα κάποιας φυσικής ή επίσημης γλώσσας. Με τη σειρά τους, αυθαίρετοι χαρακτήρες αλφαβήτου μπορούν να μετατραπούν σε δυαδικό. Έτσι, με τη βοήθεια ενός δυαδικού κώδικα, οποιοσδήποτε μπορεί να αναπαρασταθεί σε φυσικές και τυπικές γλώσσες, καθώς και σε εικόνες και ήχους (Εικ. 1.14). Αυτό σημαίνει την καθολικότητα της δυαδικής κωδικοποίησης.
Οι δυαδικοί κωδικοί χρησιμοποιούνται ευρέως στην τεχνολογία των υπολογιστών, απαιτώντας μόνο δύο καταστάσεις του ηλεκτρονικού κυκλώματος - "on" (που αντιστοιχεί στο ψηφίο 1) και "off" (αντιστοιχεί στο ψηφίο 0).
Η απλότητα της τεχνικής υλοποίησης είναι το κύριο πλεονέκτημα της δυαδικής κωδικοποίησης. Το μειονέκτημα της δυαδικής κωδικοποίησης είναι το μεγάλο μήκος του κώδικα που προκύπτει.
1.5.4. Ενιαίοι και ανομοιόμορφοι κωδικοί
Διάκριση ενιαίων και ανομοιόμορφων κωδικών. Οι ομοιόμορφοι κωδικοί σε συνδυασμούς κωδικών περιέχουν τον ίδιο αριθμό χαρακτήρων, άνισους - διαφορετικούς.
Παραπάνω εξετάσαμε ομοιόμορφους δυαδικούς κώδικες.
Ένα παράδειγμα μη ομοιόμορφου κώδικα είναι ο κώδικας Μορς, στον οποίο ορίζεται μια ακολουθία βραχέων και μεγάλων σημάτων για κάθε γράμμα και αριθμό. Έτσι, το γράμμα Ε αντιστοιχεί σε ένα σύντομο σήμα ("κουκκίδα") και το γράμμα Ш αντιστοιχεί σε τέσσερα μεγάλα σήματα (τέσσερις "παύλες"). Το Uneven σάς επιτρέπει να αυξήσετε την ταχύτητα μετάδοσης μηνυμάτων λόγω του γεγονότος ότι τα σύμβολα που εμφανίζονται πιο συχνά στις μεταδιδόμενες πληροφορίες έχουν τους συντομότερους συνδυασμούς κωδικών.
Οι πληροφορίες που δίνονται από αυτό το σύμβολο είναι ίσες με την εντροπία του συστήματος και είναι μέγιστες στην περίπτωση που και οι δύο καταστάσεις είναι εξίσου πιθανές. Σε αυτήν την περίπτωση, το στοιχειώδες σύμβολο μεταφέρει την πληροφορία 1 (διπλές μονάδες). Επομένως, η βάση της βέλτιστης κωδικοποίησης θα είναι η απαίτηση οι στοιχειώδεις χαρακτήρες στο κωδικοποιημένο κείμενο να εμφανίζονται κατά μέσο όρο εξίσου συχνά.
Ας περιγράψουμε εδώ μια μέθοδο για την κατασκευή ενός κώδικα που ικανοποιεί τη δηλωμένη συνθήκη. Αυτή η μέθοδος είναι γνωστή ως κώδικας Shannon-Fano. Η ιδέα του είναι ότι οι κωδικοποιημένοι χαρακτήρες (γράμματα ή συνδυασμοί γραμμάτων) χωρίζονται σε δύο περίπου εξίσου πιθανές ομάδες: για την πρώτη ομάδα χαρακτήρων, το 0 τοποθετείται στην πρώτη θέση του συνδυασμού (ο πρώτος χαρακτήρας του δυαδικού αριθμού που αντιπροσωπεύει το χαρακτήρας); για τη δεύτερη ομάδα - 1. Επιπλέον, κάθε ομάδα χωρίζεται και πάλι σε δύο περίπου εξίσου πιθανές υποομάδες. Για τα σύμβολα της πρώτης υποομάδας, το μηδέν τοποθετείται στη δεύτερη θέση. για τη δεύτερη υποομάδα - ένα, κ.λπ.
Ας δείξουμε την αρχή της κατασκευής του κώδικα Shannon - Fano στο υλικό του ρωσικού αλφαβήτου (Πίνακας 18.8.1). Ας μετρήσουμε τα πρώτα έξι γράμματα (από "-" έως "t"). αθροίζοντας τις πιθανότητές τους (συχνότητες), παίρνουμε 0,498. όλα τα άλλα γράμματα (από "n" έως "sf") θα έχουν περίπου την ίδια πιθανότητα 0,502. Τα πρώτα έξι γράμματα (από "-" έως "t") θα έχουν δυαδικό πρόσημο 0 στην πρώτη θέση. Τα υπόλοιπα γράμματα (από "n" έως "f") θα έχουν μια μονάδα στην πρώτη θέση. Στη συνέχεια, χωρίζουμε και πάλι την πρώτη ομάδα σε δύο περίπου εξίσου πιθανές υποομάδες: από "-" σε "o" και από "e" έως "t". Για όλα τα γράμματα της πρώτης υποομάδας βάζουμε το μηδέν στη δεύτερη θέση και ένα για τη δεύτερη υποομάδα Θα συνεχίσουμε τη διαδικασία μέχρι να παραμείνει ακριβώς ένα γράμμα σε κάθε υποομάδα, το οποίο θα κωδικοποιείται από έναν συγκεκριμένο δυαδικό αριθμό. Ο μηχανισμός φαίνεται στον Πίνακα 18.8 .2 και ο ίδιος ο κωδικός δίνεται στον πίνακα 18.8.3.
Πίνακας 18.8.2.
Δυαδικά σημάδια |
|||||||||
Πίνακας 18.8.3
Ο Πίνακας 18.8.3 μπορεί να κωδικοποιήσει και να αποκωδικοποιήσει οποιοδήποτε μήνυμα.
Για παράδειγμα, ας γράψουμε τη φράση σε δυαδικό κώδικα: "θεωρία πληροφοριών"
01110100001101000110110110000
0110100011111111100110100
1100001011111110101100110
Σημειώστε ότι εδώ δεν χρειάζεται να διαχωρίσετε τα γράμματα μεταξύ τους με ειδικό σήμα, καθώς ακόμη και χωρίς αυτήν την αποκωδικοποίηση εκτελείται αναμφίβολα. Αυτό μπορεί να επαληθευτεί αποκωδικοποιώντας την ακόλουθη φράση χρησιμοποιώντας τον Πίνακα 18.8.2:
10011100110011001001111010000
1011100111001001101010000110101
010110000110110110
("μέθοδος κωδικοποίησης").
Ωστόσο, θα πρέπει να σημειωθεί ότι οποιοδήποτε σφάλμα κωδικοποίησης (τυχαία σύγχυση των χαρακτήρων 0 και 1) με έναν τέτοιο κωδικό είναι μοιραίο, καθώς η αποκωδικοποίηση ολόκληρου του κειμένου μετά το σφάλμα καθίσταται αδύνατη. Επομένως, αυτή η αρχή κωδικοποίησης μπορεί να συνιστάται μόνο στην περίπτωση που πρακτικά αποκλείονται σφάλματα στην κωδικοποίηση και στη μετάδοση του μηνύματος.
Τίθεται ένα φυσικό ερώτημα: είναι ο κώδικας που έχουμε μεταγλωττίσει ελλείψει σφαλμάτων πραγματικά βέλτιστος; Για να απαντήσουμε σε αυτή την ερώτηση, ας βρούμε τη μέση πληροφορία ανά ένα στοιχειώδες σύμβολο (0 ή 1) και ας τη συγκρίνουμε με τη μέγιστη δυνατή πληροφορία, η οποία ισούται με μία δυαδική μονάδα. Για να γίνει αυτό, βρίσκουμε πρώτα τη μέση πληροφορία που περιέχεται σε ένα γράμμα του μεταδιδόμενου κειμένου, δηλαδή την εντροπία ανά γράμμα:
,
πού είναι η πιθανότητα το γράμμα να πάρει μια ορισμένη κατάσταση («-», ο, ε, α, ..., στ).
Από τον πίνακα. 18.8.1 έχουμε
(δύο μονάδες ανά γράμμα του κειμένου).
Σύμφωνα με τον πίνακα 18.8.2, προσδιορίζουμε τον μέσο αριθμό στοιχειωδών χαρακτήρων ανά γράμμα
Διαιρώντας την εντροπία με, λαμβάνουμε πληροφορίες ανά στοιχειώδες σύμβολο
(δύο μονάδες).
Έτσι, οι πληροφορίες ανά σύμβολο είναι πολύ κοντά στο ανώτατο όριο του 1 και ο κωδικός που επιλέξαμε είναι πολύ κοντά στο βέλτιστο. Παραμένοντας εντός των ορίων της αποστολής κωδικοποίησης με γράμματα, δεν μπορούμε να πάρουμε τίποτα καλύτερο.
Σημειώστε ότι στην περίπτωση κωδικοποίησης μόνο δυαδικών αριθμών γραμμάτων, θα είχαμε μια εικόνα κάθε γράμματος με πέντε δυαδικούς χαρακτήρες και οι πληροφορίες ανά χαρακτήρα θα ήταν
(δύο μονάδες),
δηλαδή αισθητά λιγότερο από ό,τι με τη βέλτιστη κωδικοποίηση γραμμάτων.
Ωστόσο, πρέπει να σημειωθεί ότι η ορθογραφική κωδικοποίηση δεν είναι καθόλου οικονομική. Το γεγονός είναι ότι υπάρχει πάντα μια εξάρτηση μεταξύ γειτονικών γραμμάτων οποιουδήποτε κειμένου με νόημα. Για παράδειγμα, ένα φωνήεν στα ρωσικά δεν μπορεί να ακολουθείται από "ъ" ή "ь". μετά το σφύριγμα, το "εγώ" ή το "yu" δεν μπορεί να σταθεί. μετά από πολλά σύμφωνα στη σειρά, η πιθανότητα ενός φωνήεντος αυξάνεται κ.λπ.
Γνωρίζουμε ότι όταν συνδυάζονται εξαρτημένα συστήματα, η συνολική εντροπία είναι μικρότερη από το άθροισμα των εντροπιών των επιμέρους συστημάτων. Επομένως, οι πληροφορίες που μεταφέρονται από ένα κομμάτι συνδεδεμένου κειμένου είναι πάντα μικρότερες από τις πληροφορίες ανά χαρακτήρα πολλαπλασιαζόμενες με τον αριθμό των χαρακτήρων. Δεδομένης αυτής της περίστασης, ένας πιο οικονομικός κωδικός μπορεί να κατασκευαστεί εάν δεν κωδικοποιείται κάθε γράμμα χωριστά, αλλά ολόκληρα «μπλοκ» γραμμάτων. Για παράδειγμα, στο ρωσικό κείμενο είναι λογικό να κωδικοποιούνται στο σύνολό του ορισμένοι συνδυασμοί γραμμάτων που εμφανίζονται συχνά, όπως "ts", "ает", "nie", κ.λπ. Τα κωδικοποιημένα μπλοκ είναι διατεταγμένα σε φθίνουσα σειρά συχνοτήτων, όπως τα γράμματα στον Πίνακα. 18.8.1, και η δυαδική κωδικοποίηση πραγματοποιείται σύμφωνα με την ίδια αρχή.
Σε ορισμένες περιπτώσεις, αποδεικνύεται ότι είναι λογικό να μην κωδικοποιούνται καν μπλοκ γραμμάτων, αλλά ολόκληρα κομμάτια κειμένου με νόημα. Για παράδειγμα, για να ξεφορτώσετε το τηλεγραφείο τις αργίες, συνιστάται να κωδικοποιήσετε ολόκληρα τυπικά κείμενα με αριθμούς υπό όρους, όπως:
«Καλή χρονιά, εύχομαι υγεία και επιτυχία στο έργο σας».
Χωρίς να σταθούμε συγκεκριμένα σε μεθόδους κωδικοποίησης μπλοκ, περιοριζόμαστε στη διατύπωση του σχετικού θεωρήματος Shannon.
Αφήστε να υπάρχει μια πηγή πληροφοριών και ένας δέκτης συνδεδεμένος με ένα κανάλι επικοινωνίας (Εικ. 18.8.1).
Η απόδοση της πηγής πληροφοριών είναι γνωστή, δηλ. ο μέσος αριθμός δυαδικών μονάδων πληροφοριών που προέρχονται από την πηγή ανά μονάδα χρόνου (αριθμητικά είναι ίσος με τη μέση εντροπία του μηνύματος που παράγεται από τις πηγές ανά μονάδα χρόνου). Επιπροσθέτως, ας γνωρίζουμε τη χωρητικότητα του καναλιού, δηλαδή τη μέγιστη ποσότητα πληροφοριών (για παράδειγμα, δυαδικούς χαρακτήρες 0 ή 1) που μπορεί να μεταδώσει το κανάλι στην ίδια μονάδα χρόνου. Τίθεται το ερώτημα: ποιο θα πρέπει να είναι το εύρος ζώνης του καναλιού για να «αντεπεξέλθει» στο έργο του, δηλαδή να φθάνει χωρίς καθυστέρηση πληροφορίες από την πηγή στον δέκτη;
Η απάντηση σε αυτό το ερώτημα δίνεται από το πρώτο θεώρημα του Shannon. Το διατυπώνουμε εδώ χωρίς απόδειξη.
1ο θεώρημα Shannon
Εάν το εύρος ζώνης του καναλιού επικοινωνίας είναι μεγαλύτερο από την εντροπία της πηγής πληροφοριών ανά μονάδα χρόνου
τότε είναι πάντα δυνατό να κωδικοποιηθεί ένα αρκετά μεγάλο μήνυμα έτσι ώστε να μεταδίδεται από το κανάλι επικοινωνίας χωρίς καθυστέρηση. Αν, αντίθετα,
τότε η μετάδοση πληροφοριών χωρίς καθυστέρηση είναι αδύνατη.