Что такое управляющие символы разделителя файла / группы / записи / модуля и как они используются? - PullRequest
32 голосов
/ 01 января 2012

Unicode определяет несколько управляющих символов из ASCII.http://www.unicode.org/charts/PDF/U0000.pdf

Я вижу, что многие управляющие символы широко используются, но я действительно не вижу, где используются "разделители информации".(U + 001C ~ U + 001F)

Что это такое?Какова их история?Где они использовали?

Ответы [ 2 ]

41 голосов
/ 13 сентября 2013

Lammert Bies объясняет их использование и историю позади.

28 - FS - Разделитель файлов Разделитель файлов FS представляет собой интересный управляющий код, поскольку он дает нам пониманиетаким образом, что компьютерные технологии были организованы в шестидесятых годах.Сейчас мы привыкли к носителям с произвольным доступом, таким как RAM и магнитные диски, но когда был определен стандарт ASCII, большинство данных были последовательными.Я говорю не только о последовательной связи, но и о последовательном хранении, таком как перфокарты, бумажная лента и магнитные ленты.В такой ситуации очевидно, что эффективнее иметь один управляющий код для сигнализации о разделении двух файлов.ФС была определена для этой цели.

29 - GS - Разделитель групп Хранение данных было одной из основных причин, по которым некоторые контрольные коды попали в определение ASCII.Базы данных чаще всего настраиваются с помощью таблиц, содержащих записи.Все записи в одной таблице имеют одинаковый тип, но записи разных таблиц могут быть разными.Разделитель групп GS определен для разделения таблиц в системе хранения последовательных данных.Обратите внимание, что таблица слов не использовалась в тот момент, и люди из ASCII назвали ее группой.

30 - RS - Разделитель записей В группе (или таблице) записи разделяются RS или разделителем записей.

31 - США - Разделитель единиц Наименьшие элементы данных, которые должны храниться в базе данных, называются единицами в определении ASCII.Мы бы назвали их полем сейчас.Разделитель единиц разделяет эти поля в среде хранения последовательных данных.Большинство современных реализаций базы данных требуют, чтобы поля большинства типов имели фиксированную длину.В записи достаточно места для хранения максимально возможного члена каждого поля, даже если в большинстве случаев это не требуется.Это стоит большого количества места во многих ситуациях.Контрольный код США позволяет всем полям иметь переменную длину.Если пространство для хранения данных ограничено - как в шестидесятых - это хороший способ сохранить ценное пространство.С другой стороны, последовательное хранилище гораздо менее эффективно, чем современное использование настольных ОЗУ и дисков.Я не могу представить ситуацию, когда современные базы данных SQL работают с данными, хранящимися на бумажной ленте или на магнитных барабанах ...

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

7 голосов
/ 02 января 2012

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

Разделители информации используются для простой группировки данных, но в наши дни для организации данных используются либо двоичные форматы, либо XML-формат. Есть еще курьезы, такие как внутреннее использование U + 001E и U + 001F в Microsoft Word для реализации собственной идеи программы «неразрывный дефис» и «необязательный дефис» (в отличие от символов Юникода для аналогичных целей). Это в основном показывает, что программы могут использовать управляющие символы странным образом. Конечно, возникают проблемы, если символы включены в текст, передаваемый другим программам.

...