Кодирование. Рассуждения о семантике кода HTML с примерами Алфавит масонов

Главная / Средний

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

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

A1Z26

Простейший шифр. Называется A1Z26 или в русском варианте А1Я33. Буквы алфавита заменяются на их порядковые номера.

«NoZDR» можно зашифровать как 14-15-26-4-18 или 1415260418.

Азбука Морзе

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

Шрифт Брайля

Брайль – это система тактильного чтения для слепых, состоящая из шеститочечных знаков, называемых ячейками. Ячейка состоит из трёх точек в высоту и из двух точек в ширину.

Различные брайлевские знаки формируются путем помещения точек в различные положения внутри ячейки.

Для удобства точки описываются при чтении следующим образом: 1, 2, 3 слева сверху вниз и 4, 5, 6 справа сверху вниз.

При составлении текста придерживаются следующих правил:

    между словами пропускается одна ячейка (пробел);

    после запятой и точки с запятой ячейка не пропускается;

    тире пишется слитно с предыдущим словом;

    перед числом ставится цифровой знак.

Кодовые страницы

В компьютерных квестах и загадках можно кодировать буквы в соответствии с их кодами в различных кодовых страницах - таблицах, используемых на компьютерах. Для кириллических текстов лучше всего пользоваться самыми распространёнными кодировками: Windows-1251, KOI8, CP866, MacCyrillic. Хотя для сложных шифровок можно выбрать и что-то более экзотичное.

Кодировать можно шестнадцатеричными числами, а можно и переводить их в десятичные. Например, буква Ё в KOI8-R имеет код B3 (179), в CP866 - F0 (240), а в Windows-1251 - A8 (168). А можно буквам в правых таблицах искать соответствие в левых, тогда текст получится набранным «кракозябрами» типа èαᬫº∩íαδ (866→437) или Êðàêîçÿáðû (1251→Latin-1).

А можно внутри одной таблицы менять верхнюю половину символов на нижнюю. Тогда для Windows-1251 вместо «кракозябры» получится «jp"jng ap{», вместо «ВЕРТОЛЁТ» - «BEPRNK(R». Такой сдвиг в кодовой странице - это классическая потеря старшего бита при сбоях на почтовых серверах. Латинские символы при этом можно кодировать обратным сдвигом вниз на 128 символов. И такая кодировка будет являться вариантом шифра - ROT128, только не для обычного алфавита, а для выбранной кодовой страницы.

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

Ниже приведены два (синий и красный) варианта заполнения сетки таких шифров. Буквы расположены парами, вторая буква из пары рисуется символом с точкой:

Авторские шифры

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

Пляшущие человечки

Один из самых известных авторских шифров подстановки – это « ». Его придумал и описал английский писатель Артур Конан Дойл в одном из своих произведений про Шерлока Холмса. Буквы алфавита заменяются символами, похожими на человечков в разных позах. В книге человечки были придуманы не для всех букв алфавита, поэтому фанаты творчески доработали и переработали символы, и получился вот такой шифр:

Алфавит Томаса Мора

А вот такой алфавит описал в своём трактате «Утопия» Томас Мор в 1516 году:

Шифры из мультсериала "Гравити Фолз"

Билла Шифра

Стэнфорда Пайнса (автора дневников)

Джедайский алфавит из "Звёздных войн"

Инопланетянский алфавит из "Футурамы"

Криптонский алфавит Супермена

Алфавиты биониклов

Семантика (фр. sémantique от др.-греч. σημαντικός - обозначающий) — наука о понимании определенных знаков, последовательностей символов и других условных обозначений. Эта наука используется во многих отраслях: лингвистика, проксемика, прагматика, этимология и т.д. Ума не приложу, что эти слова означают и чем все эти науки занимаются. Да и не важно, меня интересует вопрос применения семантики при верстке сайтов.

Заметка

Тут не буду затрагивать термин Семантический веб. На первый взгляд, может показаться, что темы Семантический веб и семантический HTML код — это почти одно и тоже. Но на самом деле Семантический веб понятие, довольно философское и с нынешней реальностью имеет не так много общего.

Семантическая верстка — что это?

В языке каждое слово имеет определенный смысл, назначение. Когда ты говоришь "колбаса", ты имеешь в виду пищевой продукт, представляющий собой фарш (как правило, мясной) в продолговатой оболочке. Короче говоря имеешь в виду колбасу, а не молоко или зеленый горошек.

HTML — это тоже язык, его "слова", именуемые тегами, тоже имеют определенный логический смысл и назначение. По этому в первую очередь семантический HTML код — это верстка с правильным использованием HTML тегов , использованием их по назначению, так как их задумывали разработчики языка HTML и веб стандартов.

microformats.org — сообщество, которое работает над воплощением идеалистических идей Семантического веба в жизнь посредством приближения разметки страниц к тем самым семантическим идеалам.

Зачем и кому вообще нужна семантическая верстка?

Если у меня на сайте информация отображается так же как на дизайне, зачем себе еще ломать мозг и думать о какой-то семантике?! Это же дополнительная работа! Кому это нужно?! Кто это оценит кроме другого верстальщика?

Мне такие вопросы приходилось частенько слышать. Давай разберемся.

Семантический HTML для веб разработчиков

Семантический код для пользователей

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

  • семантический код напрямую влияет на объем HTML кода. Меньше кода —> легче страницы —> быстрей грузятся, меньше требуется оперативной памяти на стороне пользователя, меньше трафика, меньший объем баз данных. Сайт становиться быстрей и менее затратным .
  • голосовые браузеры для которых важны теги и их атрибуты, чтобы произнести правильно и с нужной интонацией содержимое, или наоборот не произнести лишнего.
  • мобильные устройства которые не на полную мощь поддерживают CSS и поэтому ориентируются в основном на HTML код, отображая его на экране согласно используемым тегам.
  • устройства печати даже без дополнительного CSS напечатают информацию качественней (ближе к дизайну), а создание идеальной версии для печати превратится в несколько легких манипуляций с CSS.
  • к тому же существуют устройства и плагины, которые позволяют быстро перемещаться по документу — например, по заголовкам у Opera .

Семантический HTML для машин

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

Хороший контент плюс качественная семантическая верстка — это уже серьезная заявка на хорошие позиции в выдачах поисковиков .

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

Начнем с очевидного примера.

Плохая семантика кода

Заголовок статьи
А автор
Инко Гнито.

Хорошая семантика кода

Заголовок статьи

Текст статьи, который кем-то написан. Инко Гнито - ее автор.

Вне зависимости от того, считаете ли вы, что HTML5 готов к использованию или нет, наверняка использование тега

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

Но не все так четко представляется тегами HTML5. Давайте рассмотрим набор имен классов и разберемся с тем, отвечают ли они требованиям семантики.

Не семантический код. Это классический пример. Каждая рабочая среда CSS для модульной сетки использует такого типа имена классов для определения элементов сетки. Будет ли это "yui-b", "grid-4", или "spanHalf" - такие имена ближе к заданию разметки, чем к описанию содержания. Однако их использование в большинстве случаев неизбежно при работе с шаблонами модульных сеток.

Семантический код. Нижний колонтитул (footer ) приобрел устойчивое значение в веб дизайне. Это нижняя часть страницы, которая содержит такие элементы как повторяющаяся навигация, права использования, информацию об авторе и так далее. Данный класс определяет группу для всех этих элементов без их описания.

Если вы перешли к использованию HTML5, то лучше применять элемент

в таких случаях. Замечание касается и всех остальных частей веб страницы (верхний колонтитул должен быть
, боковая панель -

© 2024 mchard.ru -- Ноутбук. Работа с текстом. Монитор. Гаджеты. Компьютер. Skype. Восстановление