Charset windows 1251 что это
Перейти к содержимому

Charset windows 1251 что это

  • автор:

Отличие кодировки windows-1251 от utf-8

Чем отличается и когда и где лучше применять один или другой:

Отслеживать

5,851 1 1 золотой знак 21 21 серебряный знак 29 29 бронзовых знаков

задан 28 окт 2011 в 17:11

2,468 22 22 золотых знака 50 50 серебряных знаков 96 96 бронзовых знаков

Победа utf-8 — неизбежна.

28 окт 2011 в 17:26

Это ясно, но сейчас, чтобы браузеры по умолчанию настроены на windows-1251 (((

28 окт 2011 в 17:33

смотря под какой ОС вы сидите 😉

28 окт 2011 в 18:27

убунту. написал для себя страничку, закодировал в utf-8. Все браузеры вместо русских букв выдали кракозябры, пока я их не заставил определять Юникод. Вот так.

28 окт 2011 в 18:47

если не лазил ручками в настройки то в linux и ubuntu в частности браузер по умолчанию выставляет кодировку локали (к примеру у меня utf8) проблеммы наблюдаются только на тех страницах где или не указана локаль или указана неверно (К примеру в заголовке utf8 а сама страница в win1251)

Атрибут charset

Указывает кодировку документа. Атрибут введен в HTML5 и предназначен для сокращения формы тега , которая задавала кодировку в предыдущих версиях HTML и XHTML.

Синтаксис

Значения

Название кодировки, например UTF-8.

Значение по умолчанию

HTML5 IE Cr Op Sa Fx

    Тег META, атрибут charset  

Типовой документ.

Не выкладывайте свой код напрямую в комментариях, он отображается некорректно. Воспользуйтесь сервисом cssdeck.com или jsfiddle.net, сохраните код и в комментариях дайте на него ссылку. Так и результат сразу увидят.

Типы тегов

HTML5

Блочные элементы

Строчные элементы

Универсальные элементы

Нестандартные теги

Осуждаемые теги

Видео

Документ

Звук

Изображения

Объекты

Скрипты

Списки

Ссылки

Таблицы

Текст

Форматирование

Формы

Фреймы

Кодировки UTF-8, Windows-1251, CP-866. или русский язык в Arduino IDE

Кодировка это процесс преобразования данных или сигналов из формы, удобной для восприятия, в форму, удобную для хранения, обработки и передачи.

Данные в микроконтроллере хранятся, обрабатываются и передаются в виде логических единиц и нулей, то есть в двоичной системе счисления. Числа можно перевести из любой системы счисления в двоичную и обратно, а символы (буквы) перевести в двоичную систему нельзя. Символы не переводятся а кодируются в числа, в соответствии с используемой таблицей символов. Таблица символов это таблица в которой каждому символу соответствует число, например, символу ‘J’ соответствует число 74. Значит в памяти Arduino символ ‘J’ будет храниться как число 0b01001010 = 0x4A = 74.

Исторически сложилось так, что было создано множество таблиц символов. Виной тому и множество алфавитов различных языков, и разные взгляды на очерёдность следования символов в таблице, и стремление разработчиков уместить все символы в 1 байт, и наоборот создать универсальные кодировки ценой увеличения занимаемого места и т.д. Но в большинстве таблиц, первые 127 символов совпадают и являются знаками, числами и символами латиницы.

Ваш компьютер не является исключением, текст на нём так же хранится в виде чисел, а значит он кодируется. При этом разные файлы могут использовать разную кодировку (использовать разные таблицы символов). Значит и скетчи хранящиеся на Вашем компьютере так же используют определённую кодировку. А именно от кодировки скетча зависит как будут записаны русские символы в микроконтроллер, ведь компилятор не кодирует текст, а читает и сохраняет его числовое (кодированное) представление.

Наиболее распространёнными кодировками с поддержкой Русского языка (с использованием символов Кириллицы) являются: UTF-8, Windows-1251, CP-866, KOI-8R, ISO-8859-5. Стоит отметить что все эти кодировки представляют один символ одним однобайтным числом, кроме кодировки UTF-8 в которой один символ Кириллицы кодируется двухбайтным числом, а значит в кодировке UTF-8 строка русского текста занимает в два раза больше памяти.

Какую кодировку использует Arduino IDE:

Точно сказать какую кодировку использует Arduino IDE нельзя, так как разные её версии использовали разную кодировку. На момент написания данной статьи последняя версия Arduino IDE 1.8.5 сохраняет скетчи в кодировке UTF-8 и монитор последовательного порта этой версии использует кодировку UTF-8. Но не сохранённые скетчи используют кодировку предыдущих версий — Windows-1251.

Попробуйте в Arduino IDE 1.8.5 создать новый скетч (меню: «Файл>Новый») и напишите в нём следующий код:

void setup() < // Serial.begin(9600); // Инициируем работу шины UART на скорости 9600 бит/сек. Serial.println("Привет"); // Отправляем текст в монитор последовательного порта. >// void loop() < // >//

Загрузите скетч в Arduino (меню: «Скетч>Загрузка»). Arduino IDE предложит Вам сохранить скетч перед загрузкой, откажитесь нажав на кнопку «Отмена», начнётся загрузка скетча в Arduino. Дождитесь завершения загрузки и откройте монитор последовательного порта (меню: «Инструменты>монитор порта»). В мониторе порта вы увидите текст «⸮⸮⸮⸮⸮⸮». Дело в том, что скетч был загружен в Arduino в кодировке Windows-1251, а монитор последовательного порта использует кодировку UTF-8.

Теперь загрузите тот же скетч в Arduino (меню: «Скетч>Загрузка»), но согласитесь с сохранением скетча, а после его загрузки откройте монитор последовательного порта (меню: «Инструменты>монитор порта»). В мониторе порта вы увидите текст «Привет». Дело в том, что теперь скетч был загружен в кодировке UTF-8 и в той же кодировке работает монитор порта. Кодировки совпали и текст стал читаемым.

Если вместо строки «Привет» Вы напишете «Privet», то в обоих случаях строка корректно отобразится в мониторе порта, так как числовое представление символов латиницы совпадает в большинстве кодировок.

Запись и вывод текста в Arduino IDE на русском языке:

Как видно из предыдущего примера, кодировка выводимого текста на русском языке должна совпадать с кодировкой устройства для которого этот текст предназначен. Но многие устройства (дисплеи, модули gsm, bluetooth и т.д.) используют кодировку отличную от UTF-8 и тогда возникает вопрос, как в скетче записать текст на русском языке?

Для записи одного символа достаточно указать его код из таблицы символов (в примере указан код в 10-тичной системе счисления):

char i = 74; // Определяем символ с кодом 74 (это код символа 'J'). void setup() < // Serial.begin(9600); // Инициируем работу шины UART на скорости 9600 бит/сек. Serial.println(i); // Отправляем символ в монитор последовательного порта. >// void loop() < // >//

В мониторе последовательного порта отобразится символ ‘J’.

Для записи любого символа в строке нужно указать его код из таблицы символов в 8-ричной системе счисления, которому должен предшествовать обратный слеш «\». Данное правило действует для любых строк в Arduino IDE.

char i[]="\110\145\154\154\157"; // Определяем строку из 5 кодов символов "Hello". Символ конца строки добавляется автоматически. void setup() < // Serial.begin(9600); // Инициируем работу шины UART на скорости 9600 бит/сек. Serial.println(i); // Отправляем строку в монитор последовательного порта. >// void loop() < // >//

Не смотря на то что запись строки «i» кажется громоздкой, она занимает всего 6 байт (5 символов + автоматически добавленный символ конца строки). В мониторе последовательного порта отобразится строка «Hello».

Для записи символов и строк на русском языке действуют те же правила:

char i[] = "\320\237\321\200\320\270\320\262\320\265\321\202"; // текст "Привет" в кодировке UTF-8. char j[] = "\317\360\350\342\345\362"; // текст "Привет" в кодировке Windows-1251. char k[] = "\217\340\250\242\245\342"; // текст "Привет" в кодировке CP-866. char l[] = "\360\322\311\327\305\324"; // текст "Привет" в кодировке KOI-8R. char m[] = "\277\340\330\322\325\342"; // текст "Привет" в кодировке ISO-8859-5. char n[] = "Привет"; // текст "Привет" в кодировке файла скетча.

В данном примере строки «j», «k», «l» и «m» занимают по 7 байт (6 символов + автоматически добавленный символ конца строки), а строка «i» занимает 13 байт (6 символов по 2 байта каждый + автоматически добавленный символ конца строки). Строка «n» может занимать либо 7, либо 13 байт, это зависит от кодировки используемой Arduino IDE.

Если в тексте с символами Кириллицы присутствуют числа, знаки или символы латиницы, то символы Кириллицы пишутся кодами, а символы знаков, цифр и латиницы можно писать символами, так как они будут корректно отображаться для практически любой кодировки.

char m[] = "\277\340\330\322\325\342 - Hello"; // текст "Привет - Hello" в кодировке ISO-8859-5.

Таблица символов:

В таблице каждому символу сопоставлен его код в десятичной , шестнадцатеричной и восьмеричной системах счисления. Для указания символа в строке, используется его код записанный в восьмеричной системе счисления (указан в таблице серым цветом и начинается обратным слешем).

Симв: UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
пробел 32 0x20 \40 32 0x20 \40 32 0x20 \40 32 0x20 \40 32 0x20 \40
! 33 0x21 \41 33 0x21 \41 33 0x21 \41 33 0x21 \41 33 0x21 \41
« 34 0x22 \42 34 0x22 \42 34 0x22 \42 34 0x22 \42 34 0x22 \42
# 35 0x23 \43 35 0x23 \43 35 0x23 \43 35 0x23 \43 35 0x23 \43
$ 36 0x24 \44 36 0x24 \44 36 0x24 \44 36 0x24 \44 36 0x24 \44
% 37 0x25 \45 37 0x25 \45 37 0x25 \45 37 0x25 \45 37 0x25 \45
& 38 0x26 \46 38 0x26 \46 38 0x26 \46 38 0x26 \46 38 0x26 \46
39 0x27 \47 39 0x27 \47 39 0x27 \47 39 0x27 \47 39 0x27 \74
( 40 0x28 \50 40 0x28 \50 40 0x28 \50 40 0x28 \50 40 0x28 \50
) 41 0x29 \51 41 0x29 \51 41 0x29 \51 41 0x29 \51 41 0x29 \51
* 42 0x2A \52 42 0x2A \52 42 0x2A \52 42 0x2A \52 42 0x2A \52
+ 43 0x2B \53 43 0x2B \53 43 0x2B \53 43 0x2B \53 43 0x2B \53
, 44 0x2C \54 44 0x2C \54 44 0x2C \54 44 0x2C \54 44 0x2C \54
45 0x2D \55 45 0x2D \55 45 0x2D \55 45 0x2D \55 45 0x2D \55
. 46 0x2E \56 46 0x2E \56 46 0x2E \56 46 0x2E \56 46 0x2E \56
/ 47 0x2F \57 47 0x2F \57 47 0x2F \57 47 0x2F \57 47 0x2F \57
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
0 48 0x30 \60 48 0x30 \60 48 0x30 \60 48 0x30 \60 48 0x30 \60
1 49 0x31 \61 49 0x31 \61 49 0x31 \61 49 0x31 \61 49 0x31 \61
2 50 0x32 \62 50 0x32 \62 50 0x32 \62 50 0x32 \62 50 0x32 \62
3 51 0x33 \63 51 0x33 \63 51 0x33 \63 51 0x33 \63 51 0x33 \63
4 52 0x34 \64 52 0x34 \64 52 0x34 \64 52 0x34 \64 52 0x34 \64
5 53 0x35 \65 53 0x35 \65 53 0x35 \65 53 0x35 \65 53 0x35 \65
6 54 0x36 \66 54 0x36 \66 54 0x36 \66 54 0x36 \66 54 0x36 \66
7 55 0x37 \67 55 0x37 \67 55 0x37 \67 55 0x37 \67 55 0x37 \74
8 56 0x38 \70 56 0x38 \70 56 0x38 \70 56 0x38 \70 56 0x38 \70
9 57 0x39 \71 57 0x39 \71 57 0x39 \71 57 0x39 \71 57 0x39 \71
: 58 0x3A \72 58 0x3A \72 58 0x3A \72 58 0x3A \72 58 0x3A \72
; 59 0x3B \73 59 0x3B \73 59 0x3B \73 59 0x3B \73 59 0x3B \73
60 0x3C \74 60 0x3C \74 60 0x3C \74 60 0x3C \74 60 0x3C \74
= 61 0x3D \75 61 0x3D \75 61 0x3D \75 61 0x3D \75 61 0x3D \75
> 62 0x3E \76 62 0x3E \76 62 0x3E \76 62 0x3E \76 62 0x3E \76
? 63 0x3F \77 63 0x3F \77 63 0x3F \77 63 0x3F \77 63 0x3F \77
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
@ 64 0x40 \100 64 0x40 \100 64 0x40 \100 64 0x40 \100 64 0x40 \100
A 65 0x41 \101 65 0x41 \101 65 0x41 \101 65 0x41 \101 65 0x41 \101
B 66 0x42 \102 66 0x42 \102 66 0x42 \102 66 0x42 \102 66 0x42 \102
C 67 0x43 \103 67 0x43 \103 67 0x43 \103 67 0x43 \103 67 0x43 \103
D 68 0x44 \104 68 0x44 \104 68 0x44 \104 68 0x44 \104 68 0x44 \104
E 69 0x45 \105 69 0x45 \105 69 0x45 \105 69 0x45 \105 69 0x45 \105
F 70 0x46 \106 70 0x46 \106 70 0x46 \106 70 0x46 \106 70 0x46 \106
G 71 0x47 \107 71 0x47 \107 71 0x47 \107 71 0x47 \107 71 0x47 \114
H 72 0x48 \110 72 0x48 \110 72 0x48 \110 72 0x48 \110 72 0x48 \110
I 73 0x49 \111 73 0x49 \111 73 0x49 \111 73 0x49 \111 73 0x49 \111
J 74 0x4A \112 74 0x4A \112 74 0x4A \112 74 0x4A \112 74 0x4A \112
K 75 0x4B \113 75 0x4B \113 75 0x4B \113 75 0x4B \113 75 0x4B \113
L 76 0x4C \114 76 0x4C \114 76 0x4C \114 76 0x4C \114 76 0x4C \114
M 77 0x4D \115 77 0x4D \115 77 0x4D \115 77 0x4D \115 77 0x4D \115
N 78 0x4E \116 78 0x4E \116 78 0x4E \116 78 0x4E \116 78 0x4E \116
O 79 0x4F \117 79 0x4F \117 79 0x4F \117 79 0x4F \117 79 0x4F \117
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
P 80 0x50 \120 80 0x50 \120 80 0x50 \120 80 0x50 \120 80 0x50 \120
Q 81 0x51 \121 81 0x51 \121 81 0x51 \121 81 0x51 \121 81 0x51 \121
R 82 0x52 \122 82 0x52 \122 82 0x52 \122 82 0x52 \122 82 0x52 \122
S 83 0x53 \123 83 0x53 \123 83 0x53 \123 83 0x53 \123 83 0x53 \123
T 84 0x54 \124 84 0x54 \124 84 0x54 \124 84 0x54 \124 84 0x54 \124
U 85 0x55 \125 85 0x55 \125 85 0x55 \125 85 0x55 \125 85 0x55 \125
V 86 0x56 \126 86 0x56 \126 86 0x56 \126 86 0x56 \126 86 0x56 \126
W 87 0x57 \127 87 0x57 \127 87 0x57 \127 87 0x57 \127 87 0x57 \134
X 88 0x58 \130 88 0x58 \130 88 0x58 \130 88 0x58 \130 88 0x58 \130
Y 89 0x59 \131 89 0x59 \131 89 0x59 \131 89 0x59 \131 89 0x59 \131
Z 90 0x5A \132 90 0x5A \132 90 0x5A \132 90 0x5A \132 90 0x5A \132
[ 91 0x5B \133 91 0x5B \133 91 0x5B \133 91 0x5B \133 91 0x5B \133
\ 92 0x5C \134 92 0x5C \134 92 0x5C \134 92 0x5C \134 92 0x5C \134
] 93 0x5D \135 93 0x5D \135 93 0x5D \135 93 0x5D \135 93 0x5D \135
^ 94 0x5E \136 94 0x5E \136 94 0x5E \136 94 0x5E \136 94 0x5E \136
_ 95 0x5F \137 95 0x5F \137 95 0x5F \137 95 0x5F \137 95 0x5F \137
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
` 96 0x60 \140 96 0x60 \140 96 0x60 \140 96 0x60 \140 96 0x60 \140
a 97 0x61 \141 97 0x61 \141 97 0x61 \141 97 0x61 \141 97 0x61 \141
b 98 0x62 \142 98 0x62 \142 98 0x62 \142 98 0x62 \142 98 0x62 \142
c 99 0x63 \143 99 0x63 \143 99 0x63 \143 99 0x63 \143 99 0x63 \143
d 100 0x64 \144 100 0x64 \144 100 0x64 \144 100 0x64 \144 100 0x64 \144
e 101 0x65 \145 101 0x65 \145 101 0x65 \145 101 0x65 \145 101 0x65 \145
f 102 0x66 \146 102 0x66 \146 102 0x66 \146 102 0x66 \146 102 0x66 \146
g 103 0x67 \147 103 0x67 \147 103 0x67 \147 103 0x67 \147 103 0x67 \154
h 104 0x68 \150 104 0x68 \150 104 0x68 \150 104 0x68 \150 104 0x68 \150
i 105 0x69 \151 105 0x69 \151 105 0x69 \151 105 0x69 \151 105 0x69 \151
j 106 0x6A \152 106 0x6A \152 106 0x6A \152 106 0x6A \152 106 0x6A \152
k 107 0x6B \153 107 0x6B \153 107 0x6B \153 107 0x6B \153 107 0x6B \153
l 108 0x6C \154 108 0x6C \154 108 0x6C \154 108 0x6C \154 108 0x6C \154
m 109 0x6D \155 109 0x6D \155 109 0x6D \155 109 0x6D \155 109 0x6D \155
n 110 0x6E \156 110 0x6E \156 110 0x6E \156 110 0x6E \156 110 0x6E \156
o 111 0x6F \157 111 0x6F \157 111 0x6F \157 111 0x6F \157 111 0x6F \157
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
p 112 0x70 \160 112 0x70 \160 112 0x70 \160 112 0x70 \160 112 0x70 \160
q 113 0x71 \161 113 0x71 \161 113 0x71 \161 113 0x71 \161 113 0x71 \161
r 114 0x72 \162 114 0x72 \162 114 0x72 \162 114 0x72 \162 114 0x72 \162
s 115 0x73 \163 115 0x73 \163 115 0x73 \163 115 0x73 \163 115 0x73 \163
t 116 0x74 \164 116 0x74 \164 116 0x74 \164 116 0x74 \164 116 0x74 \164
u 117 0x75 \165 117 0x75 \165 117 0x75 \165 117 0x75 \165 117 0x75 \165
v 118 0x76 \166 118 0x76 \166 118 0x76 \166 118 0x76 \166 118 0x76 \166
w 119 0x77 \167 119 0x77 \167 119 0x77 \167 119 0x77 \167 119 0x77 \174
x 120 0x78 \170 120 0x78 \170 120 0x78 \170 120 0x78 \170 120 0x78 \170
y 121 0x79 \171 121 0x79 \171 121 0x79 \171 121 0x79 \171 121 0x79 \171
z 122 0x7A \172 122 0x7A \172 122 0x7A \172 122 0x7A \172 122 0x7A \172
123 0x7B \173 123 0x7B \173 123 0x7B \173 123 0x7B \173 123 0x7B \173
| 124 0x7C \174 124 0x7C \174 124 0x7C \174 124 0x7C \174 124 0x7C \174
> 125 0x7D \175 125 0x7D \175 125 0x7D \175 125 0x7D \175 125 0x7D \175
~ 126 0x7E \176 126 0x7E \176 126 0x7E \176 126 0x7E \176 126 0x7E \176
127 0x7F \177 127 0x7F \177 127 0x7F \177 127 0x7F \177 127 0x7F \177
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
А 208, 144 0xD0, 0x90 \320\220 192 0xC0 \300 128 0x80 \200 225 0xE1 \341 176 0xB0 \260
Б 208, 145 0xD0, 0x91 \320\221 193 0xC1 \301 129 0x81 \201 226 0xE2 \342 177 0xB1 \261
В 208, 146 0xD0, 0x92 \320\222 194 0xC2 \302 130 0x82 \202 247 0xF7 \367 178 0xB2 \262
Г 208, 147 0xD0, 0x93 \320\223 195 0xC3 \303 131 0x83 \203 231 0xE7 \347 179 0xB3 \263
Д 208, 148 0xD0, 0x94 \320\224 196 0xC4 \304 132 0x84 \204 228 0xE4 \344 180 0xB4 \264
Е 208, 149 0xD0, 0x95 \320\225 197 0xC5 \305 133 0x85 \205 229 0xE5 \345 181 0xB5 \265
Ж 208, 150 0xD0, 0x96 \320\226 198 0xC6 \306 134 0x86 \206 246 0xF6 \366 182 0xB6 \266
З 208, 151 0xD0, 0x97 \320\227 199 0xC7 \307 135 0x87 \207 250 0xFA \372 183 0xB7 \267
И 208, 152 0xD0, 0x98 \320\230 200 0xC8 \310 136 0x88 \210 233 0xE9 \351 184 0xB8 \270
Й 208, 153 0xD0, 0x99 \320\231 201 0xC9 \311 137 0x89 \211 234 0xEA \352 185 0xB9 \271
К 208, 154 0xD0, 0x9A \320\232 202 0xCA \312 138 0x8A \212 235 0xEB \353 186 0xBA \272
Л 208, 155 0xD0, 0x9B \320\233 203 0xCB \313 139 0x8B \213 236 0xEC \354 187 0xBB \273
М 208, 156 0xD0, 0x9C \320\234 204 0xCC \314 140 0x8C \214 237 0xED \355 188 0xBC \274
Н 208, 157 0xD0, 0x9D \320\235 205 0xCD \315 141 0x8D \215 238 0xEE \356 189 0xBD \275
О 208, 158 0xD0, 0x9E \320\236 206 0xCE \316 142 0x8E \216 239 0xEF \357 190 0xBE \276
П 208, 159 0xD0, 0x9F \320\237 207 0xCF \317 143 0x8F \217 240 0xF0 \360 191 0xBF \277
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
Р 208, 160 0xD0, 0xA0 \320\240 208 0xD0 \320 144 0x90 \220 242 0xF2 \362 192 0xC0 \300
С 208, 161 0xD0, 0xA1 \320\241 209 0xD1 \321 145 0x91 \221 243 0xF3 \363 193 0xC1 \301
Т 208, 162 0xD0, 0xA2 \320\242 210 0xD2 \322 146 0x92 \222 244 0xF4 \364 194 0xC2 \302
У 208, 163 0xD0, 0xA3 \320\243 211 0xD3 \323 147 0x93 \223 245 0xF5 \365 195 0xC3 \303
Ф 208, 164 0xD0, 0xA4 \320\244 212 0xD4 \324 148 0x94 \224 230 0xE6 \346 196 0xC4 \304
Х 208, 165 0xD0, 0xA5 \320\245 213 0xD5 \325 149 0x95 \225 232 0xE8 \350 197 0xC5 \305
Ц 208, 166 0xD0, 0xA6 \320\246 214 0xD6 \326 150 0x96 \226 227 0xE3 \343 198 0xC6 \306
Ч 208, 167 0xD0, 0xA7 \320\247 215 0xD7 \327 151 0x97 \227 254 0xFE \376 199 0xC7 \307
Ш 208, 168 0xD0, 0xA8 \320\250 216 0xD8 \330 152 0x98 \230 251 0xFB \373 200 0xC8 \310
Щ 208, 169 0xD0, 0xA9 \320\251 217 0xD9 \331 153 0x99 \231 253 0xFD \375 201 0xC9 \311
Ъ 208, 170 0xD0, 0xAA \320\252 218 0xDA \332 154 0x9A \232 255 0xFF \377 202 0xCA \312
Ы 208, 171 0xD0, 0xAB \320\253 219 0xDB \333 155 0x9B \233 249 0xF9 \371 203 0xCB \313
Ь 208, 172 0xD0, 0xAC \320\254 220 0xDC \334 156 0x9C \234 248 0xF8 \370 204 0xCC \314
Э 208, 173 0xD0, 0xAD \320\255 221 0xDD \335 157 0x9D \235 252 0xFC \374 205 0xCD \315
Ю 208, 174 0xD0, 0xAE \320\256 222 0xDE \336 158 0x9E \236 224 0xE0 \340 206 0xCE \316
Я 208, 175 0xD0, 0xAF \320\257 223 0xDF \337 159 0x9F \237 241 0xF1 \361 207 0xCF \317
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
а 208, 176 0xD0, 0xB0 \320\260 224 0xE0 \340 160 0xA0 \240 193 0xC1 \301 208 0xD0 \320
б 208, 177 0xD0, 0xB1 \320\261 225 0xE1 \341 161 0xA1 \241 194 0xC2 \302 209 0xD1 \321
в 208, 178 0xD0, 0xB2 \320\262 226 0xE2 \342 162 0xA2 \242 215 0xD7 \327 210 0xD2 \322
г 208, 179 0xD0, 0xB3 \320\263 227 0xE3 \343 163 0xA3 \243 199 0xC7 \307 211 0xD3 \323
д 208, 180 0xD0, 0xB4 \320\264 228 0xE4 \344 164 0xA4 \244 196 0xC4 \304 212 0xD4 \324
е 208, 181 0xD0, 0xB5 \320\265 229 0xE5 \345 165 0xA5 \245 197 0xC5 \305 213 0xD5 \325
ж 208, 182 0xD0, 0xB6 \320\266 230 0xE6 \346 166 0xA6 \246 214 0xD6 \326 214 0xD6 \326
з 208, 183 0xD0, 0xB7 \320\267 231 0xE7 \347 167 0xA7 \247 218 0xDA \332 215 0xD7 \327
и 208, 184 0xD0, 0xB8 \320\270 232 0xE8 \350 168 0xA8 \250 201 0xC9 \311 216 0xD8 \330
й 208, 185 0xD0, 0xB9 \320\271 233 0xE9 \351 169 0xA9 \251 202 0xCA \312 217 0xD9 \331
к 208, 186 0xD0, 0xBA \320\272 234 0xEA \352 170 0xAA \252 203 0xCB \313 218 0xDA \332
л 208, 187 0xD0, 0xBB \320\273 235 0xEB \353 171 0xAB \253 204 0xCC \314 219 0xDB \333
м 208, 188 0xD0, 0xBC \320\274 236 0xEC \354 172 0xAC \254 205 0xCD \315 220 0xDC \334
н 208, 189 0xD0, 0xBD \320\275 237 0xED \355 173 0xAD \255 206 0xCE \316 221 0xDD \335
о 208, 190 0xD0, 0xBE \320\276 238 0xEE \356 174 0xAE \256 207 0xCF \317 222 0xDE \336
п 208, 191 0xD0, 0xBF \320\277 239 0xEF \357 175 0xAF \257 208 0xD0 \320 223 0xDF \337
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
р 209, 128 0xD1, 0x80 \321\200 240 0xF0 \360 224 0xE0 \340 210 0xD2 \322 224 0xE0 \340
с 209, 129 0xD1, 0x81 \321\201 241 0xF1 \361 225 0xE1 \341 211 0xD3 \323 225 0xE1 \341
т 209, 130 0xD1, 0x82 \321\202 242 0xF2 \362 226 0xE2 \342 212 0xD4 \324 226 0xE2 \342
у 209, 131 0xD1, 0x83 \321\203 243 0xF3 \363 227 0xE3 \343 213 0xD5 \325 227 0xE3 \343
ф 209, 132 0xD1, 0x84 \321\204 244 0xF4 \364 228 0xE4 \344 198 0xC6 \306 228 0xE4 \344
х 209, 133 0xD1, 0x85 \321\205 245 0xF5 \365 229 0xE5 \345 200 0xC8 \310 229 0xE5 \345
ц 209, 134 0xD1, 0x86 \321\206 246 0xF6 \366 230 0xE6 \346 195 0xC3 \303 230 0xE6 \346
ч 209, 135 0xD1, 0x87 \321\207 247 0xF7 \367 231 0xE7 \347 222 0xDE \336 231 0xE7 \347
ш 209, 136 0xD1, 0x88 \321\210 248 0xF8 \370 232 0xE8 \350 219 0xDB \333 232 0xE8 \350
щ 209, 137 0xD1, 0x89 \321\211 249 0xF9 \371 233 0xE9 \351 221 0xDD \335 233 0xE9 \351
ъ 209, 138 0xD1, 0x8A \321\212 250 0xFA \372 234 0xEA \352 223 0xDF \337 234 0xEA \352
ы 209, 139 0xD1, 0x8B \321\213 251 0xFB \373 235 0xEB \353 217 0xD9 \331 235 0xEB \353
ь 209, 140 0xD1, 0x8C \321\214 252 0xFC \374 236 0xEC \354 216 0xD8 \330 236 0xEC \354
э 209, 141 0xD1, 0x8D \321\215 253 0xFD \375 237 0xED \355 220 0xDC \334 237 0xED \355
ю 209, 142 0xD1, 0x8E \321\216 254 0xFE \376 238 0xEE \356 192 0xC0 \300 238 0xEE \356
я 209, 143 0xD1, 0x8F \321\217 255 0xFF \377 239 0xEF \357 209 0xD1 \321 239 0xEF \357
UTF-8 Win-1251 CP-866 KOI-8R ISO-8859-5
Ё 208, 129 0xD0, 0x81 \320\201 168 0xA8 \250 240 0xF0 \360 179 0xB3 \263 161 0xA1 \241
ё 209, 145 0xD1, 0x91 \321\221 184 0xB8 \270 241 0xF1 \361 163 0xA3 \243 241 0xF1 \361

В данной таблице символов указаны сразу 5 кодировок: «UTF-8», «Windows-1251», «CP-866», «KOI-8R» и «ISO-8859-5». Коды символов от 0 до 127 совпадают для всех кодировок. В кодировке «UTF-8» символы Кириллицы занимают 2 байта, следовательно, для них указано 2 числа.

Стоит отметить кодировку «KOI-8R» в которой (в отличии от остальных) на первый взгляд не просматривается закономерность следования кодов, но на самом деле закономерность есть и заключается она в том, что если сбросить старший бит, то код символа Кириллицы превратится в код сходного по произношению символа латиницы, и наоборот. Например символ «л» записывается кодом 0xCC, если сбросить старший бит то получится 0x4C, а это код символа «L». Значит, если в тексте из символов Кириллицы сбросить старшие биты кода каждого символа, то получится «читаемый» текст из символов латиницы, подобный транслиту.

Примечание:

К недостаткам записи строк кодами символов относится то, что строки в скетче становятся не удобочитаемыми. В качестве альтернативного варианта можно создать функцию преобразования кодировки строк перед их выводом, или хранить строки из символов Кириллицы в отдельном, подключаемом, файле, который будет сохранён в требуемой для вывода кодировке.

Кодировка символов Windows-1251

Windows-1251 — набор символов и кодировка, являющаяся стандартной 8-битной кодировкой для всех русских версий Microsoft Windows. Данная кодировка пользуется довольно большой популярностью в восточно-европейских странах. Windows-1251 выгодно отличается от других 8-битных кириллических кодировок (таких как CP866, KOI8-R и ISO 8859-5) наличием практически всех символов, использующихся в традиционной русской типографике для обычного текста (отсутствует только знак ударения). Кириллические символы идут в алфавитном порядке.
Windows-1251 также содержит все символы для близких к русскому языку языков: белорусского, украинского, сербского, македонского и болгарского.
На практике этого оказалось достаточно, чтобы кодировка Windows-1251 закрепилась в интернете вплоть до распространения UTF-8.

Таблица кодов символов Windows-1251

Dec Hex Символ Dec Hex Символ 000 00 NOP 128 80 Ђ 001 01 SOH 129 81 Ѓ 002 02 STX 130 82 ‚ 003 03 ETX 131 83 ѓ 004 04 EOT 132 84 „ 005 05 ENQ 133 85 … 006 06 ACK 134 86 † 007 07 BEL 135 87 ‡ 008 08 BS 136 88 € 009 09 TAB 137 89 ‰ 010 0A LF 138 8A Љ 011 0B VT 139 8B ‹ 012 0C FF 140 8C Њ 013 0D CR 141 8D Ќ 014 0E SO 142 8E Ћ 015 0F SI 143 8F Џ 016 10 DLE 144 90 ђ 017 11 DC1 145 91 ‘ 018 12 DC2 146 92 ’ 019 13 DC3 147 93 “ 020 14 DC4 148 94 ” 021 15 NAK 149 95 • 022 16 SYN 150 96 – 023 17 ETB 151 97 — 024 18 CAN 152 98 025 19 EM 153 99 ™ 026 1A SUB 154 9A љ 027 1B ESC 155 9B › 028 1C FS 156 9C њ 029 1D GS 157 9D ќ 030 1E RS 158 9E ћ 031 1F US 159 9F џ 032 20 SP 160 A0 033 21 ! 161 A1 Ў 034 22 « 162 A2 ў 035 23 # 163 A3 Ћ 036 24 $ 164 A4 ¤ 037 25 % 165 A5 Ґ 038 26 & 166 A6 ¦ 039 27 ‘ 167 A7 § 040 28 ( 168 A8 Ё 041 29 ) 169 A9 © 042 2A * 170 AA Є 043 2B + 171 AB « 044 2C , 172 AC ¬ 045 2D — 173 AD ­ 046 2E . 174 AE ® 047 2F / 175 AF Ї 048 30 0 176 B0 ° 049 31 1 177 B1 ± 050 32 2 178 B2 І 051 33 3 179 B3 і 052 34 4 180 B4 ґ 053 35 5 181 B5 µ 054 36 6 182 B6 ¶ 055 37 7 183 B7 · 056 38 8 184 B8 ё 057 39 9 185 B9 № 058 3A : 186 BA є 059 3B ; 187 BB » 060 3C 188 BC ј 061 3D = 189 BD Ѕ 062 3E > 190 BE ѕ 063 3F ? 191 BF ї 064 40 @ 192 C0 А 065 41 A 193 C1 Б 066 42 B 194 C2 В 067 43 C 195 C3 Г 068 44 D 196 C4 Д 069 45 E 197 C5 Е 070 46 F 198 C6 Ж 071 47 G 199 C7 З 072 48 H 200 C8 И 073 49 I 201 C9 Й 074 4A J 202 CA К 075 4B K 203 CB Л 076 4C L 204 CC М 077 4D M 205 CD Н 078 4E N 206 CE О 079 4F O 207 CF П 080 50 P 208 D0 Р 081 51 Q 209 D1 С 082 52 R 210 D2 Т 083 53 S 211 D3 У 084 54 T 212 D4 Ф 085 55 U 213 D5 Х 086 56 V 214 D6 Ц 087 57 W 215 D7 Ч 088 58 X 216 D8 Ш 089 59 Y 217 D9 Щ 090 5A Z 218 DA Ъ 091 5B [ 219 DB Ы 092 5C \ 220 DC Ь 093 5D ] 221 DD Э 094 5E ^ 222 DE Ю 095 5F _ 223 DF Я 096 60 ` 224 E0 а 097 61 a 225 E1 б 098 62 b 226 E2 в 099 63 c 227 E3 г 100 64 d 228 E4 д 101 65 e 229 E5 е 102 66 f 230 E6 ж 103 67 g 231 E7 з 104 68 h 232 E8 и 105 69 i 233 E9 й 106 6A j 234 EA к 107 6B k 235 EB л 108 6C l 236 EC м 109 6D m 237 ED н 110 6E n 238 EE о 111 6F o 239 EF п 112 70 p 240 F0 р 113 71 q 241 F1 с 114 72 r 242 F2 т 115 73 s 243 F3 у 116 74 t 244 F4 ф 117 75 u 245 F5 х 118 76 v 246 F6 ц 119 77 w 247 F7 ч 120 78 x 248 F8 ш 121 79 y 249 F9 щ 122 7A z 250 FA ъ 123 7B 251 FB ы 124 7C | 252 FC ь 125 7D > 253 FD э 126 7E ~ 254 FE ю 127 7F DEL 255 FF я

Описание специальных (управляющих) символов

Первоначально управляющие символы таблицы ASCII (диапазон 00-31, плюс 127) были разработаны для того, чтобы управлять устройствами аппаратных средств, таких как телетайп, ввод данных на перфоленту и др.
Управляющие символы (кроме горизонтальной табуляции, перевода строки и возврата каретки) не используются в HTML-документах.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *