Учебник HTML

Главная Учебник HTML Учебник CSS Web- mastering
Раскрутка Полезности FAQ Index



Учебник HTML >>Языковые стандарты

Кодирование символов

Все символьные обозначения букв, цифр, специальных знаков и иероглифов на самом деле представляют собой битовые комбинации - различные сочетания битов. Так, например, из 8 битов, в различных комбинациях, теоретически может получиться 256 последовательностей, в свою очередь каждой из этих последовательностей присвоен символ, другими словами из 8 битов может получиться 256 символов. Каждому такому символу присваивается свой код и из них составляется таблица - кодировка символов. Соответственно таких таблиц может быть как минимум по одной на каждый из земных языков. На самом деле их гораздо больше, чем это нужно, все они были созданы в разное время, для различных платформ, и кодируются они не только при помощи 8 битов, но и 16 и даже 32.

Самым популярным из стандартов кодирования символов, в настоящий момент является стандарт ISO 646, созданный международной организацией стандартизации ISO, а точнее его первые 128 символов, которые кодировались при помощи 8 битов, но при этом первый бит всегда равнялся нулю. Ему было присвоено имя ASCII и иногда его еще называют 7-битовым стандартом. Он используется большинством компьютерных машин для написания символов латинского алфавита, а также для синтаксиса всех языков программирования и разметки, а также для всех типов данных.

Для поддержки языков, использующих в своем алфавите символы отличные от латинских, был использован восьмой бит байта, а это дало возможность добавить еще 128 дополнительных символов. Была создана серия кодировок ISO 8859, в которых первая часть - это 128 символов ASCII. Самая первая из них, ISO 8859-1, еще ее называют ISO Latin-1 или 8-битовой ASCII, содержит в себе практически все европейские нестандартные символы, а кодировка ISO 8859-5 является русской.

В свою очередь, организация Unicode Consortium создала на основе 16-битового кодирования одноименную кодировку, в которую решено было вместить 65536 символов, каждый весом в два байта. Первые 256 символов Unicode в точности соответствуют ISO 8859-1, а саму кодировку компьютерное сообщество признало и использует все чаще, и если основной кодировкой в HTML раньше считалась ISO 8859-1, то с появлением HTML 4.0, основной кодировкой стала Unicode.

Не желая останавливаться на достигнутом, ISO разработала новый, 32-битовый стандарт кодирования ISO 10646. Он совместим с Unicode, а также имеет несколько своих производных фоматов, одна из которых - формат UTF-8 внедрен в Windows.

Особенности работы с кодировками

Для нормального отображения символов той или иной кодировки, и сервер, и браузер должны обменяться соответствующей служебной информацией. Для этого протокол HTTP, при помощи поля Accept-Charset, позволяет браузеру послать сообщение на сервер о том, какие кодировки в нем доступны и в каком порядке очередности. При этом сервер может выбрать из вариантов документ, исполненный в требуемой кодировке, сообщить браузеру информацию о том, в какой кодировке будет прислана страница, или автоматически перекодировать ее и переслать браузеру. Если такая возможность не реализована на сервере, то присланный документ можно просмотреть в различных кодировках, выбрав их в настройках браузера вручную.

Еще одним способ сообщить браузеру о стандарте кодирования может сводиться к следующему - автор документа создает служебную информацию для браузера в тэге <МЕТА>, между тэгами <HEAD> и </HEAD>, запись эквивалентную заголовку HTTP, например:
<META HTTP-EQUIV="Content-Type" content="text/html; charset=windows-1251">
Встретив такую инструкцию, браузер автоматически переключается на нужную кодировку.

Русские кодировки

Кодировок, русифицирующих сеть, существует гораздо больше, чем хотелось бы, их как минимум пять: KOI-8 (созданная для UNIX), 866 (для MS DOS), Windows-1251, ISO 8859-5, MAC. Ввиду распространения такого количества русских кодировок, в русской части сети очень распространен способ, когда сервер имеет систему автоматического перекодирования документа на лету, в зависимости от того, какой ответ пришел о браузера.

В итоге, часто происходит например, следующее: документ написан в KOI-8 и имеет об этом запись в тэге <МЕТА>, сервер определяет кодировку браузера Windows-1251 и автоматически перекодирует документ в нее, браузер же получив инструкцию прописанную в тэге <МЕТА> переключается в свою очередь на KOI-8 и пользователь не может прочесть текст. Выход может быть в том, чтобы вовсе не указывать charset в тэге <МЕТА>, в документах, которые будут лежать на таком сервере, либо пользователь сохраняет документ на диске и удаляет эту инструкцию из <МЕТА> вручную.

Создание многоязыковых документов

Иногда web-мастер сталкивается с необходимостью разместить в одном документе текст на двух и более языках. Как правило, это небольшие фрагменты текста, чаще реклама или ссылки, поэтому очень часто их выполняют в виде рисунков экономичного формата .gif Но бывают также случаи, когда на сайте действительно необходимо разместить именно текст. В таком случае можно воспользоваться мнемоническими ссылками на символы Unicode, это значит, что автор использует для создания документа обычную кодировку, а вместо недостающих символов другого языка вставляет их код в таблице Unicode.

Например, если в документ Windows-1251 вставить знак &#246;, или &ouml;, то получим символ ö, применяемый в немецком языке. Этим и объясняется сильное увеличение объема документа в три-четыре раза, когда для его создания используется WYSIWYG-редактор, так как он заменяет каждую букву русского текста такой ссылкой.

Еще один вариант - набрать текст в текстовом процессоре, например в MS Word, а после сохранить его как файл HTML, при этом кодировку документу выбрать, скажем UTF-8.
Пример

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

Ниже приведена таблица наиболее часто встречающихся символов и их кодов:

ЗнаккодЗнаккодЗнаккодЗнаккодЗнаккодЗнаккод
"&#34;Œ&#140;ö&#246;Š&#352;σ&#963;ְ&#1456;
#&#35;&#141;÷&#247;š&#353;τ&#964;ֱ&#1457;
$&#36;Ž&#142;ø&#248;Ţ&#354;υ&#965;ֲ&#1458;
%&#37;&#143;ù&#249;ţ&#355;φ&#966;ֳ&#1459;
&&#38;&#144;ú&#250;Ť&#356;χ&#967;ִ&#1460;
'&#39;&#145;û&#251;ť&#357;ψ&#968;ֵ&#1461;
(&#40;&#146;ü&#252;Ŧ&#358;ω&#969;ֶ&#1462;
)&#41;&#147;ý&#253;ŧ&#359;ϊ&#970;ַ&#1463;
*&#42;&#148;þ&#254;Ũ&#360;ϋ&#971;ָ&#1464;
+&#43;&#149;ÿ&#255;ũ&#361;ό&#972;ֹ&#1465;
,&#44;&#150;Ā&#256;Ū&#362;ύ&#973;ֻ&#1467;
-&#45;&#151;ā&#257;ū&#363;ώ&#974;ּ&#1468;
.&#46;˜&#152;Ă&#258;Ŭ&#364;Ё&#1025;ֽ&#1469;
/&#47;&#153;ă&#259;ŭ&#365;Ђ&#1026;־&#1470;
0&#48;š&#154;Ą&#260;Ů&#366;Ѓ&#1027;ֿ&#1471;
1&#49;&#155;ą&#261;ů&#367;Є&#1028;׀&#1472;
2&#50;œ&#156;Ć&#262;Ű&#368;Ѕ&#1029;ׁ&#1473;
3&#51;&#157;ć&#263;ű&#369;І&#1030;ׂ&#1474;
4&#52;ž&#158;Ĉ&#264;Ų&#370;Ї&#1031;׃&#1475;
5&#53;Ÿ&#159;ĉ&#265;ų&#371;Ј&#1032;א&#1488;
6&#54; &#160;Ċ&#266;Ŵ&#372;Љ&#1033;ב&#1489;
7&#55;¡&#161;ċ&#267;ŵ&#373;Њ&#1034;ג&#1490;
8&#56;¢&#162;Č&#268;Ŷ&#374;Ћ&#1035;ד&#1491;
9&#57;£&#163;č&#269;ŷ&#375;Ќ&#1036;ה&#1492;
:&#58;¤&#164;Ď&#270;Ÿ&#376;Ў&#1038;ו&#1493;
;&#59;¥&#165;ď&#271;Ź&#377;Џ&#1039;ז&#1494;
<&#60;¦&#166;Đ&#272;ź&#378;А&#1040;ח&#1495;
=&#61;§&#167;đ&#273;Ż&#379;Б&#1041;ט&#1496;
>&#62;¨&#168;Ē&#274;ż&#380;В&#1042;י&#1497;
?&#63;©&#169;ē&#275;Ž&#381;Г&#1043;ך&#1498;
@&#64;ª&#170;Ĕ&#276;ž&#382;Д&#1044;כ&#1499;
A&#65;«&#171;ĕ&#277;ſ&#383;Е&#1045;ל&#1500;
B&#66;¬&#172;Ė&#278;ƒ&#402;Ж&#1046;ם&#1501;
C&#67;­&#173;ė&#279;Ǻ&#506;З&#1047;מ&#1502;
D&#68;®&#174;Ę&#280;ǻ&#507;И&#1048;ן&#1503;
E&#69;¯&#175;ę&#281;Ǽ&#508;Й&#1049;נ&#1504;
F&#70;°&#176;Ě&#282;ǽ&#509;К&#1050;ס&#1505;
G&#71;±&#177;ě&#283;Ǿ&#510;Л&#1051;ע&#1506;
H&#72;²&#178;Ĝ&#284;ǿ&#511;М&#1052;ף&#1507;
I&#73;³&#179;ĝ&#285;˘&#728;Н&#1053;פ&#1508;
J&#74;´&#180;Ğ&#286;˙&#729;О&#1054;ץ&#1509;
K&#75;µ&#181;ğ&#287;˚&#730;П&#1055;צ&#1510;
L&#76;&#182;Ġ&#288;˛&#731;Р&#1056;ק&#1511;
M&#77;·&#183;ġ&#289;˜&#732;С&#1057;ר&#1512;
N&#78;¸&#184;Ģ&#290;˝&#733;Т&#1058;ש&#1513;
O&#79;¹&#185;ģ&#291;;&#894;У&#1059;ת&#1514;
P&#80;º&#186;Ĥ&#292;΄&#900;Ф&#1060;װ&#1520;
Q&#81;»&#187;ĥ&#293;΅&#901;Х&#1061;ױ&#1521;
R&#82;¼&#188;Ħ&#294;Ά&#902;Ц&#1062;ײ&#1522;
S&#83;½&#189;ħ&#295;·&#903;Ч&#1063;׳&#1523;
T&#84;¾&#190;Ĩ&#296;Έ&#904;Ш&#1064;״&#1524;
U&#85;¿&#191;ĩ&#297;Ή&#905;Щ&#1065;،&#1548;
V&#86;À&#192;Ī&#298;Ί&#906;Ъ&#1066;؛&#1563;
W&#87;Á&#193;ī&#299;Ό&#908;Ы&#1067;؟&#1567;
X&#88;Â&#194;Ĭ&#300;Ύ&#910;Ь&#1068;ء&#1569;
Y&#89;Ã&#195;ĭ&#301;Ώ&#911;Э&#1069;آ&#1570;
Z&#90;Ä&#196;Į&#302;ΐ&#912;Ю&#1070;أ&#1571;
[&#91;Å&#197;į&#303;Α&#913;Я&#1071;ؤ&#1572;
\&#92;Æ&#198;İ&#304;Β&#914;а&#1072;إ&#1573;
]&#93;Ç&#199;ı&#305;Γ&#915;б&#1073;ئ&#1574;
^&#94;È&#200;IJ&#306;Δ&#916;в&#1074;ا&#1575;
_&#95;É&#201;ij&#307;Ε&#917;г&#1075;ب&#1576;
`&#96;Ê&#202;Ĵ&#308;Ζ&#918;д&#1076;ة&#1577;
a&#97;Ë&#203;ĵ&#309;Η&#919;е&#1077;ت&#1578;
b&#98;Ì&#204;Ķ&#310;Θ&#920;ж&#1078;ث&#1579;
c&#99;Í&#205;ķ&#311;Ι&#921;з&#1079;ج&#1580;
d&#100;Î&#206;ĸ&#312;Κ&#922;и&#1080;ح&#1581;
e&#101;Ï&#207;Ĺ&#313;Λ&#923;й&#1081;خ&#1582;
f&#102;Ð&#208;ĺ&#314;Μ&#924;к&#1082;د&#1583;
g&#103;Ñ&#209;Ļ&#315;Ν&#925;л&#1083;ذ&#1584;
h&#104;Ò&#210;ļ&#316;Ξ&#926;м&#1084;ر&#1585;
i&#105;Ó&#211;Ľ&#317;Ο&#927;н&#1085;ز&#1586;
j&#106;Ô&#212;ľ&#318;Π&#928;о&#1086;س&#1587;
k&#107;Õ&#213;Ŀ&#319;Ρ&#929;п&#1087;ش&#1588;
l&#108;Ö&#214;ŀ&#320;Σ&#931;р&#1088;ص&#1589;
m&#109;×&#215;Ł&#321;Τ&#932;с&#1089;ض&#1590;
n&#110;Ø&#216;ł&#322;Υ&#933;т&#1090;ط&#1591;
o&#111;Ù&#217;Ń&#323;Φ&#934;у&#1091;ظ&#1592;
p&#112;Ú&#218;ń&#324;Χ&#935;ф&#1092;ع&#1593;
q&#113;Û&#219;Ņ&#325;Ψ&#936;х&#1093;غ&#1594;
r&#114;Ü&#220;ņ&#326;Ω&#937;ц&#1094;ـ&#1600;
s&#115;Ý&#221;Ň&#327;Ϊ&#938;ч&#1095;ف&#1601;
t&#116;Þ&#222;ň&#328;Ϋ&#939;ш&#1096;ق&#1602;
u&#117;ß&#223;ʼn&#329;ά&#940;щ&#1097;ك&#1603;
v&#118;à&#224;Ŋ&#330;έ&#941;ъ&#1098;ل&#1604;
w&#119;á&#225;ŋ&#331;ή&#942;ы&#1099;م&#1605;
x&#120;â&#226;Ō&#332;ί&#943;ь&#1100;ن&#1606;
y&#121;ã&#227;ō&#333;ΰ&#944;э&#1101;ه&#1607;
z&#122;ä&#228;Ŏ&#334;α&#945;ю&#1102;و&#1608;
{&#123;å&#229;ŏ&#335;β&#946;я&#1103;ى&#1609;
|&#124;æ&#230;Ő&#336;γ&#947;ё&#1105;ي&#1610;
}&#125;ç&#231;ő&#337;δ&#948;ђ&#1106;ً&#1611;
~&#126;è&#232;Œ&#338;ε&#949;ѓ&#1107;ٌ&#1612;
&#127;é&#233;œ&#339;ζ&#950;є&#1108;ٍ&#1613;
&#128;ê&#234;Ŕ&#340;η&#951;ѕ&#1109;َ&#1614;
&#129;ë&#235;ŕ&#341;θ&#952;і&#1110;ُ&#1615;
&#130;ì&#236;Ŗ&#342;ι&#953;ї&#1111;ِ&#1616;
ƒ&#131;í&#237;ŗ&#343;κ&#954;ј&#1112;ّ&#1617;
&#132;î&#238;Ř&#344;λ&#955;љ&#1113;پ&#1662;
&#133;ï&#239;ř&#345;μ&#956;њ&#1114;چ&#1670;
&#134;ð&#240;Ś&#346;ν&#957;ћ&#1115;ژ&#1688;
&#135;ñ&#241;ś&#347;ξ&#958;ќ&#1116;گ&#1711;
ˆ&#136;ò&#242;Ŝ&#348;ο&#959;ў&#1118;ڰ&#1712;
&#137;ó&#243;ŝ&#349;π&#960;џ&#1119;ڱ&#1713;
Š&#138;ô&#244;Ş&#350;ρ&#961;Ґ&#1168;ڲ&#1714;
&#139;õ&#245;ş&#351;ς&#962;ґ&#1169;ڳ&#1715;



Главная Учебник HTML Учебник CSS Web- mastering
Раскрутка Полезности FAQ Index

Сайт создан в системе uCoz