Кодирование символов
Кодировка символов (часто называемая также кодовой страницей ) – это набор числовых значений, которые ставятся в соответствие группе алфавитно-цифровых символов, знаков пунктуации и специальных символов.
Для кодировки символов в Windows используется таблица ASCII (American Standard Code for Interchange of Information).
В ASCII первые 128 символов всех кодовых страниц состоят из базовой таблицы символов. Первые 32 кода базовой таблицы, начиная с нулевого, размещают управляющие коды.
Символ | Код | Клавиши | Значение |
nul | Ctrl + @ | Нуль | |
soh | 1 | Ctrl + A | Начало заголовка |
stx | 2 | Ctrl + B | Начало текста |
etx | 3 | Ctrl + C | Конец текста |
eot | 4 | Ctrl + D | Конец передачи |
enq | 5 | Ctrl + E | Запрос |
ack | 6 | Ctrl + F | Подтверждение |
bel | 7 | Ctrl + G | Сигнал (звонок) |
bs | 8 | Ctrl + H | Забой (шаг назад) |
ht | 9 | Ctrl + I | Горизонтальная табуляция |
lf | 10 | Ctrl + J | Перевод строки |
vt | 11 | Ctrl + K | Вертикальная табуляция |
ff | 12 | Ctrl + L | Новая страница |
cr | 13 | Ctrl + M | Возврат каретки |
so | 14 | Ctrl + N | Выключить сдвиг |
si | 15 | Ctrl + O | Включить сдвиг |
dle | 16 | Ctrl + P | Ключ связи данных |
dc1 | 17 | Ctrl + Q | Управление устройством 1 |
dc2 | 18 | Ctrl + R | Управление устройством 2 |
dc3 | 19 | Ctrl + S | Управление устройством 3 |
dc4 | 20 | Ctrl + T | Управление устройством 4 |
nak | 21 | Ctrl + U | Отрицательное подтверждение |
syn | 22 | Ctrl + V | Синхронизация |
etb | 23 | Ctrl + W | Конец передаваемого блока |
can | 24 | Ctrl + X | Отказ |
em | 25 | Ctrl + Y | Конец среды |
sub | 26 | Ctrl + Z | Замена |
esc | 27 | Ctrl + [ | Ключ |
fs | 28 | Ctrl + \ | Разделитель файлов |
gs | 29 | Ctrl + ] | Разделитель группы |
rs | 30 | Ctrl + ^ | Разделитель записей |
us | 31 | Ctrl + _ | Разделитель модулей |
Базовая таблица кодировки ASCII
32 пробел | 48 0 | 64 @ | 80 P | 96 ` | 112 p |
33 ! | 49 1 | 65 A | 81 Q | 97 a | 113 q |
34 “ | 50 2 | 66 B | 82 R | 98 b | 114 r |
35 # | 51 3 | 67 C | 83 S | 99 c | 115 s |
36 $ | 52 4 | 68 D | 84 T | 100 d | 116 t |
37 % | 53 5 | 69 E | 85 U | 101 e | 117 u |
38 & | 54 6 | 70 F | 86 V | 102 f | 118 v |
39 ‘ | 55 7 | 71 G | 87 W | 103 g | 119 w |
40 ( | 56 8 | 72 H | 88 X | 104 h | 120 x |
41 ) | 57 9 | 73 I | 89 Y | 105 i | 121 y |
42 * | 58 : | 74 J | 90 Z | 106 j | 122 z |
43 + | 59 ; | 75 K | 91 [ | 107 k | 123 < |
44 , | 60 | 78 N | 94 ^ | 110 n | 126 |
Символы с номерами от 128 до 255 представляют собой таблицу расширения и варьируются в зависимости от набора скриптов, представленных кодировкой символов. Набор символов таблицы расширения различается в зависимости от выбранной кодовой страницы:
1251 – кодовая страница Windows
128 Ђ | 144 Ђ | 160 | 176 ° | 192 А | 208 Р | 224 а | 240 р |
129 Ѓ | 145 ‘ | 161 Ў | 177 ± | 193 Б | 209 С | 225 б | 241 с |
130 ‚ | 146 ’ | 162 ў | 178 I | 194 В | 210 Т | 226 в | 242 т |
131 ѓ | 147 “ | 163 J | 179 i | 195 Г | 211 У | 227 г | 243 у |
132 „ | 148 ” | 164 ¤ | 180 ґ | 196 Д | 212 Ф | 228 д | 244 ф |
133 … | 149 • | 165 Ґ | 181 μ | 197 Е | 213 Х | 229 е | 245 х |
134 † | 150 – | 166 ¦ | 182 ¶ | 198 Ж | 214 Ц | 230 ж | 246 ц |
135 ‡ | 151 — | 167 § | 183 · | 199 З | 215 Ч | 231 з | 247 ч |
136 € | 152 □ | 168 Ё | 184 ё | 200 И | 216 Ш | 232 и | 248 ш |
137 ‰ | 153 ™ | 169 © | 185 № | 201 Й | 217 Щ | 233 й | 249 щ |
138 Љ | 154 љ | 170 Є | 186 є | 202 К | 218 Ъ | 234 к | 250 ъ |
139 | 171 « | 187 » | 203 Л | 219 Ы | 235 л | 251 ы | |
140 Њ | 156 њ | 172 ¬ | 188 j | 204 М | 220 Ь | 236 м | 252 ь |
141 Ќ | 157 ќ | 173 | 189 S | 205 Н | 221 Э | 237 н | 253 э |
142 Ћ | 158 ћ | 174 ® | 190 s | 206 О | 222 Ю | 238 о | 254 ю |
143 Џ | 159 џ | 175 Ï | 191 ї | 207 П | 223 Я | 239 п | 255 я |
866 – кодовая страница DOS
128 А | 144 Р | 160 а | 176 ░ | 192 └ | 208 ╨ | 224 р | 240 ≡Ё |
129 Б | 145 С | 161 б | 177 ▒ | 193 ┴ | 209 ╤ | 225 с | 241 ±ё |
130 В | 146 Т | 162 в | 178 ▓ | 194 ┬ | 210 ╥ | 226 т | 242 ≥ |
131 Г | 147 У | 163 г | 179 │ | 195 ├ | 211 ╙ | 227 у | 243 ≤ |
132 Д | 148 Ф | 164 д | 180 ┤ | 196 ─ | 212 ╘ | 228 ф | 244 ⌠ |
133 Е | 149 Х | 165 е | 181 ╡ | 197 ┼ | 213 ╒ | 229 х | 245 ⌡ |
134 Ж | 150 Ц | 166 ж | 182 ╢ | 198 ╞ | 214 ╓ | 230 ц | 246 ¸ |
135 З | 151 Ч | 167 з | 183 ╖ | 199 ╟ | 215 ╫ | 231 ч | 247 » |
136 И | 152 Ш | 168 и | 184 ╕ | 200 ╚ | 216 ╪ | 232 ш | 248 ° |
137 Й | 153 Щ | 169 й | 185 ╣ | 201 ╔ | 217 ┘ | 233 щ | 249 · |
138 К | 154 Ъ | 170 к | 186 ║ | 202 ╩ | 218 ┌ | 234 ъ | 250 ∙ |
139 Л | 155 Ы | 171 л | 187 ╗ | 203 ╦ | 219 █ | 235 ы | 251 √ |
140 М | 156 Ь | 172 м | 188 ╝ | 204 ╠ | 220 ▄ | 236 ь | 252 ⁿ |
141 Н | 157 Э | 173 н | 189 ╜ | 205 ═ | 221 ▌ | 237 э | 253 ² |
142 О | 158 Ю | 174 о | 190 ╛ | 206 ╬ | 222 ▐ | 238 ю | 254 ■ |
143 П | 159 Я | 175 п | 191 ┐ | 207 ╧ | 223 ▀ | 239 я | 255 |
Русские названия основных спецсимволов:
Символ | Название |
` | гравис, кавычка, обратный машинописный апостроф |
` | гравис, кавычка, обратный машинописный апостроф |
тильда | |
! | восклицательный знак |
@ | эт, коммерческое эт, «собака» |
# | октоторп, решетка, диез |
$ | знак доллара |
% | процент |
^ | циркумфлекс, знак вставки |
& | амперсанд |
* | астериск, звездочка, знак умножения |
( | левая открывающая круглая скобка |
) | правая закрывающая круглая скобка |
— | минус, дефис |
_ | знак подчеркивания |
= | знак равенства |
+ | плюс |
[ | левая открывающая квадратная скобка |
] | правая закрывающая квадратная скобка |
< | левая открывающая фигурная скобка |
> | правая закрывающая фигурная скобка |
; | точка с запятой |
: | двоеточие |
‘ | машинописный апостроф, одинарная кавычка |
« | двойная кавычка |
, | запятая |
. | точка |
/ | слэш, косая черта, знак дроби |
правая закрытая угловая скобка, знак больше | |
\ | обратный слэш, обратная косая черта |
| | вертикальная черта |
Кодировка UNICODE
Юникод (Unicode) — стандарт кодирования символов, позволяющий представить знаки практически всех письменных языков. Стандарт предложен в 1991 году некоммерческой организацией «Консорциум Юникода».
В Unicode используются 16-битовые (2-байтовые) коды, что позволяет представить 65536 символов.
Применение стандарта Unicode позволяет закодировать очень большое число символов из разных письменностей: в документах Unicode могут соседствовать китайские иероглифы, математические символы, буквы греческого алфавита, латиницы и кириллицы, при этом становится ненужным переключение кодовых страниц.
Для представления символьных данных в кодировке Unicode используется символьный тип wchar_t .
ASCII | UNICODE |
char | wchar_t |
1 байт | 2 байта |
Тип кодировки задается в свойствах проекта Microsoft Visual Studio:
Многобайтовая кодировка предполагает использование кодировки ASCII.
При этом при построении проекта используется директива условной компиляции, переопределяющая тип TCHAR :
Для перекодирования строки в формат Unicode без изменения кодировки файла используется макроопределение
_T(«строка»)
Прототип макроса содержится в файле tchar.h .
Вставка символов и знаков на основе латинского алфавита в кодировке ASCII или Юникод
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
С помощью кодировок символов ASCII и Юникода можно хранить данные на компьютере и обмениваться ими с другими компьютерами и программами. Ниже перечислены часто используемые латинские символы ASCII и Юникода. Наборы символов Юникода, отличные от латинских, можно посмотреть в соответствующих таблицах, упорядоченных по наборам.
В этой статье
Вставка символа ASCII или Юникода в документ
Если вам нужно ввести только несколько специальных знаков или символов, можно использовать таблицу символов или сочетания клавиш. Список символов ASCII см. в следующих таблицах или статье Вставка букв национальных алфавитов с помощью сочетаний клавиш.
В многих языках есть символы, которые не удалось уместить в расширенный набор ACSII (256 символов). Поэтому существуют вариации наборов ASCII и Юникода с региональными знаками и символами (см. таблицы символов Юникода, упорядоченные по наборам).
Если у вас возникают проблемы с вводом кода необходимого символа, попробуйте использовать таблицу символов.
Вставка символов ASCII
Чтобы вставить символ ASCII, нажмите и удерживайте клавишу ALT, вводя код символа. Например, чтобы вставить символ градуса (º), нажмите и удерживайте клавишу ALT, затем введите 0176 на цифровой клавиатуре.
Для ввода чисел используйте цифровую клавиатуру, а не цифры на основной клавиатуре. Если на цифровой клавиатуре необходимо ввести цифры, убедитесь, что включен индикатор NUM LOCK.
Вставка символов Юникода
Чтобы вставить символ Юникода, введите код символа, затем последовательно нажмите клавиши ALT и X. Например, чтобы вставить символ доллара ($), введите 0024 и последовательно нажмите клавиши ALT и X. Все коды символов Юникода см. в таблицах символов Юникода, упорядоченных по наборам.
Важно: Некоторые программы Microsoft Office, например PowerPoint и InfoPath, не поддерживают преобразование кодов Юникода в символы. Если вам необходимо вставить символ Юникода в одной из таких программ, используйте таблицу символов.
Если после нажатия клавиш ALT+X отображается неправильный символ Юникода, выберите правильный код, а затем снова нажмите ALT+X.
Кроме того, перед кодом следует ввести «U+». Например, если ввести «1U+B5» и нажать клавиши ALT+X, отобразится текст «1µ», а если ввести «1B5» и нажать клавиши ALT+X, отобразится символ «Ƶ».
Использование таблицы символов
Таблица символов — это программа, встроенная в Microsoft Windows, которая позволяет просматривать символы, доступные для выбранного шрифта.
С помощью таблицы символов можно копировать отдельные символы или группу символов в буфер обмена и вставлять их в любую программу, поддерживающую отображение этих символов. Открытие таблицы символов
В Windows 10 Введите слово «символ» в поле поиска на панели задач и выберите таблицу символов в результатах поиска.
В Windows 8 Введите слово «символ» на начальном экране и выберите таблицу символов в результатах поиска.
В Windows 7 нажмите кнопку Пуск, последовательно выберите Все программы, Стандартные, Служебные и щелкните Таблица символов.
Символы группируются по шрифту. Щелкните список шрифтов, чтобы выбрать подходящий набор символов. Чтобы выбрать символ, щелкните его, затем нажмите кнопку Выбрать. Чтобы вставить символ, щелкните правой кнопкой мыши нужное место в документе и выберите Вставить.
forum.tamirov.ru
Таблица символов, которых нет на клавиатуре
Иногда нужно вставить в текст символ, который отсутствует на клавиатурной раскладке. В разных операционных системах приходится для этого открывать какие-то приложения и оттуда копировать нужные символы, что порой очень неудобно.
Поэтому я решил создать такую таблицу символов, рассортированных по тематическим группам.
Нужно понимать, что если вы хотите скопировать отсюда символ и вставить в свой текст, то ваш текст должен быть в кодировке Unicode (UTF). Если же вы набираете текст в документе с другой однобайтной кодировкой (например Windows-1251, она же CP1251), то вы вставить подобные символы туда не сможете.
Однобайтные кодировки не поддерживают подобные символы.
Вообще, самые универсальные способы вставки символов, которых нет на клавиатуре – это по их Unicode-номеру, но тут многое зависит от операционной системы и приложения.. Если в меню приложения нет опции для вставки специального символа из визуальной таблицы символов, то можно, зная Unicode-номер ввести символ вручную.
Для операционных систем Windows:
1-й способ: набрать шестнадцатеричный код символа, затем одновременно клавиши «Alt» и «X».
2-й способ: удерживая клавишу «Alt», на цифровой клавиатуре (NUM-паде) набрать десятичный Unicode-номер символа.
Для операционных систем типа Linux (Ubuntu):
Одновременно набрать «Ctrl» «Shift» «U», затем шестнадцатеричный Unicode-номер символа и нажать «Enter»
Знак ударения (ставится после ударной буквы):
В некоторых шрифтах (например Verdana) на разных операционных системах этот знак ударения может отображаться некорректно, не копироваться.
UTF-8 код этого символа в десятичной системе: 769, в шестнадцатеричной: 0301.
Соответственно HTML-коды: ́ ́
Ещё знак ударения можно вставить методом ввода его Unicode номера. В шестнадцатеричной записи его код 0301, в десятеричной, соответственно 769 (256*3 + 0 + 1 = 769).
Знаки тире:
Длинное тире —
Среднее тире –
Цифровое тире ‒
Горизонтальная линия ―
Таблица символов utf 8 для вставки иконок
Здравствуйте, дорогие друзья!
Наверняка вы уже сталкивались с задачей вставить к себе на сайт символ стрелочки, конверта, телефонной трубки, копирайта или какой-нибудь другой.
Навигация по статье:
Для решения этой задачи можно воспользоваться одним из иконочных шрифтов, таких как Font Awesome, или же подготовить изображение нужного значка и вставить его на сайт. Однако можно пойти более простым путём. Для этого достаточно чтобы у вас перед глазами была таблица символов utf 8 или, как её ещё называют, таблица символов Unicode.
Кроме того иконки из этой таблицы можно использовать для создания интересных ников на форумах, в социальных сетях или онлайн-играх.
Как это работает?
Смысл использования символов из таблицы UTF8 заключается в том, что у вас в компьютере уже есть все необходимые знаки и ваш браузер может с лёгкостью их отобразить, нужно только знать их специальный код.
Например, символ стрелочка вверх в UTF8 записывается так ↑
Вы можете скопировать эту последовательность знаков и вставить себе в HTML страницу как обычный текст.
После этого у вас на сайте вместо этого набора знаков появится графическое изображение стрелочки. Удобно, не правда ли!?
И не нужно подключать никаких дополнительных шрифтов на ваш сайт ради вставки нескольких символов, а так же готовить и вставлять графические изображения.
Таблица символов UTF8 (Unicode) включает в себя тысячи, а то миллионы различных знаков.
Чтобы вам не приходилось пересматривать огромные таблицы в поисках нужного значка я выбрала наиболее интересные и полезные из них и разбила их по группам.
Символы стрелок в UTF8
← | ||
Стрелка вправо | → | → |
Стрелка вверх | ↑ | ↑ |
Стрелка вниз | ↓ | ↓ |
Двойная стрелка в стороны | ↔ | ↔ |
Двойная стрелка вврех-вниз | ↕ | ↕ |
Стрелки влево-вправо | ⇄ | ⇄ |
Стрелки вверх-вниз | ⇅ | ⇅ |
Угловая вниз-влево | ↲ | ↲ |
Угловая вниз-вправо | ↳ | ↳ |
Угловая вверх-влево | ↰ | ↰ |
Угловая вверх-вправо | ↱ | ↱ |
Закруглённая влево | ↶ | ↶ |
Закруглённая вправо | ↷ | ↷ |
Круглая вверх-влево | ↺ | ↺ |
Круглая вверх-вправо | ↻ | ↻ |
Толстая стрелка вправо | ➔ | ➔ |
Стрелка зигзаг вниз | ↯ | ↯ |
Стрелка северо-запад | ↖ | ↖ |
Толстая юго-запад | ➘ | ➘ |
Толстая вправо | ➙ | ➙ |
Толстая северо-восток | ➚ | ➚ |
Пунктирная стрелка вправо | ➟ | ➟ |
Точечная стрелка влево | ⇠ | ⇠ |
Угловатая стрелка вправо | ➤ | ➤ |
Светлая стрелка влево | ⇦ | ⇦ |
Светлая стрелка вправо | ⇨ | ⇨ |
Двойная стрелка влево | « | « |
Двойная стрелка вправо | » | » |
Треугольная стрелка вправо | ► | ► |
Треугольная стрелка влево | ◀ | ◀ |
Треугольная стрелка вверх | ▲ | ▲ |
Треугоьная стрелка вниз | ▼ | ▼ |
Светлый треугольник вправо | ▷ | ▷ |
Светлый треугольник влево | ◁ | ◁ |
Светлый треугольник вверх | △ | △ |
Светый треугольник вниз | ▽ | ▽ |
Стрела лука | ➴ | ➴ |
Таблица иконок в Unicode
☎ | ||
Светлый телефон | ☏ | ☏ |
Символ конверт | ✉ | ✉ |
Теефонная трубка | ✆ | ✆ |
Часы | ⌚ | ⌚ |
Галочка в квадрате | ☑ | ☑ |
Символ галочка | ✔ | ✔ |
Символ крестик | ✘ | ✘ | Светлая звезда | ☆ | ☆ |
Тёмная звезда | ★ | ★ |
Четырёхконечная звезда | ✦ | ✦ |
Звезда в круге | ✪ | ✪ |
Светлое сердце | ♡ | ♡ |
Тёмное сердце | ❤ | ❤ |
Смайлик | ☺ | ☺ |
Восклицательный знак | ⚠ | ⚠ |
Вторичное использоване | ♻ | ♻ |
Высокое напряжение | ⚡ | ⚡ |
Чашка кофе | ☕ | ☕ |
Самолёт | ✈ | ✈ |
Песочные часы | ⌛ | ⌛ |
Ножницы | ✂ | ✂ |
Корона | ♕ | ♕ |
Якорь | ⚓ | ⚓ |
Крест | ✝ | ✝ |
Чёрно-белый круг | ◑ | ◑ |
Нота | ♪ | ♪ |
Двойная нота | ♫ | ♫ |
Карандаш | ✎ | ✎ |
Пишущая рука | ✍ | ✍ |
Женский знак | ♀ | ♀ |
Мужской знак | ♂ | ♂ |
Надеюсь что символов, представленных в этих таблицах будет для вас достаточно и вы сможете обходиться без подключения иконочных шрифтов и графических изображений для вставки нужных вам символов. Если данная статья была для вас полезной, не забудьте оставить комментарий. Спасибо что дочитали статью до конца!
АйТи бубен
Инструменты пользователя
Инструменты сайта
Содержание
Виды кодировок символов
В общем случае кодировка или кодовая таблица — это однозначное соответствие между подмножеством целых чисел (как правило, идущих подряд) и некоторым набором символов. Ключевым здесь является понятие символа. Символ может быть буквой (а может и не быть), может соответствовать звуку речи (а может и не соответствовать) и может быть представлен графическим знаком (но может обходиться и без какого бы то ни было видимого образа). Символ — это атом смысла, мельчайшая неделимая частица информации.
Так, латинское «А» и кириллическое «А» — это разные символы, потому что они употребляются в разных контекстах и несут в себе разную информацию.
Определяющим для любой кодировки является количество охватываемых ею кодов и, соответственно, символов. Поскольку тексты в компьютере хранятся в виде последовательности байтов, большинство кодировок естественным образом распадаются на однобайтовые, или восьмибитные, способные закодировать не больше 256 символов, и двухбайтовые, или шестнадцатибитные, чья емкость может достигать 65636 знакомест.
Однобайтовые кодировки
Если кодировка ISO 8859-5 для кириллицы так и не прижилась, первая из этой серии — кодировка ISO 8859-1, известная также под именем Latin-1, — сумела стать общепринятым стандартом для кодирования «расширенной» латиницы. В эту кодировку включены почти все символы, употребляющиеся в письменностях западноевропейских языков — французского, немецкого, испанского и т.д.
Многобайтные кодировки
В 1991 году была предпринята попытка создать единую универсальную двухбайтовую кодировку, охватывающую все алфавиты и иероглифические системы мира. Результатом стал стандарт под названием Unicode, покрывающий не только системы письменности всех живых и большинства мертвых языков мира, но и множество музыкальных, математических, химических и прочих символов. Массовое применение Unicode в документах и программах остается делом будущего, для web- дизайнера эта кодировка имеет особое значение, так как именно она объявлена «стандартной кодировкой документа» в HTML начиная с версии 4.
В ближайшее время все более важную роль будет играть особый формат Unicode (и ISO 10646) под названием UTF-8. Эта «производная» кодировка пользуется для записи символов цепочками байтов различной длины (от одного до шести), которые с помощью несложного алгоритма преобразуются в Unicode- коды, причем более употребительным символам соответствуют более короткие цепочки. Главное достоинство этого формата — совместимость с ASCII не только по значениям кодов, но и по количеству бит на символ, так как для кодирования любого из первых 128 символов в UTF-8 достаточно одного байта (хотя, например, для букв кириллицы нужно уже по два байта).
Указание кодировки документа web-страницы
Для указания кодировки символов web-страницы используются следующие обозначения кодовых таблиц:
Спецсимволы на клавиатуре: таблица, правила набора
Каждый пользователь компьютеров, особенно активно пользующийся социальными сетями, задавался вопросом: что такое специальные символы и где на клавиатуре их найти? Ответ на этот вопрос не является чем-то сложным. Все дело в том, что на клавиатуре отображены только часто используемые символы: буквы, знаки препинания, арифметические действия.
Но в мире существует множество других символом. И чтобы ими воспользоваться, необходимо знать некоторые понятия. Такие символы называются специальными. Их отличие в том, что они являются больше шуточными, чем действительно полезными.
Как вводить спецсимволы с клавиатуры?
Для начала разберем самый простой и понятный ввод спецсимволов, которые уже расположены на клавиатуре устройства. Для этого нужно зажать клавишу Shift и выбрать нужный символ.
Но не стоит забывать, что для удобства символы разделены между собой раскладками клавиатуры. Поэтому обращайте внимание на расположение знака относительно главного.
Используем спецсимволы при создании паролей
Многие пользователи задавались вопросом о том, как создать надежный пароль. Для этого не нужно создавать огромные наборы различных букв, цифр и знаков препинания, достаточно использовать необычный значок. Так как же использовать спецсимволы на клавиатуре для пароля?
Чтобы воспользоваться спецсимволом при вводе пароля, необходимо включить NumLock. После этого следует зажать клавишу Alt и «+», далее набираем необходимый набор символов и получаем нужный нам знак. Но в самом пароле он не будет зарегистрирован как спецсимвол, а будет записан в необходимой для этого кодировке.
Пользуемся юникодом на клавиатуре Windows 10
Чтобы воспользоваться спецсимволами на клавиатуре Windows 10, необходимо зайти в панель задач и в поисковой строке запросить таблицу. А после этого запустить данное приложение.
В открывшейся таблице можно выбрать шрифт. Чтобы скопировать символ, нажимаем по нему два раза и в нижней строке нажимаем «Копировать». Также можно выбрать язык набора символов.
Вводим спецсимволы с помощью клавиатуры
Самым практичным способом набора символов является комбинация клавиши Alt и нужного юникода. Спецсимволы на клавиатуре Alt будут рассмотрены в таблице ниже.
Но прежде чем узнать о них, необходимо понимать принцип ввода данных символов. Чтобы ввести нужный нам символ, нажимаем клавишу Alt, после этого в правой части клавиатуры нажимаем «+» и набираем цифровую команду, в которой зашифрован нужный знак.
Таблицы специальных символов для описания текста
А теперь, собственно, рассмотрим, как выглядят некоторые спецсимволы. Многие из них используются нечасто.
Название | Символика | Вид | Описание |
---|---|---|---|
160 | пробел без разрывов | ||
iexcl | 161 | ¡ | восклицательный знак вверх тормашками |
cent | 162 | ¢ | цент |
pound | 163 | £ | фунт стерлингов |
euro | 0128 | € | евро |
8591 | ₪ | шекель | |
curren | 164 | ¤ | денежная единица |
yen | 165 | иена или юань | |
166 | ¦ | пунктирная вертикальная черта | |
sect | 167 | § | параграф |
uml | 168 | ¨ | трема |
copy | 169 | © | знак copyright |
ordf | 170 | ª | порядковый числитель (женский) |
186 | º | порядковый числитель (мужской) | |
171 | « | открывающаяся кавычка | |
187 | » | закрывающаяся кавычка | |
not | 172 | ¬ | отрицание |
173 | место возможного переноса | ||
176 | ° | градус | |
permil | ‰ | промилле | |
acute | 180 | ´ | знак ударения |
micro | 181 | µ | микро |
para | 182 | ¶ | символ параграфа |
middot | 183 | · | точка |
cedil | 184 | ¸ | седиль |
sup1 | 185 | ¹ | верхний индекс (единица) |
175 | знак долготы над гласным ставится сверху | ||
iquest | 191 | ¿ | вопросительный знак вверх тормашками |
174 | ® | знак зарегистрированной торговой марки |
Таблица спец символов — стрелки
А эти специальные символы отлично подойдут для каких-либо схем. Данную таблицу стоит иметь под рукой.
Название | Символика | Вид | Описание |
---|---|---|---|
8629 | ↵ | стрелка вниз и влево | |
8657 | ⇑ | двойная стрелка вверх | |
8659 | ⇓ | двойная стрелка вниз | |
8660 | ⇔ | двойная стрелка влево-вправо | |
8596 | ↔ | стрелка влево-вправо | |
8658 | ⇒ | двойная стрелка вправо | |
8595 | ↓ | стрелка вниз | |
8593 | ↑ | стрелка вверх | |
8592 | ← | стрелка влево | |
8594 | → | стрелка вправо |
Таблица знаков пунктуации
Ну а без этих знаков вообще не обойтись при написании статей. Они знакомы всем без исключения.
Название | Символика | Вид | Описание |
---|---|---|---|
bull | 8226 | • | черный круг малых размеров |
hellip | 8230 | … | многоточие |
prime | 8242 | ′ | одиночный штрих — минуты и футы |
8243 | ″ | двойной штрих — секунды и дюймы | |
8254 | ‾ | верхнее подчеркивание | |
frasl | 8260 | ⁄ | дробная черта под наклоном вправо |
Основная пунктуация | |||
ndash | 8211 | – | тире |
mdash | 8212 | — | длинное тире |
lsquo | 8216 | ‘ | левая одиночная кавычка |
8217 | ’ | правая одиночная кавычка | |
8218 | ‚ | одиночная кавычка (нижняя) | |
8220 | “ | двойная кавычка (наклон влево) | |
8221 | ” | двойная кавычка (наклон вправо) | |
8222 | „ | двойная кавычка (нижняя) |
Таблица арифметических знаков
Такие знаки — просто находка для математика. Ни одно арифметическое выражение невозможно записать без их помощи.
Название | Символика | Вид | Описание |
---|---|---|---|
times | 215 | × | знак умножения |
divide | 247 | ÷ | знак деления |
frasl | 8260 | ⁄ | дробная черта |
minus | 8722 | − | знак минус |
il | 60 | знак больше | |
le | 8804 | ≤ | меньше или равно |
ge | 8805 | ≥ | больше или равно |
8776 | ≈ | асимптотически равно | |
ne | 8800 | ≠ | неравенство |
equiv | 8801 | ≡ | тождественно, совпадает с |
plusmn | 177 | ± | плюс-минус |
frac14 | 188 | ¼ | одна четвертая |
frac12 | 189 | ½ | одна вторая |
frac34 | 190 | ¾ | три четверти |
sup1 | 185 | ¹ | единица в верхнем индексе |
178 | ² | два в верхнем индексе (квадрат) | |
179 | ³ | три в верхнем индексе (куб) | |
8730 | √ | квадратный корень (радикал) | |
8734 | ∞ | знак бесконечность | |
sum | 8721 | ∑ | знак суммирования |
8719 | ∏ | знак произведения | |
part | 8706 | ∂ | частичный дифференциал |
int | 8747 | ∫ | интеграл |
forall | 8704 | ∀ | для всех |
exist | 8707 | ∃ | существует |
empty | 8709 | ∅ | пустое множество; диаметр |
8711 | ∇ | набла | |
isin | 8712 | ∈ | принадлежит |
notin | 8713 | ∉ | не принадлежит |
ni | 8715 | ∋ | содержит |
lowast | 8727 | ∗ | оператор ‘звездочка’ |
prop | 8733 | ∝ | пропорционально |
ang | 8736 | ∠ | угол |
and | 8743 | ∧ | логическое И |
or | 8744 | ∨ | логическое ИЛИ |
cap | 8745 | ∩ | пересечение |
cup | 8746 | ∪ | объединение |
there4 | 8756 | ∴ | следовательно |
sim | 8764 | знак подобия — ‘изменяется с’ — знак тильда | |
8773 | ≅ | approximately equal to | |
sub | 8834 | ⊂ | это есть подмножество |
sup | 8835 | ⊃ | это есть надмножество |
nsub | 8836 | ⊄ | не является подмножеством |
sube | 8838 | ⊆ | является подмножеством либо равно |
8839 | ⊇ | является надмножеством либо равно | |
8853 | ⊕ | плюс в кружке | |
otimes | 8855 | ⊗ | знак умножения в кружке |
8869 | ⊥ | ортогонально, перпендикулярно | |
sdot | 8901 | ⋅ | оператор ‘точка’ |
fnot | 402 | ƒ | знак функции |
Таблица латинский, греческих и ивритских букв
Не многие, конечно, будут использовать эти знаки при работе с компьютером. Однако знать о них не помешает для общего развития.
Название | Символика | Вид | Описание |
---|---|---|---|
Латинские буквы | |||
Agrave | 192 | À | заглавная А с тупым ударением |
193 | Á | А с острым ударением | |
Acirc | 194 | Â | А с циркумфлексом (диакритический знак над гласной) |
195 | Ã | А с тильдой | |
Auml | 196 | Ä | А с тремой (знак над гласной для произнесения ее отдельно от предшествующей гласной) |
197 | Å | А с верхним кружком | |
AElig | 198 | Æ | символы AE |
Ccedil | 199 | Ç | C с седилем |
Egrave | 200 | È | E с тупым ударением |
201 | É | E с острым ударением | |
202 | Ê | E с циркумфлексом (диакритический знак над гласной) | |
203 | Ë | E с тремой | |
Igrave | 204 | Ì | I с тупым ударением |
205 | Í | I с острым ударением | |
Icirc | 206 | Î | I с циркумфлексом |
Iuml | 207 | Ï | I с тремой |
ETH | 208 | Ð | символы ETH |
Ntilde | 209 | Ñ | N с тильдой |
Ograve | 210 | Ò | O с тупым ударением |
211 | Ó | O с острым ударением | |
Ocirc | 212 | Ô | O с циркумфлексом |
Otilde | 213 | Õ | O с тильдой |
Ouml | 214 | Ö | O с тремой |
Oslash | 216 | Ø | O со штрихом |
Ugrave | 217 | Ù | U с тупым ударением |
218 | Ú | U с острым ударением | |
219 | Û | U с циркумфлексом | |
Uuml | 220 | Ü | U с тремой |
Yacute | 221 | Ý | Y с острым ударением |
THORN | 222 | Þ | THORN |
agrave | 224 | à | строчная А с тупым ударением |
225 | á | А с острым ударением | |
acirc | 226 | â | А с циркумфлексом |
atilde | 227 | ã | А с тильдой |
auml | 228 | ä | А с тремой |
aring | 229 | å | А с верхним кружком |
aelig | 230 | æ | Ае |
ccedil | 231 | ç | А с седилем |
egrave | 232 | è | E с тупым ударением |
233 | é | E с острым ударением | |
234 | ê | E с циркумфлексом | |
euml | 235 | ë | E с тремой |
igrave | 236 | ì | I с тупым ударением |
237 | í | I с острым ударением | |
icirc | 238 | î | I с циркумфлексом |
iuml | 239 | ï | I с тремой |
eth | 240 | ð | символы eth |
ntilde | 241 | ñ | N с тильдой |
ograve | 242 | ò | O с тупым ударением |
243 | ó | O с острым ударением | |
ocirc | 244 | ô | O с циркумфлексом |
otilde | 245 | õ | I с тильдой |
ouml | 246 | ö | I с тремой |
oslash | 248 | ø | O со штрихом |
ugrave | 249 | ù | U с тупым ударением |
250 | ú | U с острым ударением | |
251 | û | U с циркумфлексом | |
uuml | 252 | ü | U с тремой |
yacute | 253 | ý | Y с острымударением |
thorn | 254 | þ | thorn |
yuml | 255 | ÿ | Y с тремой |
Буквы греческого алфавита | |||
913 | Α | греческая заглавная буква альфа | |
914 | Β | бета | |
915 | Γ | греческая заглавная буква гамма | |
916 | Δ | дельта | |
917 | Ε | греческая заглавная буква эпсилон | |
918 | Ζ | дзета | |
919 | греческая заглавная буква эта | ||
920 | Θ | тета | |
921 | Ι | греческая заглавная буква иота | |
922 | Κ | каппа | |
923 | Λ | греческая заглавная буква лямбда | |
924 | Μ | мю | |
925 | греческая заглавная буква ню | ||
926 | Ξ | кси | |
927 | Ο | греческая заглавная буква омикрон | |
928 | Π | пи | |
929 | греческая заглавная буква ро | ||
931 | Σ | сигма | |
932 | греческая заглавная буква тау | ||
933 | Υ | ипсилон | |
934 | греческая заглавная буква фи | ||
935 | Χ | хи | |
936 | греческая заглавная буква пси | ||
937 | Ω | омега | |
945 | α | греческая строчная буква альфа | |
946 | β | бета | |
947 | γ | греческая строчная буква гамма | |
948 | δ | дельта | |
949 | ε | греческая строчная буква эпсилон | |
950 | ζ | дзета | |
951 | греческая строчная буква эта | ||
952 | θ | тета | |
953 | ι | греческая строчная буква иота | |
954 | κ | каппа | |
955 | λ | греческая строчная буква лямбда | |
956 | μ | мю | |
957 | греческая строчная буква ню | ||
958 | ξ | кси | |
959 | ο | греческая строчная буква омикрон | |
960 | π | пи | |
961 | греческая строчная буква ро | ||
962 | ς | сигма (final) | |
963 | σ | греческая строчная буква сигма | |
964 | τ | тау | |
965 | υ | греческая строчная буква ипсилон | |
966 | φ | фи | |
967 | греческая строчная буква хи | ||
968 | ψ | пси | |
969 | ω | греческая строчная буква омега | |
Ивритские буквы | |||
1488 | א | алеф | |
1489 | ב | бэт | |
1490 | ג | гимель | |
1491 | ד | далед | |
1492 | ה | шей | |
1493 | ו | вав | |
1494 | ז | заин | |
1495 | ח | хэт | |
1496 | ט | тэт | |
1497 | י | йуд | |
1498 | ך | каф-софит | |
1499 | כ | каф | |
1500 | ל | ламед | |
1501 | ם | мэм-софит | |
1502 | מ | мэм | |
1503 | ן | нун-софит | |
1504 | נ | нун | |
1505 | ס | самэх | |
1506 | ע | аин | |
1507 | ף | пэй-софит | |
1508 | פ | пэй | |
1509 | ץ | цадик-софит | |
1510 | צ | цадик | |
1511 | ק | куф | |
1512 | ר | рэйш | |
1513 | ש | шин | |
1514 | ת | тав |
Дополнительная таблица символов
Вот еще некоторые полезные знаки. Возможно, вам они тоже когда-то пригодятся
Название | Символика | Вид | Описание |
---|---|---|---|
9824 | ♠ | знак масти ‘пики’ | |
9827 | ♣ | знак масти ‘трефы’ | |
9829 | ♥ | знак масти ‘червы’ | |
9830 | ♦ | знак масти ‘бубны’ | |
9674 | ◊ | ромб | |
9675 | ○ | круг | |
9679 | ● | черный круг | |
9668 | ◄ | треугольник налево | |
9660 | ▼ | черный треугольник вниз | |
9658 | ► | черный треугольник направо | |
9650 | ▲ | черный треугольник вверх | |
9632 | ■ | черный квадрат | |
9642 | ▪ | черный квадратик | |
9643 | ▫ | квадратик | |
9792 | ♀ | женское начало | |
9794 | мужское начало | ||
34 | « | двойная кавычка | |
amp | 38 | & | амперсанд |
lt | 60 | знак ‘больше’ | |
circ | 710 | ˆ | символ циркумфлекса |
tilde | 732 | ˜ | тильда |
trade | 8482 | ™ | знак торговой марки |
В заключение
В мире существует множество символов, которые необходимы пользователям компьютеров для применения в своих целях. Знать все их невозможно. Ведь человечество за свою многовековую историю создало более миллиона различных кодов и прочего вида закодированной в изображении информации, но существуют таблицы спецсимволов, которые доступны всем пользователям.
Данные знаки имеют огромную область применения, поэтому столкнуться с ними придется многим. Ввод спецсимволов с клавиатуры — это несложно. Главное, уметь пользоваться возможностями своего устройства, и это позволит применять различные спецсимволы в своих целях.
Кодировка текста ASCII (Windows 1251, CP866, KOI8-R) и Юникод (UTF 8, 16, 32) — как исправить проблему с кракозябрами
Здравствуйте, уважаемые читатели блога KtoNaNovenkogo.ru. Сегодня мы поговорим с вами про то, откуда берутся кракозябры на сайте и в программах, какие кодировки текста существуют и какие из них следует использовать. Подробно рассмотрим историю их развития, начиная от базовой ASCII, а также ее расширенных версий CP866, KOI8-R, Windows 1251 и заканчивая современными кодировками консорциума Юникод UTF 16 и 8.
Кому-то эти сведения могут показаться излишними, но знали бы вы, сколько мне приходит вопросов именно касаемо вылезших кракозябров (не читаемого набора символов). Теперь у меня будет возможность отсылать всех к тексту этой статьи и самостоятельно отыскивать свои косяки. Ну что же, приготовьтесь впитывать информацию и постарайтесь следить за ходом повествования.
ASCII — базовая кодировка текста для латиницы
Развитие кодировок текстов происходило одновременно с формированием отрасли IT, и они за это время успели претерпеть достаточно много изменений. Исторически все начиналось с довольно-таки не благозвучной в русском произношении EBCDIC, которая позволяла кодировать буквы латинского алфавита, арабские цифры и знаки пунктуации с управляющими символами.
Но все же отправной точкой для развития современных кодировок текстов стоит считать знаменитую ASCII (American Standard Code for Information Interchange, которая по-русски обычно произносится как «аски»). Она описывает первые 128 символов из наиболее часто используемых англоязычными пользователями — латинские буквы, арабские цифры и знаки препинания.
Еще в эти 128 знаков, описанных в ASCII, попадали некоторые служебные символы навроде скобок, решеток, звездочек и т.п. Собственно, вы сами можете увидеть их:
Именно эти 128 символов из первоначального вариант ASCII стали стандартом, и в любой другой кодировке вы их обязательно встретите и стоять они будут именно в таком порядке.
Но дело в том, что с помощью одного байта информации можно закодировать не 128, а целых 256 различных значений (двойка в степени восемь равняется 256), поэтому вслед за базовой версией Аски появился целый ряд расширенных кодировок ASCII, в которых можно было кроме 128 основных знаков закодировать еще и символы национальной кодировки (например, русской).
Тут, наверное, стоит еще немного сказать про системы счисления, которые используются при описании. Во-первых, как вы все знаете, компьютер работает только с числами в двоичной системе, а именно с нулями и единицами («булева алгебра», если кто проходил в институте или в школе). Один байт состоит из восьми бит, каждый из которых представляет из себя двойку в степени, начиная с нулевой, и до двойки в седьмой:
Не трудно понять, что всех возможных комбинаций нулей и единиц в такой конструкции может быть только 256. Переводить число из двоичной системы в десятичную довольно просто. Нужно просто сложить все степени двойки, над которыми стоят единички.
В нашем примере это получается 1 (2 в степени ноль) плюс 8 (два в степени 3), плюс 32 (двойка в пятой степени), плюс 64 (в шестой), плюс 128 (в седьмой). Итого получает 233 в десятичной системе счисления. Как видите, все очень просто.
Но если вы присмотритесь к таблице с символами ASCII, то увидите, что они представлены в шестнадцатеричной кодировке. Например, «звездочка» соответствует в Аски шестнадцатеричному числу 2A. Наверное, вам известно, что в шестнадцатеричной системе счисления используются кроме арабских цифр еще и латинские буквы от A (означает десять) до F (означает пятнадцать).
Ну так вот, для перевода двоичного числа в шестнадцатеричное прибегают к следующему простому и наглядному способу. Каждый байт информации разбивают на две части по четыре бита, как показано на приведенном выше скриншоте. Т.о. в каждой половинке байта двоичным кодом можно закодировать только шестнадцать значений (два в четвертой степени), что можно легко представить шестнадцатеричным числом.
Причем, в левой половине байта считать степени нужно будет опять начиная с нулевой, а не так, как показано на скриншоте. В результате, путем нехитрых вычислений, мы получим, что на скриншоте закодировано число E9. Надеюсь, что ход моих рассуждений и разгадка данного ребуса вам оказались понятны. Ну, а теперь продолжим, собственно, говорить про кодировки текста.
Расширенные версии Аски — кодировки CP866 и KOI8-R с псевдографикой
Итак, мы с вами начали говорить про ASCII, которая являлась как бы отправной точкой для развития всех современных кодировок (Windows 1251, юникод, UTF 8).
Изначально в нее было заложено только 128 знаков латинского алфавита, арабских цифр и еще чего-то там, но в расширенной версии появилась возможность использовать все 256 значений, которые можно закодировать в одном байте информации. Т.е. появилась возможность добавить в Аски символы букв своего языка.
Тут нужно будет еще раз отвлечься, чтобы пояснить — зачем вообще нужны кодировки текстов и почему это так важно. Символы на экране вашего компьютера формируются на основе двух вещей — наборов векторных форм (представлений) всевозможных знаков (они находятся в файлах со шрифтами, которые установлены на вашем компьютере) и кода, который позволяет выдернуть из этого набора векторных форм (файла шрифта) именно тот символ, который нужно будет вставить в нужное место.
Понятно, что за сами векторные формы отвечают шрифты, а вот за кодирование отвечает операционная система и используемые в ней программы. Т.е. любой текст на вашем компьютере будет представлять собой набор байтов, в каждом из которых закодирован один единственный символ этого самого текста.
Программа, отображающая этот текст на экране (текстовый редактор, браузер и т.п.), при разборе кода считывает кодировку очередного знака и ищет соответствующую ему векторную форму в нужном файле шрифта, который подключен для отображения данного текстового документа. Все просто и банально.
Значит, чтобы закодировать любой нужный нам символ (например, из национального алфавита), должно быть выполнено два условия — векторная форма этого знака должна быть в используемом шрифте и этот символ можно было бы закодировать в расширенных кодировках ASCII в один байт. Поэтому таких вариантов существует целая куча. Только лишь для кодирования символов русского языка существует несколько разновидностей расширенной Аски.
Например, изначально появилась CP866, в которой была возможность использовать символы русского алфавита и она являлась расширенной версией ASCII.
Т.е. ее верхняя часть полностью совпадала с базовой версией Аски (128 символов латиницы, цифр и еще всякой лабуды), которая представлена на приведенном чуть выше скриншоте, а вот уже нижняя часть таблицы с кодировкой CP866 имела указанный на скриншоте чуть ниже вид и позволяла закодировать еще 128 знаков (русские буквы и всякая там псевдографика):
Видите, в правом столбце цифры начинаются с 8, т.к. числа с 0 до 7 относятся к базовой части ASCII (см. первый скриншот). Т.о. русская буква «М» в CP866 будет иметь код 9С (она находится на пересечении соответствующих строки с 9 и столбца с цифрой С в шестнадцатеричной системе счисления), который можно записать в одном байте информации, и при наличии подходящего шрифта с русскими символами эта буква без проблем отобразится в тексте.
Откуда взялось такое количество псевдографики в CP866? Тут все дело в том, что эта кодировка для русского текста разрабатывалась еще в те мохнатые года, когда не было такого распространения графических операционных систем как сейчас. А в Досе, и подобных ей текстовых операционках, псевдографика позволяла хоть как-то разнообразить оформление текстов и поэтому ею изобилует CP866 и все другие ее ровесницы из разряда расширенных версий Аски.
CP866 распространяла компания IBM, но кроме этого для символов русского языка были разработаны еще ряд кодировок, например, к этому же типу (расширенных ASCII) можно отнести KOI8-R:
Принцип ее работы остался тот же самый, что и у описанной чуть ранее CP866 — каждый символ текста кодируется одним единственным байтом. На скриншоте показана вторая половина таблицы KOI8-R, т.к. первая половина полностью соответствует базовой Аски, которая показана на первом скриншоте в этой статье.
Среди особенностей кодировки KOI8-R можно отметить то, что русские буквы в ее таблице идут не в алфавитном порядке, как это, например, сделали в CP866.
Если посмотрите на самый первый скриншот (базовой части, которая входит во все расширенные кодировки), то заметите, что в KOI8-R русские буквы расположены в тех же ячейках таблицы, что и созвучные им буквы латинского алфавита из первой части таблицы. Это было сделано для удобства перехода с русских символов на латинские путем отбрасывания всего одного бита (два в седьмой степени или 128).
Windows 1251 — современная версия ASCII и почему вылезают кракозябры
Дальнейшее развитие кодировок текста было связано с тем, что набирали популярность графические операционные системы и необходимость использования псевдографики в них со временем пропала. В результате возникла целая группа, которая по своей сути по-прежнему являлись расширенными версиями Аски (один символ текста кодируется всего одним байтом информации), но уже без использования символов псевдографики.
Они относились к так называемым ANSI кодировкам, которые были разработаны американским институтом стандартизации. В просторечии еще использовалось название кириллица для варианта с поддержкой русского языка. Примером такой может служить Windows 1251.
Она выгодно отличалась от используемых ранее CP866 и KOI8-R тем, что место символов псевдографики в ней заняли недостающие символы русской типографики (окромя знака ударения), а также символы, используемые в близких к русскому славянских языках (украинскому, белорусскому и т.д.):
Из-за такого обилия кодировок русского языка, у производителей шрифтов и производителей программного обеспечения постоянно возникала головная боль, а у нас с вам, уважаемые читатели, зачастую вылезали те самые пресловутые кракозябры, когда происходила путаница с используемой в тексте версией.
Очень часто они вылезали при отправке и получении сообщений по электронной почте, что повлекло за собой создание очень сложных перекодировочных таблиц, которые, собственно, решить эту проблему в корне не смогли, и зачастую пользователи для переписки использовали транслит латинских букв, чтобы избежать пресловутых кракозябров при использовании русских кодировок подобных CP866, KOI8-R или Windows 1251.
По сути, кракозябры, вылазящие вместо русского текста, были результатом некорректного использования кодировки данного языка, которая не соответствовала той, в которой было закодировано текстовое сообщение изначально.
Допустим, если символы, закодированные с помощью CP866, попробовать отобразить, используя кодовую таблицу Windows 1251, то эти самые кракозябры (бессмысленный набор знаков) и вылезут, полностью заменив собой текст сообщения.
Аналогичная ситуация очень часто возникает при создании сайтов на WordPress и Joomla, форумов или блогов, когда текст с русскими символами по ошибке сохраняется не в той кодировке, которая используется на сайте по умолчанию, или же не в том текстовом редакторе, который добавляет в код отсебятину не видимую невооруженным глазом.
В конце концов такая ситуация с множеством кодировок и постоянно вылезающими кракозябрами многим надоела, появились предпосылки к созданию новой универсальной вариации, которая бы заменила собой все существующие и решила бы, наконец, на корню проблему с появлением не читаемых текстов. Кроме этого существовала проблема языков подобных китайскому, где символов языка было гораздо больше, чем 256.
Юникод (Unicode) — универсальные кодировки UTF 8, 16 и 32
Эти тысячи знаков языковой группы юго-восточной Азии никак невозможно было описать в одном байте информации, который выделялся для кодирования символов в расширенных версиях ASCII. В результате был создан консорциум под названием Юникод (Unicode — Unicode Consortium) при сотрудничестве многих лидеров IT индустрии (те, кто производит софт, кто кодирует железо, кто создает шрифты), которые были заинтересованы в появлении универсальной кодировки текста.
Первой вариацией, вышедшей под эгидой консорциума Юникод, была UTF 32. Цифра в названии кодировки означает количество бит, которое используется для кодирования одного символа. 32 бита составляют 4 байта информации, которые понадобятся для кодирования одного единственного знака в новой универсальной кодировке UTF.
В результате чего, один и тот же файл с текстом, закодированный в расширенной версии ASCII и в UTF-32, в последнем случае будет иметь размер (весить) в четыре раза больше. Это плохо, но зато теперь у нас появилась возможность закодировать с помощью ЮТФ число знаков, равное двум в тридцать второй степени (миллиарды символов, которые покроют любое реально необходимое значение с колоссальным запасом).
Но многим странам с языками европейской группы такое огромное количество знаков использовать в кодировке вовсе и не было необходимости, однако при задействовании UTF-32 они ни за что ни про что получали четырехкратное увеличение веса текстовых документов, а в результате и увеличение объема интернет трафика и объема хранимых данных. Это много, и такое расточительство себе никто не мог позволить.
В результате развития Юникода появилась UTF-16, которая получилась настолько удачной, что была принята по умолчанию как базовое пространство для всех символов, которые у нас используются. Она использует два байта для кодирования одного знака. Давайте посмотрим, как это дело выглядит.
В операционной системе Windows вы можете пройти по пути «Пуск» — «Программы» — «Стандартные» — «Служебные» — «Таблица символов». В результате откроется таблица с векторными формами всех установленных у вас в системе шрифтов. Если вы выберете в «Дополнительных параметрах» набор знаков Юникод, то сможете увидеть для каждого шрифта в отдельности весь ассортимент входящих в него символов.
Кстати, щелкнув по любому из них, вы сможете увидеть его двухбайтовый код в формате UTF-16, состоящий из четырех шестнадцатеричных цифр:
Сколько символов можно закодировать в UTF-16 с помощью 16 бит? 65 536 (два в степени шестнадцать), и именно это число было принято за базовое пространство в Юникоде. Помимо этого существуют способы закодировать с помощью нее и около двух миллионов знаков, но ограничились расширенным пространством в миллион символов текста.
Но даже эта удачная версия кодировки Юникода не принесла особого удовлетворения тем, кто писал, допустим, программы только на английском языке, ибо у них, после перехода от расширенной версии ASCII к UTF-16, вес документов увеличивался в два раза (один байт на один символ в Аски и два байта на тот же самый символ в ЮТФ-16).
Вот именно для удовлетворения всех и вся в консорциуме Unicode было решено придумать кодировку переменной длины. Ее назвали UTF-8. Несмотря на восьмерку в названии, она действительно имеет переменную длину, т.е. каждый символ текста может быть закодирован в последовательность длиной от одного до шести байт.
На практике же в UTF-8 используется только диапазон от одного до четырех байт, потому что за четырьмя байтами кода ничего уже даже теоретически не возможно представить. Все латинские знаки в ней кодируются в один байт, так же как и в старой доброй ASCII.
Что примечательно, в случае кодирования только латиницы, даже те программы, которые не понимают Юникод, все равно прочитают то, что закодировано в ЮТФ-8. Т.е. базовая часть Аски просто перешла в это детище консорциума Unicode.
Кириллические же знаки в UTF-8 кодируются в два байта, а, например, грузинские — в три байта. Консорциум Юникод после создания UTF 16 и 8 решил основную проблему — теперь у нас в шрифтах существует единое кодовое пространство. И теперь их производителям остается только исходя из своих сил и возможностей заполнять его векторными формами символов текста. Сейчас в наборы даже эмодзи смайлики добавляют.
В приведенной чуть выше «Таблице символов» видно, что разные шрифты поддерживают разное количество знаков. Некоторые насыщенные символами Юникода шрифты могут весить очень прилично. Но зато теперь они отличаются не тем, что они созданы для разных кодировок, а тем, что производитель шрифта заполнил или не заполнил единое кодовое пространство теми или иными векторными формами до конца.
Кракозябры вместо русских букв — как исправить
Давайте теперь посмотрим, как появляются вместо текста кракозябры или, другими словами, как выбирается правильная кодировка для русского текста. Собственно, она задается в той программе, в которой вы создаете или редактируете этот самый текст, или же код с использованием текстовых фрагментов.
Для редактирования и создания текстовых файлов лично я использую очень хороший, на мой взгляд, Html и PHP редактор Notepad++. Впрочем, он может подсвечивать синтаксис еще доброй сотни языков программирования и разметки, а также имеет возможность расширения с помощью плагинов. Читайте подробный обзор этой замечательной программы по приведенной ссылке.
В верхнем меню Notepad++ есть пункт «Кодировки», где у вас будет возможность преобразовать уже имеющийся вариант в тот, который используется на вашем сайте по умолчанию:
В случае сайта на Joomla 1.5 и выше, а также в случае блога на WordPress следует во избежании появления кракозябров выбирать вариант UTF 8 без BOM. А что такое приставка BOM?
Дело в том, что когда разрабатывали кодировку ЮТФ-16, зачем-то решили прикрутить к ней такую вещь, как возможность записывать код символа, как в прямой последовательности (например, 0A15), так и в обратной (150A). А для того, чтобы программы понимали, в какой именно последовательности читать коды, и был придуман BOM (Byte Order Mark или, другими словами, сигнатура), которая выражалась в добавлении трех дополнительных байтов в самое начало документов.
В кодировке UTF-8 никаких BOM предусмотрено в консорциуме Юникод не было и поэтому добавление сигнатуры (этих самых пресловутых дополнительных трех байтов в начало документа) некоторым программам просто-напросто мешает читать код. Поэтому мы всегда при сохранении файлов в ЮТФ должны выбирать вариант без BOM (без сигнатуры). Таким образом, вы заранее обезопасите себя от вылезания кракозябров.
Что примечательно, некоторые программы в Windows не умеют этого делать (не умеют сохранять текст в ЮТФ-8 без BOM), например, все тот же пресловутый Блокнот Windows. Он сохраняет документ в UTF-8, но все равно добавляет в его начало сигнатуру (три дополнительных байта). Причем эти байты будут всегда одни и те же — читать код в прямой последовательности. Но на серверах из-за этой мелочи может возникнуть проблема — вылезут кракозябры.
Поэтому ни в коем случае не пользуйтесь обычным блокнотом Windows для редактирования документов вашего сайта, если не хотите появления кракозябров. Лучшим и наиболее простым вариантом я считаю уже упомянутый редактор Notepad++, который практически не имеет недостатков и состоит из одних лишь достоинств.
В Notepad ++ при выборе кодировки у вас будет возможность преобразовать текст в кодировку UCS-2, которая по своей сути очень близка к стандарту Юникод. Также в Нотепаде можно будет закодировать текст в ANSI, т.е. применительно к русскому языку это будет уже описанная нами чуть выше Windows 1251. Откуда берется эта информация?
Она прописана в реестре вашей операционной системы Windows — какую кодировку выбирать в случае ANSI, какую выбирать в случае OEM (для русского языка это будет CP866). Если вы установите на своем компьютере другой язык по умолчанию, то и эти кодировки будут заменены на аналогичные из разряда ANSI или OEM для того самого языка.
После того, как вы в Notepad++ сохраните документ в нужной вам кодировке или же откроете документ с сайта для редактирования, то в правом нижнем углу редактора сможете увидеть ее название:
Чтобы избежать кракозябров, кроме описанных выше действий, будет полезным прописать в его шапке исходного кода всех страниц сайта информацию об этой самой кодировке, чтобы на сервере или локальном хосте не возникло путаницы.
Вообще, во всех языках гипертекстовой разметки кроме Html используется специальное объявление xml, в котором указывается кодировка текста.
Прежде, чем начать разбирать код, браузер узнает, какая версия используется и как именно нужно интерпретировать коды символов этого языка. Но что примечательно, в случае, если вы сохраняете документ в принятом по умолчанию юникоде, то это объявление xml можно будет опустить (кодировка будет считаться UTF-8, если нет BOM или ЮТФ-16, если BOM есть).
В случае же документа языка Html для указания кодировки используется элемент Meta, который прописывается между открывающим и закрывающим тегом Head:
Эта запись довольно сильно отличается от принятой в стандарте в Html 4.01, но полностью соответствует новому внедряемому потихоньку стандарту Html 5, и она будет стопроцентно правильно понята любыми используемыми на текущий момент браузерами.
По идее, элемент Meta с указание кодировки Html документа лучше будет ставить как можно выше в шапке документа, чтобы на момент встречи в тексте первого знака не из базовой ANSI (которые правильно прочитаются всегда и в любой вариации) браузер уже должен иметь информацию о том, как интерпретировать коды этих символов.
Полная таблица ALT кодов
Что такое альт код? Alt-код — это символы, которые выводятся при нажатии комбинации клавиш на клавиатуре Alt + X, где X это набор цифр (определенного числа) на NumPad’е. NumPAd это блок цифр на клавиатуре как правило расположенных справа. Символы альт на ПК с операционными системами Windows не доступны при использовании обычной клавиатуры. Их можно вызывать только при помощи дополнительных команд. Зажимаем кнопку ALT и набираем число в десятичной системе счисления. Надеюсь здесь все понятно. Таблица Alt кодов поможет вам сориентироваться и найти нужный символ.
Внимание! Цифры набирайте на боковой Num-pad клавиатуре.
Полная таблица ALT кодов
Что такое альт код? Alt-код — это символы, которые выводятся при нажатии комбинации клавиш на клавиатуре Alt + X, где X это набор цифр (определенного числа) на NumPad’е. NumPAd это блок цифр на клавиатуре как правило расположенных справа. Символы альт на ПК с операционными системами Windows не доступны при использовании обычной клавиатуры. Их можно вызывать только при помощи дополнительных команд. Зажимаем кнопку ALT и набираем число в десятичной системе счисления. Надеюсь здесь все понятно. Таблица Alt кодов поможет вам сориентироваться и найти нужный символ.
Внимание! Цифры набирайте на боковой Num-pad клавиатуре.
Компьютерные уроки, статьи и советы по настройке компьютера и сетевой работе — создание, оптимизация и продвижение сайтов и блогов в Сети Интернет, программирование HTML, XHTML, CSS и ява-скрипт
Установка и загрузка ОС Виндовс
Таблица символов Юникод в HTML (XHTML)
Машинописный текст состоит из печатных знаков – графических символов.
Графические символы – это символы, которые имеют в тексте видимое отображение.
Все графические символы собраны в наборе единой универсальной системы Юникод.
Вставить графический символ Юникод в html-документ
– главное и единственное назначение для этой таблицы.
Шрифт для символа, его размер и цвет в HTML можно задать кодом, вида:
КОД_СИМВОЛА
где,
Arial – шрифт,
10px — размер шрифта в пикселях,
#ff0000 — код цвета шрифта (красный)
Например:
☎ — размер шрифта символа 30px,
☎ — размер шрифта символа 30px, цвет — красный
☎ — размер шрифта символа 20px,
☎ — размер шрифта символа 10px.
Прим. Рекомендуемые шрифты для вставки спецсимволов – Arial, Verdana и Tahoma. Эти шрифты корректно отображают символы Юникод и сами, в свою очередь, корректно поддерживаются веб-приложениями.
-
«Символ»
(видимое отображение символа)
Из этой графы можно скопировать изображение символа и вставить его в окно текстового html-редактора. Символ скопируется с размером шрифта 20px. После завершения копирования может потребоваться индивидуальная подгонка размера шрифта непосредственно для скопированного знака.
«Наименование»
(только для важных или непонятных символов)
Пояснение назначения символа, его область применения, примеры.
«Мнемоника»
Мнемоника – это буквенная конструкция вида ‘, обозначающая буквенный код символа в HTML. Вставляется непосредственно в html-код html-документа. Мнемоники очень популярны среди профессиональных верстальщиков. Они прекрасно запоминаются человеком и поддерживаются всеми html-приложениями. Каждая мнемоника содержит буквенное имя (обозначение) своего символа и служебный знак (&), который служит сигналом к прочтению кода для браузера и не отображается на экране монитора. Имя каждой мнемоники уникально и легко читаемо, потому что образовано от англоязычного слова, характеризующего символ.
Мнемоника (греч.) — искусство запоминать что-либо. Мнемотехника применяется для облегчения восприятия труднозапоминаемой информации, когда объект запоминания приводится в ассоциативное состояние с чем-либо.
Код – числовой десятичный код символа в HTML, вида &. Вставляется непосредственно в html-код html-документа. Числовой десятичный код состоит из числа, обозначающего порядковый номер символа в системе Юникод и нескольких служебных знаков (& и #), которые служат сигналом к прочтению кода для браузера и не отображаются на экране монитора. Числовой десятичный код имеет широкое распространение и применение, благодаря своей универсальности и простоте восприятия.
Таблица символов Юникод в HTML (XHTML)
Символы управления в HTML (XHTML)
Символы управления в HTML (XHTML) – это служебные символы HTML-языка, которые используются при HTML-вёрстке веб-страницы. Эти символы обязан поддерживать любой браузер, поскольку без них невозможно правильное отображение HTML-текста. Символы управления не отображаются в тексте и, при прямом введении с клавиатуры – интерпретируются браузером как знаки препинания, призывающие к выполнению какого-либо действия при отрисовке страницы на экране.
Допускается использовать символы управления в обычных текстах, где они символизируют общечеловеческие понятия и трактуются браузером как обычные типографские знаки. При таком использовании служебных символов в HTML-текстах требуется вводить не значение самого символа, а именно его HTML-код. Ибо, повторяюсь – в противном случае браузер будет воспринимать служебный символ, как призыв к действию и не будет корректно отображать HTML-текст на экране монитора.
Символы управления и их HTML-код знают и понимают все браузеры без исключения, чего нельзя сказать, увы – про остальные знаки, которые могут отображаться некорректно в разных браузерах или, что ещё хуже – не отображаться совсем.