Служебные символы c. Управляющие символы. Управляющие символы ASCII

Управляющие символы

Управля́ющие си́мволы - элементы данной кодировки , которым не приписано графическое представление, но которые используются для управления устройствами, организации передачи данных и других целей.

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

Управляющие символы ASCII

Номер Английское название Русское название Соче-
тание
кла-
виш
Escape
после-
дова-
тель-
ность
Назначение
00 NULL пустой символ \0 Этот символ ничего не делает. Некоторые терминалы изображают его как пробел, но это неправильно. Часто NULL используют для обозначения конца цепочки символов (например, в языке C).
01 START OF HEADING начало заголовка ^A
02 START OF TEXT начало текста ^B В настоящее время используется в консоли маршрутизаторов Cisco.
03 END OF TEXT конец текста ^C При вводе на терминале обычно интерпретируется как сигнал прерывания.
04 END OF TRANSMISSION конец передачи ^D При вводе на терминале в UNIX -системах интерпретируется как конец вводимых данных. Если текущая программа брала данные с терминала, то она завершается, как только обработает всё, что было до символа ^D.
05 ENQUIRY запрос ^E Использовался в телетайпной связи. В ответ предполагалось получить идентификационную строку удалённого аппарата.
06 ACKNOWLEDGE подтверждение ^F Использовался в телетайпной связи.
07 BELL звуковой сигнал ^G \a Если этот символ послать на принтер или на терминал, то ничего не напечатается, но послышится звуковой сигнал.
08 BACKSPACE возврат на шаг ^H \b Перемещает позицию печати на один символ назад. На принтерах может использоваться для наложения одного символа на другой, например a BS ^ = â . При вводе с терминала иногда используется для стирания предшествующего символа («забой»).
09 CHARACTER TABULATION (horizontal tabulation) горизонтальная табуляция ^I \t Перемещает позицию печати к следующей позиции горизонтальной табуляции.
0A LINE FEED перевод строки ^J \n Перемещает позицию печати на одну строку вниз. В текстовых файлах в Unix разделяет строки.
0B LINE TABULATION (vertical tabulation) вертикальная табуляция ^K \v Перемещает позицию печати к следующей позиции вертикальной табуляции. На терминалах этот символ обычно эквивалентен переводу строки.
0C FORM FEED прогон страницы, смена страницы ^L \f Выбрасывает текущую страницу и начинает печать со следующей. На терминалах этот символ обычно эквивалентен переводу строки (хотя в принципе можно было бы его использовать для очистки экрана).
0D CARRIAGE RETURN возврат каретки ^M \r Перемещает позицию печати в крайнее левое положение. В текстовых файлах в Mac OS (но не Mac OS X) разделяет строки. В CP/M , MS-DOS и Microsoft Windows для разделения строк в текстовых файлах используется сочетание символов \r\n.
0E SHIFT OUT (locking-shift one) режим национальных символов ^N В КОИ-7 включает русский режим. На некоторых принтерах включает режим символов двойной ширины.
0F SHIFT IN (locking-shift zero) режим обычного ASCII ^O В КОИ-7 включает латинский режим. На некоторых принтерах включает режим узких символов.
10 DATA LINK ESCAPE освобождение канала данных ^P Означает, что следующий за ним управляющий символ должен восприниматься как данные, а не как управляющий символ.
11 DEVICE CONTROL ONE 1-й код управления устройством ^Q На терминалах разрешает продолжить вывод данных.
12 DEVICE CONTROL TWO 2-й код управления устройством ^R
13 DEVICE CONTROL THREE 3-й код управления устройством ^S На терминалах временно прерывает (приостанавливает) вывод данных.
14 DEVICE CONTROL FOUR 4-й код управления устройством ^T
15 NEGATIVE ACKNOWLEDGE отрицательное подтверждение ^U Использовался в телетайпной связи.
16 SYNCHRONOUS IDLE пустой символ для синхронного режима передачи ^V Некоторые линии связи устроены так, что требуют непрерывной передачи данных. Если передавать нечего, то передают этот символ.
17 END TRANSMISSION BLOCK конец блока передаваемых данных ^W
18 CANCEL отмена ^X Данные, которые идут перед ним, некорректны. (Обычно речь идёт об одной строке.)
19 END OF MEDIUM конец носителя ^Y Использовался, напр., если закончилась перфолента и т.п.
1A SUBSTITUTE символ замены ^Z Ставится на месте символов, значения которых были потеряны при передаче. В CP/M и MS-DOS использовался для обозначения конца текстовых файлов и конца вводимых с консоли данных (хотя для этого были предназначены символы ^C и ^D). Некоторые текстовые редакторы под DOS автоматически добавляли в конце файла ^Z.
1B ESCAPE Альтернативный регистр №2 (АР2) ^[ Означает, что следующие за ним символы имеют какое-то другое значение, отличное от того, которое определено в ASCII. Обычно начинает управляющие последовательности .
1C INFORMATION SEPARATOR FOUR (file separator) разделитель данных № 4 (разделитель файлов) ^\
1D INFORMATION SEPARATOR THREE (group separator) разделитель данных № 3 (разделитель групп) ^]
1E INFORMATION SEPARATOR TWO (record separator) разделитель данных № 2 (разделитель записей) ^^ Видимо, предназначался для разделения записей в базах данных , но практически никогда не используется для этого.
1F INFORMATION SEPARATOR ONE (unit separator) разделитель данных № 1 (разделитель полей) ^_ Видимо, предназначался для разделения полей в базах данных, но практически никогда не используется для этого.
7F DELETE удаление ^? Предназначен для забивания ошибочно пробитых символов на семидорожечных перфолентах (поскольку обозначается пробитием дырочек во всех дорожках), поэтому там он эквивалентен пустому символу (\0). На терминалах может генерироваться нажатием либо кнопки Backspace, либо кнопки Delete.

Управляющие символы ISO 8859

80 , PADDING CHARACTER, символ-заполнитель.

81 , HIGH OCTET PRESET, ???.

82 , BREAK PERMITTED HERE, здесь разрешён разрыв строки.

83 , NO BREAK HERE, здесь не разрешён разрыв строки.

84 , INDEX, ???.

85 , NEXT LINE, следующая строка. Одновременно переводит строку и возвращает позицию печати к началу строки (эквивалентно \r\n).

86 , START OF SELECTED AREA, начало выделенной области.

87 , END OF SELECTED AREA, конец выделенной области.

88 , CHARACTER TABULATION SET, установка позиций горизонтальной табуляции.

89 , CHARACTER TABULATION WITH JUSTIFICATION, установка позиций и выравнивания горизонтальной табуляции.

8A , LINE TABULATION SET, установка позиций вертикальной табуляции.

8B , PARTIAL LINE FORWARD, частичный перевод строки вперёд.

, PARTIAL LINE BACKWARD, частичный перевод строки назад.

8D , REVERSE LINE FEED, обратный перевод строки.

8E , SINGLE SHIFT TWO, 2-e значение для следующего символа.

8F , SINGLE SHIFT THREE, 3-e значение для следующего символа.

90 , DEVICE CONTROL STRING, строка управления устройством.

91 , PRIVATE USE ONE, пользовательский символ № 1.

92 , PRIVATE USE TWO, пользовательский символ № 2.

93 , SET TRANSMIT STATE, установка режима передачи.

94 , CANCEL CHARACTER, символ отмены.

95 , MESSAGE WAITING, есть сообщение.

96 , START OF GUARDED AREA, начало защищённой области.

97 , END OF GUARDED AREA, конец защищённой области.

98 , START OF STRING, начало строки.

99 , SINGLE GRAPHIC CHARACTER INTRODUCER, следующий символ интерпретируется как специальный графический.

9A , SINGLE CHARACTER INTRODUCER, следующий символ интерпретируется как управляющий.

9B , CONTROL SEQUENCE INTRODUCER, начало управляющей последовательности. Обычно этот символ эквивалентен Escape+[.

9C , STRING TERMINATOR, окончание строки.

9D , OPERATING SYSTEM COMMAND, команда операционной системы.

9E , PRIVACY MESSAGE, секретное сообщение.

9F , APPLICATION PROGRAM COMMAND, команда прикладной программы.

Управляющие символы Unicode

034F , COMBINING GRAPHEME JOINER. Объединить символы, стоящие слева и справа (создать лигатуру).

200B , ZERO-WIDTH SPACE, пробел нулевой ширины. При выравнивании по ширине может расширяться.

200C , ZERO WIDTH NON-JOINER. Запрещает образование лигатур .

200D , ZERO WIDTH JOINER. Разрешает образование лигатур .

200E , LEFT-TO-RIGHT MARK. Писать слева направо.

200F , RIGHT-TO-LEFT MARK. Писать справа налево.

2028 , LINE SEPARATOR, разделитель строк. Разделяет строки текста, но не абзацы.

2029 , PARAGRAPH SEPARATOR, разделитель абзацев. Разделяет абзацы текста.

202A , LEFT-TO-RIGHT EMBEDDING. Начало текста, написанного слева направо, внутри текста, написанного справа налево.

202B , RIGHT-TO-LEFT EMBEDDING. Начало текста, написанного справа налево, внутри текста, написанного слева направо.

202C , POP DIRECTIONAL FORMATTING. Конец вставленного текста с другим направлением.

202D , LEFT-TO-RIGHT OVERRIDE. Заменить текст, написанный слева направа, текстом, написанным справа налево.

202E , RIGHT-TO-LEFT OVERRIDE. Заменить текст, написанный справа налево, текстом, написанным слева направо.

2060 , WORD JOINER, соединитель слов.

FE01 FE0F , VARIATION SELECTOR-1…16, выбор варианта начертания № 1 … № 16.

FEFF , ZERO WIDTH NO-BREAK SPACE / BYTE ORDER MARK, неразрывный пробел нулевой ширины / индикатор порядка байтов. Этот символ используется для указания того, что данный файл записан в UTF-16 или UTF-32 с определённым порядком байтов (поскольку символа FFFE нет, а в UTF-8 байты FE и FF не используются). Использование этого символа в качестве неразрывного пробела нулевой ширины не рекомендуется; для этого есть символ U+2060 (word joiner).

FFFD , REPLACEMENT CHARACTER, заменяющий символ. Используется, когда значение символа неизвестно или не может быть выражено в Уникоде (см. также символ 1A).

E0100 E01EF , VARIATION SELECTOR-17…256, выбор варианта начертания № 17 … № 256.

Кодировки символов
Основы → алфавит текст (файл данные) набор символов конверсия
Исторические кодировки → Докомп.: семафорная (Макарова) Морзе Бодо МТК-2 Комп.: 6 бит УПП RADIX-50 EBCDIC (ДКОИ-8) КОИ-7 ISO 646
совре-
менное
8-битное
представ-
ление
символы → ASCII (управляющие печатные) не-ASCII (псевдографика)
8бит. код.стр. Разные → Кириллица: КОИ-8 ГОСТ 19768-87 MacCyrillic
ISO 8859 → 1(лат.) 5(кир.) 12 15(€)
Windows → 1251(кир.) 1255 1256 1257 1258 | WGL4
IBM&DOS → 866 «альт.» (МИК) (НИИ ЭВМ)

Литералы

В C# литералами называются постоянные значения, представленные в удобной для восприятия форме. Например, число 100 является литералом. Сами литералы и их назначение настолько понятны, что они применялись во всех предыдущих примерах программ без всяких пояснений. Но теперь настало время дать им формальное объяснение.

В C# литералы могут быть любого простого типа. Представление каждого литерала зависит от конкретного типа. Как пояснялось ранее, символьные литералы заключаются в одинарные кавычки. Например, "а" и "%" являются символьными литералами.

Целочисленные литералы указываются в виде чисел без дробной части. Например, 10 и -100 - это целочисленные литералы. Для обозначения литералов с плавающей точкой требуется указывать десятичную точку и дробную часть числа. Например, 11.123 - это литерал с плавающей точкой. Для вещественных чисел с плавающей точкой в C# допускается также использовать экспоненциальное представление.

У литералов должен быть также конкретный тип, поскольку C# является строго типизированным языком. В этой связи возникает естественный вопрос: к какому типу следует отнести числовой литерал, например 2, 12 3987 или 0.23? К счастью, для ответа на этот вопрос в C# установлен ряд простых для соблюдения правил:

    Во-первых, у целочисленных литералов должен быть самый мелкий целочисленный тип, которым они могут быть представлены, начиная с типа int. Таким образом, у целочисленных литералов может быть один из следующих типов: int, uint, long или ulong в зависимости от значения литерала.

    Литералы с плавающей точкой относятся к типу double.

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

    Так, для указания типа long к литералу присоединяется суффикс l или L. Например, 12 - это литерал типа int, a 12L - литерал типа long. Для указания целочисленного типа без знака к литералу присоединяется суффикс u или U. Следовательно, 100 - это литерал типа int, a 100U - литерал типа uint. А для указания длинного целочисленного типа без знака к литералу присоединяется суффикс ul или UL. Например, 984375UL - это литерал типа ulong.

    Кроме того, для указания типа float к литералу присоединяется суффикс F или f. Например, 10.19F - это литерал типа float. Можете даже указать тип double, присоединив к литералу суффикс d или D, хотя это излишне. Ведь, как упоминалось выше, по умолчанию литералы с плавающей точкой относятся к типу double.

    И наконец, для указания типа decimal к литералу присоединяется суффикс m или М. Например, 9.95М - это десятичный литерал типа decimal.

    Несмотря на то что целочисленные литералы образуют по умолчанию значения типа int, uint, long или ulong, их можно присваивать переменным типа byte, sbyte, short или ushort, при условии, что присваиваемое значение может быть представлено целевым типом.

Шестнадцатеричные литералы

Вам, вероятно, известно, что в программировании иногда оказывается проще пользоваться системой счисления по основанию 16, чем по основанию 10. Система счисления по основанию 16 называется шестнадцатеричной . В ней используются числа от 0 до 9, а также буквы от А до F, которыми обозначаются десятичные числа 10,11,12,13, 14 и 15. Например, десятичному числу 16 соответствует шестнадцатеричное число 10. Вследствие того что шестнадцатеричные числа применяются в программировании довольно часто, в C# разрешается указывать целочисленные литералы в шестнадцатеричном формате. Шестнадцатеричные литералы должны начинаться с символов 0x , т.е. нуля и последующей латинской буквы "икс". Ниже приведены некоторые примеры шестнадцатеричных литералов:

Count = 0xFF; // равно 255 в десятичной системе incr = 0x1a; // равно 26 в десятичной системе

Управляющие последовательности символов

Большинство печатаемых символов достаточно заключить в одинарные кавычки, но набор в текстовом редакторе некоторых символов, например возврата каретки, вызывает особые трудности. Кроме того, ряд других символов, в том числе одинарные и двойные кавычки, имеют специальное назначение в C#, поэтому их нельзя использовать непосредственно. По этим причинам в C# предусмотрены специальные управляющие последовательности символов :

Строковые литералы

В C# поддерживается еще один тип литералов - строковый . Строковый литерал представляет собой набор символов, заключенных в двойные кавычки. Например следующий фрагмент кода:

Помимо обычных символов, строковый литерал может содержать одну или несколько управляющих последовательностей символов, о которых речь шла выше. Также можно указать буквальный строковый литерал . Такой литерал начинается с символа @, после которого следует строка в кавычках. Содержимое строки в кавычках воспринимается без изменений и может быть расширено до двух и более строк. Это означает, что в буквальный строковый литерал можно включить символы новой строки, табуляции и прочие, не прибегая к управляющим последовательностям. Единственное исключение составляют двойные кавычки ("), для указания которых необходимо использовать двойные кавычки с обратным слэшем ("\"). Например.

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

Вставить символ в html-документ можно одним из способов:

  1. скопировать изображение символа из окна браузера в окно своего визуального html-редактора
  2. скопировать html-код символа непосредственно в код html-документа
Унимаем, что это два разных способа:
  1. вставлять визуальное в визуальное
  2. вставлять код в код.

Шрифт для символа, его размер и цвет в HTML можно задать кодом, вида:
КОД_СИМВОЛА
где,
Arial - шрифт,
10px - размер шрифта в пикселях,
#ff0000 - код цвета шрифта (красный)

Например:
☎ - размер шрифта символа 30px,
☎ - размер шрифта символа 30px, цвет - красный
☎ - размер шрифта символа 20px,
☎ - размер шрифта символа 10px.
Прим. Рекомендуемые шрифты для вставки спецсимволов - Arial, Verdana и Tahoma. Эти шрифты корректно отображают символы Юникод и сами, в свою очередь, корректно поддерживаются веб-приложениями.

  1. «Символ»
    (видимое отображение символа)
    Из этой графы можно скопировать изображение символа и вставить его в окно текстового html-редактора. Символ скопируется с размером шрифта 20px. После завершения копирования может потребоваться индивидуальная подгонка размера шрифта непосредственно для скопированного знака.
  2. «Наименование»
    (только для важных или непонятных символов)
    Пояснение назначения символа, его область применения, примеры...
  3. «Мнемоника»
    Мнемоника - это буквенная конструкция вида ", обозначающая буквенный код символа в HTML. Вставляется непосредственно в html-код html-документа. Мнемоники очень популярны среди профессиональных верстальщиков. Они прекрасно запоминаются человеком и поддерживаются всеми html-приложениями. Каждая мнемоника содержит буквенное имя (обозначение) своего символа и служебный знак (&), который служит сигналом к прочтению кода для браузера и не отображается на экране монитора. Имя каждой мнемоники уникально и легко читаемо, потому что образовано от англоязычного слова, характеризующего символ.

    Мнемоника (греч.) - искусство запоминать что-либо. Мнемотехника применяется для облегчения восприятия труднозапоминаемой информации, когда объект запоминания приводится в ассоциативное состояние с чем-либо.

  4. «Код»
    Код - числовой десятичный код символа в HTML, вида &. Вставляется непосредственно в html-код html-документа. Числовой десятичный код состоит из числа, обозначающего порядковый номер символа в системе Юникод и нескольких служебных знаков (& и #), которые служат сигналом к прочтению кода для браузера и не отображаются на экране монитора. Числовой десятичный код имеет широкое распространение и применение, благодаря своей универсальности и простоте восприятия.

Символы управления в HTML (XHTML)

Символы управления в HTML (XHTML) - это служебные символы HTML-языка, которые используются при HTML-вёрстке веб-страницы. Эти символы обязан поддерживать любой браузер, поскольку без них невозможно правильное отображение HTML-текста. Символы управления не отображаются в тексте и, при прямом введении с клавиатуры - интерпретируются браузером как знаки препинания, призывающие к выполнению какого-либо действия при отрисовке страницы на экране.

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

Символы управления и их HTML-код знают и понимают все браузеры без исключения, чего нельзя сказать, увы - про остальные знаки, которые могут отображаться некорректно в разных браузерах или, что ещё хуже - не отображаться совсем.

Синтаксис и пунктуация

пробел длины N (обычный пробел)
пробел длины M (длинныйпробел)
- мягкий перенос (непечатный знак) - ­
дефис –
- тире длины N (обычное тире) -
тире длины M (длинное тире)
. точка .
, запятая ,
многоточие …
: двоеточие :
; точка с запятой ;
! знак восклицания !
ǃ
? вопросительный знак ?
@ «собачка» @
* «звездочка» *
# «решетка» #
одиночная верхняя левая кавычка ‘
одиночная верхняя правая кавычка ’
одиночная нижняя правая кавычка ‚
двойная верхняя левая кавычка “
двойная верхняя правая кавычка ”
двойная нижняя правая кавычка &bdquo „
« двойная левая угловая кавычка (рус) « «
» двойная правая угловая кавычка (рус) » »
́ знак ударения, пример: Вася́ ́
" апостроф, пример: Вас"я "
´ акут, пример: Вас´я ´ ´
абзац (непечатный знак)
§ параграф § §
ˆ акцент (перевёрнутая птичка) ˆ ˆ
ˆ
˜ малая тильда ˜ ˜
˜
¦ вертикальный пунктир ¦ ¦
( круглая скобка влево (
) круглая скобка вправо )
угловая скобка влево
угловая скобка вправо
угловая скобка влево, вариант
угловая скобка вправо, вариант
[ квадратная скобка влево [
] квадратная скобка вправо ]
/ слэш (slash) - cимвол косой черты /
\ обратный слэш (backslash) \
косая дробная черта (знак деления)
ǀ вертикальная черта ǀ
ǁ двойная вертикальная черта ǁ
надчеркивание, пример: Вася‾вася
¯ macron, пример: Вася¯вася ¯ ¯

Товарные знаки и валюта

+ плюс + +
минус -
= равно =
± плюс-минус ± ±
× знак умножения × ×
÷ знак деления ÷ ÷
оператор «точка» (середина строки) ·
оператор «звёздочка» (середина строки)
оператор «тильда»
. маркер списка (середина строки) . •
¹ верхний индекс «1» ¹ ¹
² верхний индекс «2» ² ²
³ верхний индекс «3» ³ ³
Надстрочный и подстрочный индекс в HTML (XHTML)
можно вставить при помощи тегов и , соответственно:
ЧИСЛОНадстрочный индекс → ЧИСЛО Надстрочный индекс
ЧИСЛОПодстрочный индекс → ЧИСЛО Подстрочный индекс
½ дробь «одна вторая» ½ ½
дробь «одна треть»
¼ дробь «одна четвёртая» ¼ ¼
¾ дробь «три четверти» ¾ ¾
знак номера
% процент %
промилле ‰
° градусы ° °
штрих (минуты, футы)
двойной штрих (секунды, дюймы)
Пример 1: 30° 25′ 12″
Пример 2: 25′ 12
µ микро µ µ
π Пи π π
ƒ знак функции
(не путать с «интеграл»)
ƒ ƒ
ƒ
интеграл
перечеркнутый ноль, пустое множество
(не путать с «диаметр»)
диаметр (не путать с перечёркнутой латинской «о»)
ø латинская "o" диагонально перечёркнутая ø ø
Ø латинская заглавная "O" диагонально перечёркнутая Ø Ø
знак произведения
знак суммирования
радикал
(квадратный корень или корень степени x)
пропорционально
бесконечность
угол
ортогонально (перпендикулярно)
знак «cледовательно»
приблизительно равно
почти равно
не равно
идентично
меньше или равно
больше или равно
логическое И
логическое ИЛИ
знак «плюс в круге»
(прямая сумма)
знак «умножение в круге»
(векторное произведение, стрела от наблюдателя)
ʘ точка в круге
(стрела на наблюдателя)
ʘ

✵ ✵