Wszystkie znaki i litery można zakodować za pomocą ośmiu bitów binarnych. Najpopularniejszymi tabelami reprezentującymi litery w kodzie binarnym są ASCII i ANSI, można ich używać do pisania tekstów w mikroprocesorach. W tabelach ASCII i ANSI pierwsze 128 znaków jest takich samych. Ta część tabeli zawiera kody cyfr, znaków interpunkcyjnych, wielkich i małych liter łacińskich oraz znaków kontrolnych. Rozszerzenia narodowe tablic znaków i symboli pseudograficznych są zawarte w ostatnich 128 kodach tych tablic, więc rosyjskie teksty w systemach operacyjnych DOS i WINDOWS nie pasują do siebie.

Przy pierwszej znajomości komputerów i mikroprocesorów może pojawić się pytanie – „jak przekonwertować tekst na kod binarny?” Jednak ta transformacja jest najprostszą akcją! Aby to zrobić, musisz użyć dowolnego edytora tekstu. Dołączenie najprostszego programu do notatnika, który jest częścią systemu operacyjnego Windows, jest również odpowiednie. Podobne edytory są obecne we wszystkich środowiskach programistycznych dla języków takich jak C, Pascal czy Java. Należy zauważyć, że najpopularniejszy edytor tekstu Word nie nadaje się do prostej konwersji tekstu na kod binarny. Ten edytor testów wprowadza ogromną ilość dodatkowych informacji, takich jak kolor liter, kursywa, podkreślenie, język, w którym napisana jest dana fraza oraz czcionka.

Należy zauważyć, że w rzeczywistości kombinacja zer i jedynek, za pomocą których kodowana jest informacja tekstowa, nie jest kodem binarnym, ponieważ bity w tym kodzie nie są zgodne z prawami. Jednak w Internecie fraza „reprezentująca litery w kodzie binarnym” jest najczęstsza. W tabeli 1 przedstawiono zgodność kodów binarnych z literami alfabetu łacińskiego. Ze względu na zwięzłość kolejność zer i jedynek w tej tabeli jest przedstawiona w kodach dziesiętnych i szesnastkowych.

Tabela 1 Tabela reprezentacji liter łacińskich w kodzie binarnym (ASCII)

Kod dziesiętny Kod szesnastkowy Wyświetlany znak Oznaczający
0 00 NUL
1 01 (wyświetla słowo sterujące)
2 02 (Pierwsze przesłane słowo)
3 03 ETX (ostatnie słowo transmisji)
4 04 EOT (koniec transmisji)
5 05 ENQ (inicjalizacja)
6 06 ACK (potwierdzenie)
7 07 BEL
8 08 BS
9 09 HT (zakładka pozioma
10 0A LF (wysuw liniowy)
11 0B VT (karta pionowa)
12 0C FF (następna strona)
13 0D CR (powrót karetki)
14 0E SO (podwójna szerokość)
15 0F SI (uszczelnienie skondensowane)
16 10 DLE
17 11 DC1
18 12 DC2 (Anuluj druk skondensowany)
19 13 DC3 (gotowy)
20 14 DC4 (anuluj podwójną szerokość)
21 15 § NAC (bez potwierdzenia)
22 16 SYN
23 17 ETB
24 18 MÓC
25 19 EM
26 1A POD
27 1B ESC (kontrola sekwencji startu)
28 1C FS
29 1D GS
30 1E RS
31 1F NAS
32 20 Przestrzeń
33 21 ! Wykrzyknik
34 22 « nawias kątowy
35 23 # Znak liczbowy
36 24 $ Znak waluty (dolar)
37 25 % Znak procentu
38 26 & Ampersand
39 27 " Apostrof
40 28 ( otwierający wspornik
41 29 ) Zamknij nawias
42 2A * Gwiazda
43 2B + znak plusa
44 2C , Przecinek
45 2D - Minus
46 2E . Kropka
47 2F / Bar ułamkowy
48 30 0 Numeryczne zero
49 31 1 numer jeden
50 32 2 Numer dwa
51 33 3 numer trzy
52 34 4 Numer cztery
53 35 5 Numer pięć
54 36 6 Numer sześć
55 37 7 Numer siedem
56 38 8 Numer osiem
57 39 9 Numer dziewięć
58 3A : Okrężnica
59 3B ; Średnik
60 3C < mniej niż znak
61 3D = znak równości
62 3E > Podpisz więcej
63 3F ? znak zapytania
64 40 @ Piętro handlowe
65 41 A Wielka łacińska litera A
66 42 B Łacińska wielka litera B
67 43 C Łacińska wielka litera C
68 44 D Wielka łacińska litera D
69 45 mi Łacińska wielka litera E
70 46 F Łacińska wielka litera F
71 47 G Łacińska wielka litera G
72 48 H Łacińska wielka litera H
73 49 I Wielka łacińska litera I
74 4A J Łacińska wielka litera J
75 4B K Wielka łacińska litera K
76 4C L Wielka łacińska litera L
77 4D M Wielka łacińska litera
78 4E N Wielka łacińska litera N
79 4F O Wielka łacińska litera O
80 50 P Łacińska wielka litera P
81 51 Q Wielka łacińska litera
82 52 R Łacińska wielka litera R
83 53 S Wielka łacińska litera S
84 54 T Łacińska wielka litera T
85 55 U Łacińska wielka litera U
86 56 V Wielka łacińska litera V
87 57 W Łacińska wielka litera W
88 58 X Wielka łacińska litera X
89 59 Tak Wielka łacińska litera Y
90 5A Z Wielka łacińska litera Z
91 5B [ Otwierający nawias kwadratowy
92 5C \ Ukośnik wsteczny
93 5D ] Nawias kwadratowy zamykający
94 5E ^ "Pokrywa"
95 5 _ Znak podkreślenia
96 60 ` Apostrof
97 61 a Łacińska mała litera a
98 62 b Łacińska mała litera b
99 63 c Łacińska mała litera c
100 64 d Łacińska mała litera d
101 65 mi Łacińska mała litera e
102 66 f Łacińska mała litera f
103 67 g Łacińska mała litera g
104 68 h Łacińska mała litera h
105 69 i Łacińska mała litera i
106 6A j Łacińska mała litera j
107 6B k Łacińska mała litera k
108 6C ja Łacińska mała litera l
109 6D m Łacińska mała litera m
110 6E n Łacińska mała litera n
111 6F o Łacińska mała litera o
112 70 p Łacińska mała litera p
113 71 q Łacińska mała litera q
114 72 r Łacińska mała litera r
115 73 s Łacińska mała litera s
116 74 t Łacińska mała litera t
117 75 ty Łacińska mała litera u
118 76 v Łacińska mała litera v
119 77 w Łacińska mała litera w
120 78 x mała łacińska litera x
121 79 tak Łacińska mała litera y
122 7A z Łacińska mała litera z
123 7B { Otwórz nawias klamrowy
124 7C | pionowy pasek
125 7D } Zamknij nawias klamrowy
126 7E ~ Tylda
127 7F

W klasycznej wersji tablicy znaków ASCII nie ma rosyjskich liter i składa się ona z 7 bitów. Jednak później tablica ta została rozszerzona do 8 bitów, aw górnych 128 wierszach pojawiły się rosyjskie litery w kodzie binarnym i symbole pseudograficzne. W ogólnym przypadku druga część zawiera alfabety narodowe różnych krajów, a litery rosyjskie to tylko jeden z możliwych zestawów (855), może być tabela francuska (863), niemiecka (1141) lub grecka (737). Tabela 2 pokazuje przykład reprezentacji liter rosyjskich w kodzie binarnym.

Tabela 2. Tabela reprezentacji liter rosyjskich w kodzie binarnym (ASCII)

Kod dziesiętny Kod szesnastkowy Wyświetlany znak Oznaczający
128 80 ALE Wielka rosyjska litera A
129 81 B Wielka rosyjska litera B
130 82 W Wielka rosyjska litera V
131 83 G Wielka rosyjska litera G
132 84 D Wielka rosyjska litera D
133 85 mi Wielka rosyjska litera E
134 86 ORAZ Wielka rosyjska litera Zh
135 87 W Wielka rosyjska litera Z
136 88 I Wielka rosyjska litera I
137 89 Tak Wielka rosyjska litera Y
138 8A Do Wielka rosyjska litera K
139 8B L Wielka rosyjska litera L
140 8C M Wielka rosyjska litera M
141 8D H Wielka rosyjska litera N
142 8E O Wielka rosyjska litera O
143 8F P Wielka rosyjska litera P
144 90 R Wielka rosyjska litera R
145 91 Z Wielka rosyjska litera C
146 92 T Wielka rosyjska litera T
147 93 Na Wielka rosyjska litera U
148 94 F Wielka rosyjska litera F
149 95 X Wielka rosyjska litera X
150 96 C Wielka rosyjska litera C
151 97 H Wielka rosyjska litera Ch
152 98 W Wielka rosyjska litera Sh
153 99 SCH Wielka rosyjska litera Ш
154 9A Kommiersant Wielka rosyjska litera Ъ
155 9B S Wielka rosyjska litera Y
156 9C b Wielka rosyjska litera b
157 9D mi Wielka rosyjska litera E
158 9E YU Wielka rosyjska litera Yu
159 9F I Wielka rosyjska litera Ya
160 A0 a Mała rosyjska litera a
161 A1 b Mała rosyjska litera b
162 A2 w Mała rosyjska litera v
163 A3 G Mała rosyjska litera g
164 A4 d Mała rosyjska litera d
165 A5 mi Mała rosyjska litera e
166 A6 oraz Mała rosyjska litera zh
167 A7 h Mała rosyjska litera z
168 A8 oraz Mała rosyjska litera i
169 A9 ten Mała rosyjska litera y
170 AA do Mała rosyjska litera k
171 AB ja Mała rosyjska litera l
172 AC m Mała rosyjska litera m
173 OGŁOSZENIE n Mała rosyjska litera n
174 AE o Mała rosyjska litera o
175 AF P Mała rosyjska litera p
176 B0
177 B1
178 B2
179 B3 Pseudo symbol
180 B4 Pseudo symbol
181 B5 Pseudo symbol
182 B6 Pseudo symbol
183 B7 Pseudo symbol
184 B8 Pseudo symbol
185 B9 Pseudo symbol
186 BA Pseudo symbol
187 nocleg ze śniadaniem Pseudo symbol
188 pne Pseudo symbol
189 BD Pseudo symbol
190 BYĆ Pseudo symbol
191 bf Pseudo symbol
192 C0 Pseudo symbol
193 C1 Pseudo symbol
194 C2 Pseudo symbol
195 C3 Pseudo symbol
196 C4 Pseudo symbol
197 C5 Pseudo symbol
198 C6 Pseudo symbol
199 C7 Pseudo symbol
200 C8 Pseudo symbol
201 C9 Pseudo symbol
202 CA Pseudo symbol
203 CB Pseudo symbol
204 CC Pseudo symbol
205 płyta CD Pseudo symbol
206 CE Pseudo symbol
207 CF Pseudo symbol
208 D0 Pseudo symbol
209 D1 Pseudo symbol
210 D2 Pseudo symbol
211 D3 Pseudo symbol
212 D4 Pseudo symbol
213 D5 Pseudo symbol
214 D6 Pseudo symbol
215 D7 Pseudo symbol
216 D8 Pseudo symbol
217 D9 Pseudo symbol
218 DA Pseudo symbol
219 DB
220 DC
221 DD
222 DE
223 D.F.
224 E0 R Mała rosyjska litera p
225 E1 Z Mała rosyjska litera c
226 E2 t Mała rosyjska litera t
227 E3 w Mała rosyjska litera u
228 E 4 f Mała rosyjska litera f
229 E5 X Mała rosyjska litera x
230 E6 c Mała rosyjska litera c
231 E7 h Mała rosyjska litera h
232 E8 w Mała rosyjska litera sh
233 E9 sch Mała rosyjska litera u
234 EA b Mała rosyjska litera ъ
235 EB s Mała rosyjska litera y
236 UE b Mała rosyjska litera ь
237 ED uh Mała rosyjska litera e
238 EE Yu Mała rosyjska litera u
239 EF I Mała rosyjska litera i
240 F0 Siema Wielka rosyjska litera Yo
241 F1 Siema Mała rosyjska litera ё
242 F2 Є
243 F3 є
244 F4 Ї
245 F5 Ї
246 F6 Ў
247 F7 ў
248 F8 ° znak stopnia
249 F9 Znak mnożenia (kropka)
250 FA ·
251 Facebook Radykalny (zakorzeniony)
252 FC Znak liczbowy
253 FD ¤ Znak waluty (rubel)
254 F.E.
255 FF

Podczas pisania tekstów, oprócz kodów binarnych, które bezpośrednio wyświetlają litery, używane są kody wskazujące przejście do nowej linii i powrót kursora (powrót karetki) do pozycji zerowej linii. Te znaki są zwykle używane razem. Ich kody binarne odpowiadają liczbom dziesiętnym - 10 (0A) i 13 (0D). Jako przykład poniżej znajduje się fragment tekstu tej strony (zrzut pamięci). Ta sekcja zawiera pierwszy akapit. Do wyświetlania informacji w zrzucie pamięci używany jest następujący format:

  • pierwsza kolumna zawiera binarny adres pierwszego bajtu ciągu
  • następne szesnaście kolumn zawiera bajty zawarte w pliku tekstowym. Dla wygodniejszego określenia liczby bajtów po ósmej kolumnie rysowana jest pionowa linia. Bajty, dla zwięzłości, są reprezentowane w kodzie szesnastkowym.
  • w ostatniej kolumnie te same bajty są reprezentowane jako wyświetlane znaki alfabetyczne
00000000: 82 E1 A5 20 E1 A8 AC A2 ¦ AE AB EB 20 A8 20 A1 E3 Wszystkie znaki i bu AE A4 A8 E0 AE A2 ¦ A0 AD EB 20 AF E0 A8 20 kodowane z 00000030: AF AE AC AE E9 A8 20 A2 ¦ AE E1 EC AC A8 20 A4 A2 00000040: AE A8 E7 AD EB E5 20 E1 ¦ A8 AC A2 AE AB AE A2 2E 00000050: 0D 0A 8D A0 A8 A1 AE AB ¦ A5 A5 20 E0 A0 E1 AF E0 AC A8 20 EF ¦ A2 AB EF EE E2 E1 EF 20 osób to 00000080: E2 A0 A1 AB A8 E6 EB 20 ¦ 41 53 43 49 49 20 E1 20 Tabele ASCII z 00000090: AD A0 E6 A8 AE AD A0 AB ¦ EC AD EB AC A8 0D 0A E0 national♪◙p 000000A0: A0 E1 E8 A8 E0 A5 AD A8 ¦ EF AC A8 2C 20 AF E0 A8 rozszerzenia, przy 000000B0: AC A5 AD EF EE E9 A8 A5 ¦ E1 EF 20 A2 20 44 4F 53 zmiana w DOS 000000C0: 20 28 A8 20 AA AE E2 AE ¦ E0 EB A5 20 AC AE A6 AD (i co może być 000000D0: AE 20 A8 E1 AF AE AB EC ¦ A7 AE A2 A0 E2 EC 20 A4 : AB EF 20 A7 A0 AF A8 E1 ¦ A8 0D 0A E2 A5 AA E1 E2 Zapis♪◙tekst 000000F0: AE A2 20 A2 20 AC A8 AA ¦ E0 AE AF E0 AE E6 A5 E1 A0 E5 29 2C 20 ¦ A8 20 E2 A0 A1 AB A8 E6 sop), oraz tabele 00000110: EB 20 41 4E 53 49 2C 20 ¦ AF E0 A8 AC A5 AD EF EE s ANSI, zastosuj 000 00120: E9 A8 A5 E1 EF 20 A2 20 ¦ 57 49 4E 44 4F 57 53 2E dostępne w WINDOWS. 00000130: 20 82 20 E2 A0 A1 AB A8 ¦ E6 A0 E5 0D 0A 41 53 43 31 32 38 20 E1 A8 AC ¦ A2 AE AB AE A2 20 E1 AE 128 znaków z 00000160: A2 AF A0 A4 A0 EE E2 2E ¦ 20 82 20 ED E2 AE A9 20 W tym 00000170: E7 A0 E1 E2 A8 20 E2 A0 ¦ A1 AB A8 E6 EB 20 E1 AE części tabeli z 00000180: A4 A5 E0 A6 A0 E2 E1 EF ¦ 0D 0A E1 A8 AC A2 AE AB ♪◙symbol 00000190 : EB jest zachowany 20 E6 A8 E4 E0 2C 20 ¦ A7 AD A0 AA AE A2 20 cyfr AF, znaki n 000001A0: E0 A5 AF A8 AD A0 AD A8 ¦ EF 2C 20 AB A0 E2 A8 AD repinning, łac. 000001B0: E1 AA A8 A5 20 A1 E3 AA ¦ A2 EB 20 A2 A5 E0 E5 AD Górny 000001C0: A5 A3 AE 20 A8 20 AD A8 ¦ A6 AD A5 A3 AE 20 E0 A5 Dolny D 000001D0: A3 A8 E1 E2 E0 AE A2 20 ¦ A8 0D 0A E3 AF E0 A0 A2 hister i♪◙sterowanie 000001E0: AB EF EE E9 A8 A5 20 E1 ¦ A8 AC A2 AE AB EB 2E 20 znaków. 000001F0: 8D A0 E6 A8 AE AD A0 AB ¦ EC AD EB A5 20 E0 A0 E1 Wyścigi narodowe 00000200: E8 A8 E0 A5 AD A8 EF 20 ¦ E1 A8 AC A2 AE AB Rozszerzenia znaków EC AD AB A8 ¦ E6 20 A8 20 E1 A8 AC A2 tabele i symbole 00000220: AE AB EB 0D 0A AF E1 A5 ¦ A2 A4 AE A3 E0 A0 E4 A8 oly♪◙pseudographics 00000230: AA A8 20 E1 AE A4 A5 E0 ¦ A6 A0 E2 E1 EF 20 A2 20 ki zawarte w 00000240: AF AE E1 AB A5 A4 AD A8 ¦ E5 20 31 32 38 20 AA AE ostatnie 128 ko 00000250: A4 A0 E5 20 ED E2 A8 E5 ¦ 20 E2 A0 A1 AB A8 E6 2C biorąc pod uwagę te tabele, 00000260: 20 AF AE ED E2 AE AC E3 ¦ 20 E0 E3 E1 E1 AA A8 A5 stąd rosyjski 00000270: 0D 0A E2 A5 AA E1 E2 EB ¦ 20 A2 20 AE AF A5 E0 A0 ♪◙ teksty w pracy 00000280 : E6 A8 AE AD AD EB E5 20 ¦ E1 A8 E1 E2 A5 AC A0 E5 AF A0 A4 ¦ A0 EE E2 2E 0D 0A nie pasują.

W powyższym przykładzie widać, że pierwszy wiersz tekstu ma 80 bajtów. Pierwszy bajt 82 odpowiada literze „B”. Drugi bajt E1 odpowiada literze „c”. Trzeci bajt A5 odpowiada literze „e”. Następny bajt 20 reprezentuje pustą przestrzeń między słowami (spację) " ". Bajty 81 i 82 zawierają znaki powrotu karetki i przesunięcia wiersza 0D 0A. Te znaki znajdujemy pod adresem binarnym 00000050: Kolejny wiersz tekstu źródłowego nie jest wielokrotnością 16 (jego długość to 76 liter), więc aby znaleźć jego koniec, należy najpierw znaleźć wiersz 000000E0: i policzyć dziewięć kolumn od niego. Znowu zapisywane są tam bajty powrotu karetki i wysuwu wiersza 0D 0A. Pozostała część tekstu jest analizowana dokładnie w ten sam sposób.

Data ostatniej aktualizacji pliku 04.12.2018

Literatura:

Wraz z artykułem „Pisanie tekstów w kodzie binarnym” czytają:

Reprezentacja liczb binarnych w pamięci komputera lub mikrokontrolera
http://website/proc/IntCod.php

Czasami wygodnie jest przechowywać liczby w pamięci procesora w postaci dziesiętnej.
http://website/proc/DecCod.php

Standardowe formaty zmiennoprzecinkowe dla komputerów i mikrokontrolerów
http://witryna/proc/float/

Obecnie zarówno pozycyjne, jak i niepozycyjne systemy liczbowe są szeroko stosowane zarówno w technologii, jak i w życiu codziennym.
.php

Ponieważ jest najprostszy i spełnia wymagania:

  • Im mniej wartości istnieje w systemie, tym łatwiej wykonać poszczególne elementy operujące na tych wartościach. W szczególności dwie cyfry systemu liczb binarnych można łatwo przedstawić za pomocą wielu zjawisk fizycznych: jest prąd - nie ma prądu, indukcja pola magnetycznego jest większa niż wartość progowa lub nie itp.
  • Im mniejsza liczba stanów dla elementu, tym wyższa odporność na zakłócenia i tym szybciej może działać. Przykładowo, aby zakodować trzy stany poprzez wartość indukcji pola magnetycznego, konieczne będzie wprowadzenie dwóch wartości progowych, które nie wpłyną na odporność na zakłócenia i niezawodność przechowywania informacji.
  • Arytmetyka binarna jest dość prosta. Proste są tablice dodawania i mnożenia - podstawowe operacje na liczbach.
  • Możliwe jest wykorzystanie aparatu algebry logiki do wykonywania operacji bitowych na liczbach.

Spinki do mankietów

  • Kalkulator online do przeliczania liczb z jednego systemu liczbowego na inny

Fundacja Wikimedia. 2010 .

Zobacz, co „Kod binarny” znajduje się w innych słownikach:

    2 Kod bitowy Gray 00 01 11 10 3 Kod bitowy Gray 000 000 001 011 010 110 111 101 100 4 Kod bitowy Gray 0000 00 0001 0011 0010 0110 01111 0100 1100 1101 1111 1110 1010 1011 1000 Szary Kod niestandardowy, w którym są dwa sąsiednie wartości, w których występują dwie sąsiednie wartości … … Wikipedia

    Kod punktu sygnału (angielski kod punktu sygnału (SPC)) systemu sygnalizacji 7 (SS7, SS 7) jest unikalnym (w sieci domowej) adresem węzła używanym na trzecim poziomie MTP (routing) w sieciach telekomunikacyjnych SS 7 do zidentyfikować ... Wikipedia

    W matematyce liczba bezkwadratowa to liczba, która nie jest podzielna przez żaden kwadrat inny niż 1. Na przykład 10 jest bezkwadratowe, ale 18 nie, ponieważ 18 jest podzielne przez 9 = 32. Początek ciągu liczb bezkwadratowych to : 1, 2, 3, 5, 6, 7, ... ... Wikipedia

    Czy chcesz ulepszyć ten artykuł?: Wikifikuj artykuł. Przerób projekt zgodnie z zasadami pisania artykułów. Popraw artykuł zgodnie z zasadami stylistycznymi Wikipedii ... Wikipedia

    Termin ten ma inne znaczenia, patrz Python (ujednoznacznienie). Python Klasa języka: mu ... Wikipedia

    W wąskim znaczeniu tego słowa, obecnie wyrażenie to jest rozumiane jako „atak na system bezpieczeństwa” i skłania się raczej do znaczenia następującego terminu atak crackera. Wynikało to z wypaczenia znaczenia słowa „haker”. Haker ... ... Wikipedia

Postanowiłem zrobić takie narzędzie jak konwersja tekstu na kod binarny i odwrotnie, są takie usługi, ale zwykle działają z łaciną, ale moje translator działa z kodowaniem Unicode UTF-8, który koduje znaki cyrylicy w dwóch bajtach. Nie da się przetłumaczyć chińskich znaków, ale zamierzam naprawić to niefortunne nieporozumienie.

Aby przekonwertować tekst na reprezentację binarną wpisz tekst w lewym polu i naciśnij TEXT->BIN w prawym polu, pojawi się jego binarna reprezentacja.

Aby przekonwertować kod binarny na tekst wprowadź kod w prawym oknie i naciśnij BIN->TEKST w lewym oknie pojawi się jego symboliczna reprezentacja.

Jeśli konwertowanie kodu binarnego na tekst lub odwrotnie nie wyszło - sprawdź poprawność swoich danych!

Aktualizacja!

Dostępna jest teraz transformacja tekstu odwróconego:

w normalny wygląd. Aby to zrobić, zaznacz pole: "Zamień 0 na spacje i 1 na symbol zastępczy █". Następnie wklej tekst w odpowiednie pole: "Tekst w reprezentacji binarnej" i naciśnij przycisk pod nim "BIN->TEKST".

Przy kopiowaniu takich tekstów trzeba być ostrożnym, ponieważ. możesz łatwo stracić spacje na początku lub na końcu. Na przykład powyższa linia wygląda tak:

██ █ █ ███████ █ ██ ██ █ █ ███ ██ █ █ ██ █ ██ █ █ ██ █ ███ █ ██ █ █ ██ █ █ ███ ██ █ █ ███ ██ █ ██

a na czerwonym tle:

██ █ █ ███████ █ ██ ██ █ █ ███ ██ █ █ ██ █ ██ █ █ ██ █ ███ █ ██ █ █ ██ █ █ ███ ██ █ █ ███ ██ █ ██

zobaczyć, ile spacji na końcu można stracić?

Komputery nie rozumieją słów i liczb tak jak ludzie. Nowoczesne oprogramowanie pozwala użytkownikowi końcowemu to zignorować, ale na najniższych poziomach komputer działa z binarnym sygnałem elektrycznym, który ma tylko dwa stany: jest prąd lub brak prądu. Aby „zrozumieć” złożone dane, komputer musi je zakodować w postaci binarnej.

System binarny opiera się na dwóch cyfrach, 1 i 0, odpowiadających stanom włączenia i wyłączenia, które komputer może zrozumieć. Prawdopodobnie znasz system dziesiętny. Wykorzystuje dziesięć cyfr, od 0 do 9, a następnie przechodzi do następnego porządku, tworząc liczby dwucyfrowe, przy czym cyfra z każdego zamówienia jest dziesięciokrotnie większa od poprzedniej. System binarny jest podobny, a każda cyfra jest dwa razy większa niż poprzednia.

Liczenie w systemie binarnym

W systemie binarnym pierwsza cyfra odpowiada 1 w systemie dziesiętnym. Druga cyfra to 2, trzecia to 4, czwarta to 8 i tak dalej — za każdym razem podwajając. Dodanie wszystkich tych wartości da ci liczbę w formacie dziesiętnym.

1111 (binarny) = 8 + 4 + 2 + 1 = 15 (dziesiętny)

Uwzględnienie 0 daje nam 16 możliwych wartości dla czterech bitów binarnych. Przesuń 8 bitów, a otrzymasz 256 możliwych wartości. Zajmuje to znacznie więcej miejsca do przedstawienia, ponieważ cztery cyfry dziesiętne dają nam 10 000 możliwych wartości. Oczywiście kod binarny zajmuje więcej miejsca, ale komputery znacznie lepiej rozumieją pliki binarne niż system dziesiętny. A w przypadku niektórych rzeczy, takich jak przetwarzanie logiki, binarny jest lepszy niż dziesiętny.

Należy powiedzieć, że istnieje inny podstawowy system, który jest używany w programowaniu: szesnastkowy. Chociaż komputery nie działają w systemie szesnastkowym, programiści używają go do reprezentowania adresów binarnych w formacie czytelnym dla człowieka podczas pisania kodu. Dzieje się tak, ponieważ dwie cyfry liczby szesnastkowej mogą reprezentować cały bajt, to znaczy zastępują osiem cyfr w systemie binarnym. System szesnastkowy wykorzystuje cyfry 0-9, a także litery od A do F, aby uzyskać dodatkowe sześć cyfr.

Dlaczego komputery używają plików binarnych

Krótka odpowiedź: sprzęt i prawa fizyki. Każda postać w twoim komputerze jest sygnałem elektrycznym, a we wczesnych dniach informatyki mierzenie sygnałów elektrycznych było znacznie trudniejsze. Rozsądniejsze było rozróżnienie między tylko stanem „włączonym”, reprezentowanym przez ładunek ujemny, a stanem „wyłączonym”, reprezentowanym przez ładunek dodatni.

Dla tych, którzy nie wiedzą, dlaczego „off” jest reprezentowane przez ładunek dodatni, dzieje się tak dlatego, że elektrony mają ładunek ujemny, a więcej elektronów oznacza większy prąd z ładunkiem ujemnym.

W związku z tym używane były wczesne komputery wielkości pokoju pliki binarne do budowy swoich systemów i chociaż używali starszego, masywniejszego sprzętu, działali na tych samych podstawowych zasadach. Współczesne komputery wykorzystują to, co się nazywa tranzystor do wykonywania obliczeń z kodem binarnym.

Oto schemat typowego tranzystora:

Zasadniczo umożliwia przepływ prądu ze źródła do drenu, jeśli w bramce jest prąd. To tworzy klucz binarny. Producenci mogą wyprodukować te tranzystory tak małe jak 5 nanometrów lub tak małe jak dwie nici DNA. Tak działają współczesne procesory, a nawet one mogą mieć problemy z rozróżnianiem stanów włączonych i wyłączonych (choć wynika to z ich nierealistycznej wielkości cząsteczek, z zastrzeżeniem osobliwości mechaniki kwantowej).

Dlaczego tylko system binarny

Możesz więc pomyśleć: „Dlaczego tylko 0 i 1? Dlaczego nie dodać kolejnego numeru? Chociaż częściowo wynika to z tradycji tworzenia komputerów, jednocześnie dodanie jeszcze jednej cyfry oznaczałoby konieczność podkreślenia jeszcze jednego stanu obecnego, a nie tylko „wyłączony” lub „włączony”.

Problem polega na tym, że jeśli chcesz używać wielu poziomów napięcia, potrzebujesz sposobu na łatwe wykonywanie obliczeń z nimi, a nowoczesny sprzęt, który to potrafi, nie jest opłacalny jako zamiennik obliczeń binarnych. Na przykład istnieje tzw potrójny komputer, opracowany w latach pięćdziesiątych, ale na tym rozwój się zatrzymał. Logika trójczłonowa bardziej wydajny niż binarny, ale nie ma jeszcze skutecznego zamiennika dla tranzystora binarnego, a przynajmniej nie ma tranzystora tak małego jak binarny.

Powód, dla którego nie możemy używać logiki trójskładnikowej, sprowadza się do tego, jak tranzystory są połączone w komputerze i jak są używane do obliczeń matematycznych. Tranzystor odbiera informacje na dwóch wejściach, wykonuje operację i zwraca wynik na jedno wyjście.

Zatem matematyka binarna jest łatwiejsza dla komputera niż cokolwiek innego. Logika binarna jest łatwo konwertowana na systemy binarne, przy czym prawda i fałsz odpowiadają stanom włączenia i wyłączenia.

Binarna tabela prawdy działająca na logice binarnej będzie miała cztery możliwe wyjścia dla każdej podstawowej operacji. Ale ponieważ potrójne bramki używają trzech wejść, potrójna tabela prawdy miałaby 9 lub więcej. Podczas gdy system binarny ma 16 możliwych operatorów (2^2^2), system trójskładnikowy miałby 19683 (3^3^3). Skalowanie staje się problemem, ponieważ chociaż trójca jest bardziej wydajna, jest również wykładniczo bardziej złożona.

Kto wie? W przyszłości możemy bardzo dobrze zobaczyć komputery trójskładnikowe, ponieważ logika binarna napotkała problemy miniaturyzacji. Na razie świat będzie nadal działał w trybie binarnym.

Pojemność kodu binarnego, Konwersja informacji z postaci ciągłej na dyskretną, Uniwersalność kodowania binarnego, Kody jednolite i niejednolite, Informatics Grade 7 Bosov, Informatics Grade 7

1.5.1. Konwersja informacji z postaci ciągłej na dyskretną
Aby rozwiązać swoje problemy, osoba często musi przekonwertować dostępne informacje z jednej formy reprezentacji na inną. Na przykład podczas głośnego czytania informacje są konwertowane z postaci dyskretnej (tekstowej) na ciągłą (dźwiękową). Natomiast podczas dyktando na lekcji języka rosyjskiego informacja jest przekształcana z formy ciągłej (głos nauczyciela) na dyskretną (notatki uczniów).
Informacje prezentowane w dyskretnej formie są znacznie łatwiejsze do przesłania, przechowywania lub automatycznego przetwarzania. Dlatego w technice komputerowej dużą wagę przywiązuje się do metod konwersji informacji z postaci ciągłej na dyskretną.
Dyskretyzacja informacji to proces przekształcania informacji z ciągłej formy reprezentacji w dyskretną.
Rozważ istotę procesu dyskretyzacji informacji na przykładzie.
Stacje meteorologiczne posiadają przyrządy samorejestrujące do ciągłej rejestracji ciśnienia atmosferycznego. Efektem ich pracy są barogramy - krzywe pokazujące, jak zmieniało się ciśnienie na przestrzeni długich okresów czasu. Jedną z takich krzywych wykreślonych przez instrument podczas siedmiu godzin obserwacji pokazano na rys. 1.9.

Na podstawie uzyskanych informacji można skonstruować tabelę zawierającą odczyty przyrządu na początku pomiarów i na koniec każdej godziny obserwacji (rys. 1.10).

Wynikowa tabela nie daje pełnego obrazu tego, jak zmieniało się ciśnienie w okresie obserwacji: na przykład najwyższa wartość ciśnienia, która wystąpiła podczas czwartej godziny obserwacji, nie jest wskazana. Ale jeśli wprowadzisz do tabeli wartości ciśnienia obserwowane co pół godziny lub 15 minut, nowa tabela da pełniejszy obraz tego, jak zmieniło się ciśnienie.
Tak więc informacje przedstawione w postaci ciągłej (barogram, krzywa), z pewną utratą dokładności, przekształciliśmy w postać dyskretną (tabela).
W przyszłości poznasz metody dyskretnej prezentacji informacji dźwiękowej i graficznej.

Łańcuchy trzech znaków binarnych uzyskuje się uzupełniając dwucyfrowe kody binarne po prawej stronie o znak 0 lub 1. W efekcie kombinacje kodowe trzech znaków binarnych to 8 - dwa razy więcej niż z dwóch znaków binarnych:
W związku z tym czterobitowy binarny pozwala uzyskać 16 kombinacji kodów, pięciobitowy - 32, sześciobitowy - 64 itd. Długość łańcucha binarnego - liczba znaków w kodzie binarnym - wynosi nazywana głębią bitową kodu binarnego.
Zwróć uwagę, że:
4 = 2 * 2,
8 = 2 * 2 * 2,
16 = 2 * 2 * 2 * 2,
32 = 2 * 2 * 2 * 2 * 2 itd.
W tym przypadku liczba kombinacji kodów jest iloczynem pewnej liczby identycznych współczynników równych głębi bitowej kodu binarnego.
Jeżeli liczba kombinacji kodów jest oznaczona literą N, a głębia bitowa kodu binarnego literą i, to ujawniony wzorzec w postaci ogólnej zostanie zapisany w następujący sposób:
N = 2 * 2 * ... * 2.
ja czynniki
W matematyce takie produkty są zapisywane jako:
N = 2i.
Rekord 2 czytam tak: „2 do i-tej potęgi”.

Zadanie. Przywódca plemienia Multi polecił swojemu ministrowi opracowanie binarnego i przetłumaczenie na niego wszystkich ważnych informacji. Jaka głębia bitowa byłaby wymagana, jeśli alfabet używany przez plemię Multi ma 16 znaków? Zapisz wszystkie kombinacje kodów.
Rozwiązanie. Ponieważ alfabet plemienia Multi składa się z 16 znaków, potrzebują one również 16 kombinacji kodów, w tym przypadku długość (pojemność cyfr) kodu binarnego jest określana ze stosunku: 16 = 2 i . Stąd i = 4.
Aby wypisać wszystkie kombinacje kodów czterech 0 i 1, użyjemy diagramu na ryc. 1.13: 0000, 0001, 0010, 0011, 0100, 0101, 0110,0111,1000,1001,1010,1011,1100,1101,1110,1111.

1.5.3. Wszechstronność kodowania binarnego
Na początku tej sekcji dowiedziałeś się, że gdy jest reprezentowany w formie ciągłej, może być wyrażany za pomocą symboli jakiegoś języka naturalnego lub formalnego. Z kolei dowolne znaki alfabetu można przekonwertować na binarne. Tak więc za pomocą kodu binarnego każdy może być reprezentowany w językach naturalnych i formalnych, a także obrazach i dźwiękach (ryc. 1.14). Oznacza to uniwersalność kodowania binarnego.
Kody binarne są szeroko stosowane w technice komputerowej, wymagające tylko dwóch stanów układu elektronicznego - „włączony” (odpowiadający cyfrze 1) i „wyłączony” (odpowiadający cyfrze 0).
Prostota implementacji technicznej to główna zaleta kodowania binarnego. Wadą kodowania binarnego jest duża długość wynikowego kodu.

1.5.4. Kody jednolite i niejednolite
Rozróżnij kody jednolite i niejednolite. Kody jednolite w kombinacjach normowych zawierają tę samą liczbę znaków, nieparzyste - różne.
Powyżej rozważyliśmy jednolite kody binarne.
Przykładem kodu niejednorodnego jest kod Morse'a, w którym sekwencja krótkich i długich sygnałów jest zdefiniowana dla każdej litery i cyfry. Tak więc litera E odpowiada krótkiemu sygnałowi („kropka”), a litera Ш odpowiada czterem długim sygnałom (cztery „kreski”). Uneven pozwala na zwiększenie szybkości transmisji wiadomości ze względu na to, że najczęściej występujące symbole w przesyłanej informacji mają najkrótsze kombinacje kodowe.

Informacja podana tym symbolem jest równa entropii układu i jest maksymalna w przypadku, gdy oba stany są jednakowo prawdopodobne; w tym przypadku symbol elementarny przekazuje informację 1 (jednostki podwójne). Dlatego podstawą optymalnego kodowania będzie wymóg, aby znaki elementarne w zakodowanym tekście występowały średnio równie często.

Opiszmy tutaj metodę konstruowania kodu, który spełnia postawiony warunek; ta metoda jest znana jako kod Shannona-Fano. Jego idea polega na tym, że zakodowane znaki (litery lub kombinacje liter) są podzielone na dwie w przybliżeniu równie prawdopodobne grupy: dla pierwszej grupy znaków 0 jest umieszczane na pierwszym miejscu kombinacji (pierwszy znak liczby binarnej reprezentującej postać); dla drugiej grupy - 1. Ponadto, każda grupa jest ponownie podzielona na dwie w przybliżeniu równie prawdopodobne podgrupy; dla symboli pierwszej podgrupy zero jest umieszczane na drugim miejscu; dla drugiej podgrupy - jedna itd.

Zademonstrujmy zasadę konstruowania kodu Shannon - Fano na materiale alfabetu rosyjskiego (tabela 18.8.1). Policzmy pierwsze sześć liter (od „-” do „t”); sumując ich prawdopodobieństwa (częstotliwości), otrzymujemy 0,498; wszystkie inne litery (od „n” do „sf”) będą miały w przybliżeniu takie samo prawdopodobieństwo 0,502. Pierwsze sześć liter (od „-” do „t”) będzie miało w pierwszej kolejności znak binarny 0. Pozostałe litery (od „n” do „f”) będą miały w pierwszej kolejności jednostkę. Następnie ponownie dzielimy pierwszą grupę na dwie w przybliżeniu równie prawdopodobne podgrupy: od „-” do „o” i od „e” do „t”; dla wszystkich liter pierwszej podgrupy na drugim miejscu wstawiamy zero, a dla drugiej podgrupy jeden.Proces będziemy kontynuować, aż w każdym podziale pozostanie dokładnie jedna litera, która zostanie zakodowana przez określoną liczbę binarną. mechanizm pokazano w tabeli 18.8.2, a sam kod w tabeli 18.8.3.

Tabela 18.8.2.

Znaki binarne

Tabela 18.8.3

Tabela 18.8.3 umożliwia kodowanie i dekodowanie dowolnej wiadomości.

Jako przykład wpiszmy frazę w kodzie binarnym: „teoria informacji”

01110100001101000110110110000

0110100011111111100110100

1100001011111110101100110

Zauważ, że tutaj nie ma potrzeby oddzielania od siebie liter specjalnym znakiem, ponieważ nawet bez tego dekodowania odbywa się jednoznacznie. Można to zweryfikować, dekodując następującą frazę za pomocą tabeli 18.8.2:

10011100110011001001111010000

1011100111001001101010000110101

010110000110110110

(„metoda kodowania”).

Należy jednak zauważyć, że każdy błąd kodowania (przypadkowe pomylenie znaków 0 i 1) z takim kodem jest fatalny, ponieważ dekodowanie całego tekstu po błędzie staje się niemożliwe. Dlatego ta zasada kodowania może być zalecana tylko w przypadku, gdy błędy w kodowaniu i transmisji wiadomości są praktycznie wykluczone.

Powstaje naturalne pytanie: czy kod, który skompilowaliśmy bez błędów, jest naprawdę optymalny? Aby odpowiedzieć na to pytanie, znajdźmy średnią informację przypadającą na jeden symbol elementarny (0 lub 1) i porównajmy ją z maksymalną możliwą informacją, która jest równa jednej jednostce binarnej. Aby to zrobić, najpierw znajdujemy średnią informację zawartą w jednej literze przesyłanego tekstu, tj. Entropię na literę:

,

gdzie jest prawdopodobieństwo, że litera przyjmie określony stan („-”, o, e, a, ..., f).

Z tabeli. 18.8.1 mamy

(dwie jednostki na literę tekstu).

Zgodnie z tabelą 18.8.2 określamy średnią liczbę podstawowych znaków na literę

Dzieląc entropię przez, otrzymujemy informację na symbol elementarny

(dwie jednostki).

Tak więc informacja na symbol jest bardzo bliska górnej granicy 1, a wybrany przez nas kod jest bardzo bliski optymalnemu. Pozostając w granicach zadania kodowania literą, nie możemy nic lepszego uzyskać.

Zauważ, że w przypadku kodowania tylko binarnych liczb liter, mielibyśmy obraz każdej litery z pięcioma znakami binarnymi, a informacje na znak byłyby

(dwie jednostki),

tj. zauważalnie mniej niż przy optymalnym kodowaniu liter.

Należy jednak zauważyć, że kodowanie ortograficzne wcale nie jest ekonomiczne. Faktem jest, że zawsze istnieje zależność między sąsiednimi literami dowolnego sensownego tekstu. Na przykład po samogłosce w języku rosyjskim nie może następować „ъ” lub „ь”; po syczeniu „ja” lub „yu” nie mogą znieść; po kilku spółgłoskach z rzędu wzrasta prawdopodobieństwo samogłoski itp.

Wiemy, że gdy połączy się układy zależne, całkowita entropia jest mniejsza niż suma entropii poszczególnych układów; dlatego informacja przekazywana przez kawałek połączonego tekstu jest zawsze mniejsza niż informacja na znak pomnożona przez liczbę znaków. Biorąc pod uwagę tę okoliczność, można skonstruować bardziej ekonomiczny kod, jeśli nie każda litera jest kodowana oddzielnie, ale całe „bloki” liter. Na przykład w tekście rosyjskim sensowne jest zakodowanie w całości niektórych często występujących kombinacji liter, takich jak „ts”, „ает”, „nie” itp. Zakodowane bloki są ułożone w kolejności malejącej częstotliwości, jak litery w tabeli. 18.8.1, a kodowanie binarne odbywa się zgodnie z tą samą zasadą.

W niektórych przypadkach sensowne okazuje się zakodowanie nie nawet bloków liter, ale całych znaczących fragmentów tekstu. Na przykład, aby rozładować biuro telegraficzne w święta, wskazane jest zakodowanie całych standardowych tekstów z numerami warunkowymi, takimi jak:

„Szczęśliwego Nowego Roku, życzę dobrego zdrowia i powodzenia w pracy”.

Nie zatrzymując się konkretnie na metodach kodowania blokowego, ograniczamy się do sformułowania powiązanego twierdzenia Shannona.

Niech będzie źródło informacji i odbiornik połączony kanałem komunikacyjnym (rys. 18.8.1).

Znana jest wydajność źródła informacji, tj. średnia liczba binarnych jednostek informacji pochodzących ze źródła na jednostkę czasu (liczbowo jest równa średniej entropii wiadomości wytwarzanej przez źródła w jednostce czasu). Niech ponadto znana jest pojemność kanału, tj. maksymalna ilość informacji (na przykład znaki binarne 0 lub 1), jaką kanał może przesłać w tej samej jednostce czasu. Powstaje pytanie: jaka powinna być przepustowość kanału, aby „podołał” swojemu zadaniu, czyli aby informacja ze źródła do odbiorcy dotarła bez opóźnień?

Odpowiedź na to pytanie daje pierwsze twierdzenie Shannona. Formułujemy to tutaj bez dowodu.

1. twierdzenie Shannona

Jeżeli przepustowość kanału komunikacyjnego jest większa niż entropia źródła informacji na jednostkę czasu

wtedy zawsze możliwe jest zakodowanie wystarczająco długiej wiadomości, aby została ona przekazana kanałem komunikacyjnym bez opóźnień. Jeśli wręcz przeciwnie,

wtedy transmisja informacji bez opóźnień jest niemożliwa.