Что кодовая страница. Кодовые страницы или почему текст иногда нельзя прочитать

19.02.2019

Не новость, что большинство всех сленговых словечек перешло к нам с английского языка. Те люди, которые далеки от IT-индустрии, но хорошо знают английский, смогут понять около половины этих слов. Для начинающего программиста этот словарь будет особо полезен, так как позволить немного окунуться в мир Айти.

Примечание: Здесь собрано 190+ слов . Просьба – если вы не нашли слово, которое, по вашему мнению, используется в обиходе программистов и просто людей из сферы IT или какое-то слово я неверно истолковал – сообщите об этом в комментариях, буду вам очень признателен.

Ава (или ещё «аватарка «, от англ. «avatar ») – графическое представление (картинка/фото/изображение) человека в Интернете/соц.сетях/мессенджерах/играх и т.д.

Админ (от англ. «admin ») – администратор.

Айди (от англ. «identificator ») – идентификатор.

Айпи (или ещё «Айпишник », «Айпи-адрес », от англ. «I nternet P rotocol Address») – уникальный адрес компьютера в сети Интернет. Этот адрес каждому компьютеру присваивает провайдер, который предоставляет устройству выход в Интернет.

Айти (или ещё «АйТи «, от англ. «IT » = «I nformation T echnologies») – информационные технологии.

Айти-евангелист (или ещё «IT-проповедник/пропагандист ») – человек, который занимается пропагандой (нередко профессионально) в сфере IT.

Айтишник (он же «айтишнег », «ойтишнег », «ойтишник ») – специалист в информационных технологиях. Нередко айтишниками называют всех программистов и просто продвинутых пользователей компьютеров и Интернета.

Ака (точнее a.k.a , от англ. «a lso k nown a s») – если дословно, то «ещё известен как». Другими словами, никнейм, псевдоним.

Аноним (или ещё «анонимус », «анон », от англ. «anonym/anonymous ») – человек, скрывающий своё настоящее имя.

Апгрейд (от англ «upgrade ») – обновление/модернизация аппаратного обеспечения (железа).

Апдейт (от англ «update ») – обновление/модернизация программного обеспечения (софта).

Апликуха (от англ. «application ») – прикладное программное обеспечение. Например: компьютерная программа, мобильное приложение.

Аутсорс (от англ. «outsource ») – передача предприятием/компанией выполнение определенной работы специалистам вне штата (фрилансерам или работникам других компаний). Например, есть специализированные конторы бухгалтеров, которые обслуживают десятки других команий на аутсорсе , не являюсь сотрудниками этих компаний.

Баг (от англ. «bug ») – ошибка в программе/коде, из-за которой результаты выполнения программы неправильные.

Бан (от англ. «ban ») – лишение или ограничение каких-либо прав пользователя (например: оставлять комментарии, просматривать определённые страницы и т.д.). Пожизненный бан — исключение пользователя из системы/игры/сайта/группы и т.д.

Батник командный файл с расширением.bat. Используется для работы с командной строкой в Windows.

Баян – шутка/информация, которая ранее уже была опубликована/известна.

Биткоин (от англ. «bitcoin ») – криптовалюта, электронная валюта, поколение цифровых денег, которые никем не контролируются и существуют только в Интернете.

Битый – нерабочий. Например, битые ссылки = ссылки, которые ведут на несуществующие страницы. Пользователю, при попадании на такую страницу, выведется ошибка 404 (Error 404).

Блокчейн (от англ. «blockchain ») – система учёта проводимых транзакций с криптовалютой.

Болванка – чистый, не записанный, компакт-диск.

Браузер (от англ. «browser ») – программа, с помощью которой можно просматривать веб-страницы или, другими словами, выходить в Интернет.

Буржунет – зарубежная (не русскоязычная) часть Интернета. Очень часто под этим термином подразумеваются англоязычные сайты из Европы и США.

Бэкап (от англ. «backup ») – резервное копирование. Создание резервной копии проекта/сайта/данных, чтобы в случае непредвиденных обстоятельств/сбоя можно было бы вернуть всю систему в прежнее состояние. Хорошей практикой является регулярное обновление и хранение бэкапов в нескольких местах (не только на рабочем компьютере).

Бэкенд (от англ. «back-end ») – разработка «внутренней части» сайтов/программ/приложений. Та часть, которую мы не видим (то, что творится под капотом). Детальнее .

Валидный (от англ. «valid ») – корректный/действительный. Тот, который соответствует требованиям/условиям/правилам.

Варез (от англ. «warez ») – любая интеллектуальная собственность или программное обеспечение, которое свободно распространяется в сети Интернет, нарушая при этом права правообладателя.

Варезник – сайт, который распространяет варез (пиратское программное обеспечение, пиратские фильмы/музыку и т.п.). Обычно, термин «варезник» применяется к сайтам-файлообменникам.

Вебинар (от англ. «web based seminar ») – это семинар, презентация или лекция на определённую тему, которая проходит онлайн, в режиме реального времени, в Интернете. Под этим термином также подразумевают и запись вебинара, который проходил ранее.

Видюха (или ещё «видяха ») – видеокарта.

Виндоус (или ещё «Винда ») – операционная система Windows.

Виндузятник – пользователь операционной системы Windows (см. сарказм).

Винт (или ещё «хард ») – винчестер, он же «жёсткий диск», он же «HDD».

Воркшоп (от англ. «workshop ») – обучающее мероприятие для работников из определённой области деятельности (программистов, фотографов, дизайнеров и т.д.). Есть главный «ведущий» работник, который проводит обучение других. Есть задание и все работники, вместе с «ведущим», его выполняют, при этом общаясь и помогая друг другу.

Выёбщик – человек, работающий в IT/программировании с завышенным ЧСВ, который всегда выражает своё экспертное мнение, нередко в неподходящих случаях и не уважает мнения окружающих (очень часто даже не удосуживается их выслушать). Другими словами, выпендрёжник.

Галера – компания/предприятие/организация, в которой трудится программист. В основном галера применяется к компаниям, где практикуется плохое отношение к работникам.

Геймдев (от англ. «game dev elopment») – разработка/создание игр.

Геймер (от англ. «gamer ») – игрок.

Гиг (или ещё «гектар «) – гигабайт.

Гик (от англ. «geek ») – человек, который хорошо разбирается в определённой сфере деятельности, являясь фанатиком своего дела. Сейчас под гиками очень часто подразумевают именно программистов.

Глюк – непонятный сбой, задержка, торможение процессов в программе/игре.

Говнокод плохой код, в котором сложно разобраться и который сложно поддерживать/модифицировать/изменять.

Говнокодер – человек, который пишет говнокод.

Гребцы – работники галеры (компании).

Гуглить – искать информацию в поисковике Google.

Дебажить (от англ «debug/debugging ») – искать и исправлять ошибки в программе.

Девайс (от англ. «device ») – техническое устройство (ноутбук/смартфон/планшет/умные часы и т.д.).

Девелопер (от англ. «developer ») – разработчик.

Девелопмент (от англ. «development ») – разработка чего-либо: программ, приложений, игр и т.д.

Дедлайн (от англ. «deadline ») – крайний срок выполнения или сдачи проекта/задания/работы.

Дезигнер (от англ. «designer ») – дизайнер.

Демка (от англ. «demo ») – демонстрационная версия чего-либо, как правило, с урезанным функционалом или с пробным периодом использования.

Деплой (или ещё «задеплоить », от англ. «deploy ») – это развёртывание (перенос) программного обеспечения (исполняемого кода) на сервер или устройство, где оно будет работать.

Дефолтный (или ещё «по дефолту »,от англ. «default ») – тот, что используется по умолчанию, стандартный.

Джуниор (или ещё «джун », «июнь », от англ. «Junior Developer») – начальный уровень программиста. Человек, имеющий минимальный опыт и навыки.

Домен (от англ. «domain ») – уникальный адрес/имя сайта в Интернете. Например, сайт — это домен, который состоит из доменного имени ravesli и домена первого уровня.com .

Дрова – драйверы.

Железо аппаратное обеспечение (комплектующие) компьютеров/ноутбуков/смартфонов и т.д.

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

Законнектиться (или ещё «подконнектиться », «приконнектиться », от англ. «connect ») – присоединиться к чему-либо.

Запилить – загрузить, выставить на всеобщее обозрение. Например, запилил видосик в YouTube = загрузил видео в YouTube.

Зафакапить – не справиться с выполнением поставленной задачи, испортить задание.

Зашквар – позор, гнусное поведение.

Имхо (от англ. «IMHO » = «I n M y H umble O pinion») – по моему скромному мнению.

Инет – Интернет.

Инсталлировать (от англ. «install ») – устанавливать. Например, инсталлировать Винду = установить Windows.

ИТ И нформационные Т ехнологии.

Кейс (от англ. «case ») – реальная ситуация/случай, которые произошли с автором.

Килобаксы – тысячи долларов. Приставка кило = k (с англ. означает «тысяча»).

Клава – клавиатура.

Коворкинг (от англ. «coworking ») – место для организации труда специалистами одной или сразу нескольких сфер деятельности, фрилансеров. Другими словами, современный арендованный офис для работы специалистов.

Кодер (или ещё «кодерок », от англ. «coder »)– программист.

Кодить – программировать.

Коммитить (или ещё «закоммитить », «сделать коммит », от англ. «commit ») – сохранить/зафиксировать изменения кода в репозитории (хранилище) кода.

Компиляция – конвертация кода, написанного на высокоуровневом языке, в исполняемую программу, которую процессор понимает напрямую. Детальнее об этом .

Компилятор – программа, которая выполняет компиляцию.

Компуктер (или ещё «компудахтер », «компутер ») – компьютер.

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

Копипаст (от англ. «copy/paste ») – скопировать и вставить. «copy» – скопировать, «paste» – вставить.

Костыль – исправление серьезных багов/дыр/ошибок без должного исправления целой системы. Т.е. решение на коленке в кратчайшие сроки в ущерб эффективности и хорошим практикам программирования.

Кракозябры (или ещё «крякозябры ») – набор непонятных символов, бессмыслица. Возникает в результате неправильной кодировки. Иногда кракозябры можно наблюдать на сайтах с неверной кодировкой: Привет! Меня .

Кресты – язык программирования С++.

Кряк (или ещё «таблетка », от англ. «crack ») – специальная программа или дополнение к программе для взлома другого программного обеспечения. В основном используется для превращения лицензионной (платной) версии чего-либо (программы/игры) в бесплатную.

Кулхацкер (от англ. «cool hacker ») – человек, считающий себя хакером или опытным программистом, не являясь таковым в реальной жизни.

Лаг (или ещё «лаги ») – задержка в выполнении программы/игры, отсутствие реагирования на действия пользователя. Синоним к слову глюк .

Лайфхак (от англ. «lifehack ») – полезный совет, помогающий решить какую-то проблему с экономией времени/усилий.

Ламер (от англ. «lamer ») – неопытный пользователь, человек, который не разбирается в чём-то, но думает что разбирается. Не путать с «чайником».

Левел (от англ. «level ») – уровень.

Ликбез лик видация без грамотности. Обучение азам, основам.

Линк (от англ. «link ») – ссылка на какой-либо ресурс.

Линукс (Linux ) – бесплатная операционная система, которой пользуются многие программисты и учреждения (где эта операционная система установлена на серверах).

Линуксоид – человек, который пользуется операционной системой Линукс (Linux).

Лог (от англ. «log ») – журнал, в котором записываются в хронологическом порядке все выполненные действия в чём-либо (в программе, на сервере). Например: время возникновения ошибок, сбоев, действия пользователей и т.д.

Локалка – локальная сеть компьютеров, соединённых кабелями.

Локейшн (от англ. «location ») – месторасположение.

Лэптоп (от англ. «laptop ») – ноутбук.

Майнинг (от англ. «mining ») – добыча чего-либо. Сейчас майнинг ассоциируется с добычей криптовалюты, путём выполнения компьютером сложных математических операций.

Мамка (или ещё «мать », «материнка », «мазерборд ») – материнская плата.

Манагер (от англ. «manager ») – менеджер, руководитель.

Мануал (от англ. «manual ») – руководство, инструкция по использованию чего-либо.

Мидл (от англ. «Middle Developer») – средний уровень знаний и навыков программиста.

Митап (от англ. «meetup ») – собрание/встреча специалистов определённой сферы деятельности для обмена опытом, в образовательных целях или просто для общения в неформальной обстановке.

Моник – монитор.

Мыло – адрес электронной почты, E-mail пользователя.

Нативный (от англ. «native »)– родной. Часто используют словосочетание нативный код = исходный код (не модифицированный позже), написанный разработчиками.

Нетворкинг (от англ. «networking ») — окружение специалистов определённой сферы деятельности, где, используя связи между этими людьми, можно решить специфические проблемы/задачи или просто познакомиться для совместного сотрудничества.

Ноулайфер – человек, который большинство своего времени проводит за компьютером/ноутбуком/смартфоном в виртуальном мире (Интернет/соц.сети/игры). Человек, не имеющий личной жизни, хобби или каких-либо других занятий в реальном мире.

Ноут – ноутбук.

Нуб (или ещё «нубчик », «нубас », «нубарь », «нубак », от англ «newbie ») – новичок или человек у которого ничего не получается, или он не знает как правильно что-то сделать. Неопытный.

Овертайм (от англ. «overtime ») – переработка после окончания рабочего дня. Сверхурочные часы.

Околоайтишник (от русск. «околофутболист ») – человек, который не является айтишником/программистом, но работает в сфере IT/программирования. Например, специалист по кадрам (HR), бухгалтер, финансист.

ООП (сокр. от «О бъектно-О риентированное П рограммирование») – методология/парадигма программирования, в которой основными концепциями являются объекты и классы. Детальнее об этом .

Опенсорс (от англ. «open source software») – программное обеспечение/софт с открытым исходным кодом, который может использовать/дополнять/изменять любой желающий. В большинстве случаев это программное обеспечение является некоммерческим проектом.

Опенспейс (от англ. «open space ») – офис открытого типа, где сотрудники работают в одном помещении (относительно большом) без каких-либо перегородок/стен.

Оперативка оперативная память, она же «RAM » = «Random A ccess M emory», она же «ОЗУ » = «О перативное З апоминающее У стройство».

ОС (или ещё «OS », сокр. от англ. «O perating S ystem») – О перационная С истема – программное обеспечение, которое позволяет управлять аппаратной частью компьютеров/ноутбуков/смартфонов и т.д.

Откат – возвращение на исходную позицию из бэкапа.

Отконнектиться (от англ. «disconnect ») – отсоединиться.

Отладка – этап в разработке программного обеспечения, на котором выполняется поиск и исправление ошибок. Детальнее об этом .

Отладчик (или ещё «дебаггер », от англ. «debugger ») – программа, с помощью которой выполняется отладка.

Оффтоп (или ещё «оффтопик », от англ. «off topic ») – любое сообщение мимо кассы (т.е. не по теме).

Очепятка – опечатка, ошибка в слове.

Патч (от англ. «patch ») – дополнение или обновление, которое исправляет ошибки/баги/глюки. Применение патча к программе называют пропатчиванием .

Песочница (от англ. «sandbox ») – специальная область/среда для безопасного выполнения программы. Раздел «Песочница» на сайте обозначает категорию для записей новичков (своеобразный фильтр для новоприбывших).

Плюшки – бонусы. Очень часто относятся к условиям работы: гибкий график, наличие спортзала, кухни, комнаты отдыха и т.д.

Плюсы – язык программирования С++.

ПО – программное обеспечение.

Подкаст (от англ. «podcast ») видео или аудио уроки, рассказы на определённую тему, чаще всего образовательного характера. Сейчас очень популярны подкасты-интервью или подкасты TED.

Пост (от англ. «post ») – запись/статья/информационная заметка.

Прога – программа.

Прогер – программист.

Профан – человек, который не имеет опыта в определённой сфере или не разбирается в чём-то.

Профит (от англ. «profit ») – прибыль/выгода/польза.

Пушить (или ещё «запушить », от англ. «push ») – публикация на сервер с помощью команды push .

Разраб – разработчик.

Ребзя – ребята.

Ребутнуть (или ещё «ребутить », от англ. «reboot ») – перезагружать. Например, ребутнуть Винду = перезагрузить Windows.

Редизайн (от англ. «redesign »)– внешнее обновление/модернизация системы/сайта/интерфейса. Иногда под этим термином подразумевается и внутреннее обновление/модернизация.

Релиз (от англ. «release ») – представление готовой версии продукта (игры/программы/песни/альбома), выпуск на всеобщее обозрение. Например: релиз игры = выпуск игры для старта продаж.

Рунет русскоязычный Интернет. Совокупность сайтов с контентом на русском языке.

Сабж (или ещё «сабжект », от англ. «subject ») – тема для дискуссии между людьми на определённом ресурсе (чаще всего, на форуме). Тема для начала разговора.

Саппорт (от англ. «support ») – служба поддержки.

Свитчер (от англ. «switcher ») – человек, который перешёл работать в IT/программирование из другой профессии. Например, если человек раньше работал учителем или поваром, а затем стал программистом, то он считается свитчером.

Сеньор (или ещё «сеньор-помидор », «сеньйор », «сениор », от англ. «Senior Developer») – высокий уровень знаний и навыков специалиста. Опытный программист.

Сервак – сервер.

Сижка – язык программирования С.

Сисадмин – системный администратор.

Системник – системный блок.

Скилл (или ещё «скиллы », «скилы », от англ. «skill ») – навыки, умение хорошо что-то делать.

Скрин (или ещё «скриншот »,от англ. «screenshot ») – снимок экрана.

Слоупок – медленный, тормоз. Название произошло от розового покемона Slowpoke .

Смузи – любимый напиток программистов/айтишников (см. сарказм).

Смузихлёб – программист-выёбщик.

Софт (от англ. «soft ware») – программное обеспечение, программа.

Софт скиллы (от англ. «soft skills ») – социальные/коммуникационные/личностные навыки/качества, необходимые, в первую очередь, для адаптации и работы в коллективе.

Спам (от англ. «spam ») – электронные письма/сообщения рекламного и иного характера пользователям, не желающих и не согласившихся их получать.

Спамить – отправлять спам.

Стрим (от англ. «stream ») – трансляция действий, происходящих на компьютере (или в реальной жизни) в режиме реального времени.

Стримить – делать стрим.

Стример – тот, кто делает стрим.

Технарь – человек, имеющий специальное техническое образование или сотрудник, который работает в бэкенде (бэкенд-разработчик ).

Тимлид (или ещё «тимлидер », от англ. «team lead er») – ведущий разработчик, лидер команды программистов.

Трейни (от англ. «trainee ») – стажёр, работник, который не дотягивает до уровня Junior-специалиста.

ТС (или ещё «т опик с тартер», от англ. «topic starter ») – человек, который вынес на обсуждение определённую тему. Тот, кто начал разговор/дискуссию.

Тулза (от англ. «tools ») – вспомогательное программное обеспечение, предназначенное для выполнения специфических задач. Синоним к слову утилита .

Туториал (от англ. «tutorial ») – сборник уроков для обучения чему-либо, учебник.

Тян – подруга, девушка.

Утилита (или ещё «утилитка », от англ. «utility ») – вспомогательное программное обеспечение, предназначенное для выполнения вспомогательных работ, настройки системного оборудования, операционных систем и прочего. Другими словами, программа, которая помогает что-то сделать.

Фаервол (от англ. «firewall ») – антивирус, который защищает компьютер от вирусов. С английского означает «горящая стена» — здесь следует понимать стену, которая защищает другие здания от распространения пожара. Другое название — Brandmauer (в переводе с немецкого тоже означает «горящая стена»).

Факап (от англ. «fuck up ») – неудача, провал, облом. Зачастую подразумеваются более-менее серьёзные ошибки.

Фидбек (от англ. «feedback ») – обратная связь. Например, пользовательский фидбек = обратная связь от пользователей. Под обратной связью подразумеваются любые упоминания, отзывы, комментарии, сообщения о бренде/компании/сайте.

Фиксить (от англ. «fix ») – исправлять ошибки.

Фича (от англ. « feature ») – особенность, уникальная возможность, свойство. Популярное выражение: «Это не баг, а фича».

Флейм (или ещё «флэйминг », от англ. «flame ») – спор ради спора, когда пользователи начинают общение не по теме разговора/дискуссии и переходят на личностные и взаимные оскорбления.

Флеха (или ещё «флэха », «флешка ») – запоминающее устройство, подключаемое к компьютеру по интерфейсу USB.

Флуд (от англ. «flood ») – сообщения/комментарии не по теме.

Флудить – оставлять нетематические сообщения/комментарии.

Формошлёп – человек, который занимается формошлёпством. Очень часто формошлёпами называют тех, кто разрабывает шаблоны сайтов или занимается их вёрсткой.

Формошлёпство – любая низкоквалифицированная работа в программировании и ИТ для которой требования к опыту и знаниям — минимальные.

Фреймворк (от англ. « framework ») – программный продукт/система/платформа, основная цель которой — облегчение/упрощение создания и поддержки разного рода проектов/приложений/сервисов/сайтов.

Фриланс (от англ. «freelance ») – работа из дому, вне штата, иногда на себя, которая приносит деньги и в которой нет постоянного заказчика/начальника.

Фрилансер (от англ. «freelancer ») – человек, который занимается фрилансом.

Фронтенд (от англ. « front-end ») – разработка «внешнего вида» сайта, клиентская часть. То, что мы видим снаружи. Детальнее .

Хакатон (от англ. «hack marathon ») – мероприятие, на котором собираются специалисты из разных отраслей разработки программного обеспечения (чаще всего программисты, но могут быть и дизайнеры, тестеры) для разработки определённого решения/проекта/приложения/программы. Другими словами, марафоны программирования, на которые собираются программисты попрограммировать.

Хард скиллы (от англ. «hard skills ») – технические знания и навыки.

Холивар (от англ. «holy war ») – споры между людьми, которые имеют противоположные взгляды и пытаются навязать их друг другу.

Хрюша (или ещё «HR », от англ. «H uman R esources») – специалист по кадрам, рекрутёр. Человек, который ищет работников на вакансии, проводит с ними первичные интервью, адаптацию в коллективе и выполняет ряд других сопутствующих вопросов.

ЦП – центральный процессор.

Чайник – новичок, неопытный пользователь.

ЧСВ Ч увство С обственной В ажности.

Шерить (или ещё «расшарить », от англ. «share ») – делиться, давать доступ к определённым данным.

Шарить –

Здравствуйте, уважаемые читатели блога сайт. Сегодня мы поговорим с вами про то, откуда берутся кракозябры на сайте и в программах, какие кодировки текста существуют и какие из них следует использовать. Подробно рассмотрим историю их развития, начиная от базовой 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 кодировкам, которые были разработаны американским институтом стандартизации. В просторечии еще использовалось название кириллица для варианта с поддержкой русского языка. Примером такой может служить .

Она выгодно отличалась от используемых ранее CP866 и KOI8-R тем, что место символов псевдографики в ней заняли недостающие символы русской типографики (окромя знака ударения), а также символы, используемые в близких к русскому славянских языках (украинскому, белорусскому и т.д.):

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

Очень часто они вылезали при отправке и получении сообщений по электронной почте, что повлекло за собой создание очень сложных перекодировочных таблиц, которые, собственно, решить эту проблему в корне не смогли, и зачастую пользователи для переписки использовали , чтобы избежать пресловутых кракозябров при использовании русских кодировок подобных CP866, KOI8-R или Windows 1251.

По сути, кракозябры, вылазящие вместо русского текста, были результатом некорректного использования кодировки данного языка, которая не соответствовала той, в которой было закодировано текстовое сообщение изначально.

Допустим, если символы, закодированные с помощью CP866, попробовать отобразить, используя кодовую таблицу Windows 1251, то эти самые кракозябры (бессмысленный набор знаков) и вылезут, полностью заменив собой текст сообщения.

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

В конце концов такая ситуация с множеством кодировок и постоянно вылезающими кракозябрами многим надоела, появились предпосылки к созданию новой универсальной вариации, которая бы заменила собой все существующие и решила бы, наконец, на корню проблему с появлением не читаемых текстов. Кроме этого существовала проблема языков подобных китайскому, где символов языка было гораздо больше, чем 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 решил основную проблему — теперь у нас в шрифтах существует единое кодовое пространство . И теперь их производителям остается только исходя из своих сил и возможностей заполнять его векторными формами символов текста. Сейчас в наборы даже .

В приведенной чуть выше «Таблице символов» видно, что разные шрифты поддерживают разное количество знаков. Некоторые насыщенные символами Юникода шрифты могут весить очень прилично. Но зато теперь они отличаются не тем, что они созданы для разных кодировок, а тем, что производитель шрифта заполнил или не заполнил единое кодовое пространство теми или иными векторными формами до конца.

Кракозябры вместо русских букв — как исправить

Давайте теперь посмотрим, как появляются вместо текста кракозябры или, другими словами, как выбирается правильная кодировка для русского текста. Собственно, она задается в той программе, в которой вы создаете или редактируете этот самый текст, или же код с использованием текстовых фрагментов.

Для редактирования и создания текстовых файлов лично я использую очень хороший, на мой взгляд, . Впрочем, он может подсвечивать синтаксис еще доброй сотни языков программирования и разметки, а также имеет возможность расширения с помощью плагинов. Читайте подробный обзор этой замечательной программы по приведенной ссылке.

В верхнем меню 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 5, и она будет стопроцентно правильно понята любыми используемыми на текущий момент браузерами.

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

Удачи вам! До скорых встреч на страницах блога сайт

посмотреть еще ролики можно перейдя на
");">

Вам может быть интересно

Что такое URL адреса, чем отличаются абсолютные и относительные ссылки для сайта
OpenServer - современный локальный сервер и пример его использования для установки WordPress на компьютер
Что такое Chmod, какие права доступа назначать файлам и папкам (777, 755, 666) и как это сделать через PHP
Поиск Яндекса по сайту и интернет-магазину

Индикатор текущего языка ввода находится на панели задач справа (символы Enобозначают английский язык,Uk– украинский иRu– русский). Изменить язык ввода можно, щелкнув левой кнопкой мыши по индикатору. В появившемся затем меню следует щелкнуть левой кнопкой мыши по строке нужного языка. Кроме того, при установке или настройкеWindowsможно выбрать комбинацию клавиш для изменения языка ввода (либолевый Alt + Shift , либоCtrl + Shift ).

Для кодирования текстовых данных в Windowsиспользуются три основные кодировки:

    кодировка OEM;

    кодировка ANSI;

    кодировка Unicode.

В режиме командной строки в Windowsиспользуется кодовая таблица ASCII (American Standard Code for Information Interchange), разработанная ANSI (American National Standard Institute – Американский национальный институт стандартов). Первая половина таблицы (символы с десятичными кодами от 0 до 127) содержит те символы, которые можно ввести с клавиатуры (точнее с ее символьной зоны). Во второй половине кодовой таблицы (символы с десятичными кодами от 128 до 255) содержатся в основном общепринятые математические и так называемые псевдографические символы (например, "" или ""), использовавшиеся в текстовом режиме для рисования линий и диаграмм.

Однако многие алфавиты используют буквы, отличные от 26 латинских букв, заданных в первой половине кодовой таблицы ASCII. Поэтому были разработаны кодовые страницы и для этих языков. Каждой такой кодовой странице присвоен числовой номер. Так, кодовые страницы с номерами 850 и 852 используются для западноевропейских языков, а кодовая страница 866 – для русского и украинского языков. В этой кодировке символы кириллицы имеют следующие коды:А-Я – 128-159 ("80 " - "9 F "),а-п – 160-175 ("A 0 " - "AF "),р-я – 224-239 ("E 0 " - "EF "), Ё – 240 ("F 0 "), ё – 241 ("F 1 "),Є – 240 ("F 2 "),є – 241 ("F 3 "), Ї – 240 ("F 4 "),ї – 241 ("F 5 "),т.е. расположены на тех позициях, где в кодировкеASCIIнаходятся относительно редко используемые символы национальных алфавитов и греческие буквы. Для украинских буквІ и і в этой кодировке используются соответствующие латинские буквы с кодами 73 ("49 ") и 105 ("69 ").

В терминологии Windows кодировка ASCII называется кодировкой OEM (Original Equipment Manufacturer – производитель оригинального оборудования).

Кодировка ANSI является «родной» кодировкойWindowsи была разработана специально для этой операционной системы. Первая половина кодовой таблицы содержит те же символы, что и первая половина кодовой таблицы кодировкиASCII(OEM), т.е. текст на английском языке в обеих кодировках будет выглядеть одинаково. Во второй половине кодовой таблицыANSIтакже размещаются буквы национальных алфавитов. Кодовая страницаWindowsдля западноевропейских алфавитов имеет номер 1252, а для языков, использующих буквы кириллицы (в том числе, для русского и украинского языков) – номер 1251. Следует отметить, что коды одних и тех же букв русского и украинского языка в кодовой странице 866 и в кодовой страницеWindows-1251 не совпадают. Так, буквыА -Я имеют коды 192-223 ("C 0 " - "DF "),а -я – 224-255 ("E 0 " - "FF "),Ё – 168 ("A 8 "), ё – 184 ("B 8 "),Є – 170 ("AA "),є – 186 ("BA "), Ї – 175 ("AF "),ї – 191 ("BF "),І – 178 ("B 2 "),і – 179 ("B 3 "), Ґ – 165 ("A 5 "), ґ – 180 ("B 4 ").

В кодировке Unicode на каждый символ отводится два байта. Так, коды букв латинского алфавитаA -Z иa -z в шестнадцатеричном представлении лежат соответственно в диапазонах "0041 " - "005 A " и "0061 " - "007 A ". Коды букв русского алфавитаА -Я иа -я лежат соответственно в диапазонах "0410 " - "042 F " и "0430 " - "044 F ". Исключением являются буквыЁ иё , коды которых имеют значения "0401 " и "0451 ". Буквы украинского алфавита, совпадающие с русскими буквами, имеют те же коды, что и соответствующие русские буквы, а буквыЄ , І , Ї , є , і , ї , Ґ и ґ имеют соответственно коды "0404 ", "0406 ", "0407 ", "0454 ", "0456 ", "0457 ", "0490 " и "0491 ".

Существует несколько разновидностей представления символов в кодировке Unicode. Самой распространенной являетсякодировка UTF -16 , в которой каждый символ представлен двумя байтами, причем в процессоре и в памяти компьютера младший байт ("00 " для латинских букв или "04 " – для букв кириллицы) размещается вторым, а старший – первым, т.е. букваА будет представлена как "1004 ". Такое представление называют такжеUTF -16 Little Endian (младший байт в конце). Это представление используется в процессорах фирмыIntelи часто называют форматомIntel.

В кодировке UTF -16 Big Endian (старший байт в конце) первым идет младший байт, вторым – старший, т.е. букваА будет представлена как "0410 ". Такое представление данных используется в процессорахMotorolaиPowerPCи, соответственно, в компьютерах фирмыApple, использующих эти процессоры (в последнее время появились компьютерыAppleна основе процессоров фирмыIntel).

Формат UTF-8 предназначен для сокращения объема вводимых и выводимых данных. Данные в этом формате представляются по следующему алгоритму:

    символы Unicodeв диапазоне "0000 " - "007 F " (первые 128 символов) записываются одним байтом (старший байт отбрасывается);

    символы Unicodeв диапазоне "0080 " - "07 FF " (охватывающем буквы наиболее распространенных национальных алфавитов) записываются двумя байтами следующим образом: символUnicodeс двоичной кодировкой00000 xxxxxyyyyyy (гдеx иy 0 или1 ) преобразуется к виду110 xxxxx 10 yyyyyy ;

    символы Unicodeв диапазоне "0800 " - "FFFF " записываются тремя байтами следующим образом: символUnicodeс двоичной кодировкойxxxxyyyyyyzzzzzz (гдеx ,y иz 0 или1 ) преобразуется к виду1110 xxxx 10 yyyyyy 10 zzzzzz .

Для того, чтобы текстовый редактор мог определить, какая из кодировок Unicodeиспользована для содержимого, в самом начале файла помещается символметки порядка байт BOM (ByteOrderMark). Это либо символ "FFFE " (для кодировкиUTF-16), либо символ "FEFF " (для кодировкиUnicodeBigEndian), либо символ "EFBBBF " (для кодировкиUTF-8).

Для представления букв русского и украинского алфавитов существуют также другие кодировки:

    кодировка Unix (кодовая страница KOI8-R для русского языка и отдельная кодовая страница для украинского языка, иногда называемая KOI8-U);

    кодировка Apple Macintosh (кодовая страница MacCyrillic);

    международная кодировка кириллицы ISO8859-5 (относительная кодировка символов в этой кодировке соответствует кодировке Unicode).

Просмотреть используемые кодировки символов в различных шрифтах можно с помощью системного приложения WindowsТаблица символов. Запустить это приложение можно в подменюСлужебные, которое находится в подменюСтандартныеглавного меню. Выбор шрифта в диалоговом окне этого приложения производится в полеШрифт. Если подвести курсор к какому-либо символу шрифта рядом в рамке будет выведен код этого символа и его наименования. Если щелкнуть мышью по символу и нажать кнопкуВыбрать, то выделенный символ будет перенесен в полеДля копированиядиалогового окна. Выбранные в этом поле символы можно копировать в любое приложение с помощью кнопкиКопировать. Эту возможность можно использовать для вставки в текст символов, отсутствующих на клавиатуре (например, греческих букв или математических символов).

Редактор Блокнотпозволяет открывать, просматривать и редактировать текст во всех трех кодировках (OEM,ANSIилиUnicode), однако для этого необходимо установить соответствующий шрифт с помощью командыШрифтменюФормат. Для кодировкиOEMустанавливается шрифтTerminal , а для кодировокANSIилиUnicodeможно установить любой шрифт типаTrueType (со значком) илиOpenType (со значком), например,Times New Roman ,Arial ,Verdana илиCourier New .

Текстовый файл в кодировке OEM, открытый в редактореБлокнот, можно сохранить только в этой кодировке. Текст в кодировкеANSIилиUnicodeможно сохранить в одной из следующих кодировок:ANSI,UTF-16,UTF-16BigEndianиUTF-8. Для этого в диалоговом окне командыСохранить какменюФайлнеобходимо выбрать соответствующее значение в полеКодировка:ANSI ,Юникод ,Юникод Big Endian илиUTF -8 . По умолчанию текст в редактореБлокнотсохраняется в кодировкеANSI.

Редактор Блокнотне позволяет производить преобразование содержимого файла из кодировкиOEMв кодировкуANSI, а также выполнять обратное преобразование. Для этого можно использовать либо использовать командную оболочкуFar , либо воспользоваться редакторомWord(эта возможность будет рассмотрена в лабораторной работе 1-07).

В командной оболочке Farнадо сначала щелкнуть мышью по наименованию файла в кодировкеOEMи нажать клавишуF 4 (редактирование файла). В окне редактора помощью клавишCtrl +A выделяется содержимое всего файла, а затем с помощью клавишCtrl +C содержимое файла копируется в буфер обмена. Выход из редактора выполняется с помощью клавишиEsc .

После этого с помощью команды

copy con имя-файла . txt

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

Затем открывается (с помощью клавиши F 4 ) полученный пустой файл и в нем с помощью переключателяF 8 устанавливается кодировкаWindows(значение режима кодировке в первой строке редактора должно бытьWin ) и содержимое буфера обмена копируется в файл с помощью клавишCtrl +V . Содержимое файла в редакторе сохраняется с помощью клавишиF 2 .

Иногда необходимо просмотреть содержимое файла непосредственно в шестнадцатеричном виде, при этом каждый байт представляется двумя шестнадцатеричными цифрами. Такую возможность предоставляют многие командные оболочки (например, FarилиTotal Commander). Кроме того, существует целый класс текстовых редакторов, называемыхHEX -редакторами , специально предназначенных для просмотра и изменения содержимого файлов, дисков и оперативной памяти.

Для просмотра содержимого текстового файла в Farщелкните мышью по наименованию файла и нажмите клавишуF 3 (просмотр файла). Для вывода содержимого в шестнадцатеричном виде нажмите затем клавишуF 4 (эта клавиша переключает режим просмотра с текстового на шестнадцатеричный и обратно).

В компьютере вся информация храниться в цифровом виде. Компьютер не понимает больше ничего кроме цифр. Картинки, музыка, видео и текст, программы, игры и даже вирусы для компьютера не что иное, как набор цифр. Цифры и только цифры. При нажатии клавиши на клавиатуре в компьютер попадает цифровой код, соответствующий данной клавише. Так как на клавише нарисованы буквы, цифры или что-то другое, то можно сказать, что определенный цифровой код соответствует определенной букве или символу. При выводе на экран компьютер рисует букву или символ в зависимости от цифрового кода. То есть если цифровой код соответствует букве W, то компьютер её и рисует. Если соответствие символов цифровому коду записать в таблицу, то получим кодовую страницу . Кодовая страница – это таблица, связывающая цифровые (двоичные) коды символов или знаков, используемые приложениями, с клавишами на клавиатуре или с отображением знаков на экране. Кодовые страницы обеспечивают поддержку разных языков. У каждой кодовой страницы существует свой номер. Например, у кодовой страницы для знаков арабского языка номер ср1256, а у кириллицы – ср1251. Обычно можно использовать только одну кодовую страницу в данный момент времени. Если надо сменить язык, то надо менять и кодовую страницу. Это связано с ограниченным объёмом таблицы. Теперь, если текст набирался с использованием одной кодовой страницы (или в одной кодировке), а прочитать его попытаются с использованием другой кодовой страницы (или в другой кодировке), то скорее всего ничего не выйдет, потому что цифровым кодам будут соответствовать совсем другие символы или знаки и совсем не похожие на те первоначальные. В результате мы видим абракадабру или что-то вроде этого. Из всего этого получается простое правило, что читать надо, используя ту же кодовую страницу, что использовалась при вводе читаемого текста . Или использовать программу, которая могла бы перекодировать из одной кодировки в другую. Сейчас это могут делать большинство текстовых редакторов, а например, в обозревателе Microsoft Internet Explorer кодировку можно изменить, щёлкнув правой кнопкой мышки и выбрав пункт – «Кодировка». Для снятия ограничения на количество языковых знаков в кодовой странице консорциумом Unicode был разработан стандарт кодировки знаков, который позволяет представить в одном наборе знаков почти все языки мира. И этот стандарт постепенно начинают использовать все больше и больше.

Языки => Cтандарты кодировки

Многоязыковый/ Юникод/ Прочий набор знаков => UCS-2 little-endian и big-endian, UTF-8, UTF-7 Арабский => Windows 1256, ASMO 708 Китайский (упрощенное письмо) => GB2312, GBK, EUC-CN, ISO-2022-CN, HZ Китайский (традиционное письмо) => BIG5, EUC-TW, ISO-2022-TW Кириллица => Windows 1251, KOI8-R, KOI8-RU, ISO8859-5, DOS 866 Английский/Западноевропейский/Прочий латинский набор знаков => Windows 1250, 1252-1254, 1257, ISO8859-x Греческий => Windows 1253 Иврит => Windows 1255 Японский => Shift-JIS, ISO-2022-JP (JIS), EUC-JP Корейский => Wansung, Johab, ISO-2022-KR, EUC-KR Тайский => Windows 874 Вьетнамский => Windows 1258 Индийские языки => ISCII (Indian Script Code for Information Interchange)