Американский стандартный код для обмена информацией
Код ASCII был впервые одобрен Американской ассоциацией стандартов (ASA) 17 июня 1963 года в качестве стандарта ASA X3.4-1963 и был существенно обновлен в 1967/1968 годах и последний раз обновлен в 1986 году ( ANSI X3.4-1986). институты-преемники и используются до сих пор. Кодировка символов определяет 128 символов, состоящих из 33 непечатаемых и следующих 95 печатных символов, начиная с пробела :
оглавление
Кодирование
Буквы в виде 7-битного кода
ASCII
Декабрь
Шестигранник
Двоичный
A
65
41 год
(0) 100 0001
B
66
42
(0) 100 0010
C
67
43 год
(0) 100 0011
.
.
.
.
Z
90
5А
(0) 101 1010
состав
Первые 32 кода символа ASCII (от 00 шестнадцатеричное до 1F шестнадцатеричного) зарезервированы для управляющих символов (управляющий символ) ; см. объяснение сокращений в таблице справа (или выше). Эти символы не представляют символы, но служат (или использовались) для управления устройствами, использующими ASCII (например, принтерами). Управляющими символами являются, например, возврат каретки для разрыва строки или колокольчик (колокольчик); их определение исторически обосновано.
По этой причине в фактическом ASCII было только 126 символов, потому что битовые комбинации 0 (0000000) и 127 (1111111) не соответствовали никаким кодам символов. Код 0 позже интерпретировался в языке программирования C как «конец символьной строки»; Персонажу 127 присвоены различные графические символы.
история
Телетайп
Первая версия без строчных букв и с небольшими отклонениями от сегодняшнего ASCII для управляющих и специальных символов была создана в 1963 году.
Вторая форма стандарта ASCII последовала в 1965 году. Хотя стандарт был утвержден, он никогда не публиковался и, следовательно, никогда не применялся. Причина этого заключалась в том, что в ASA было сообщено, что ISO (Международная организация по стандартизации) стандартизирует набор символов, который похож на этот стандарт, но немного противоречит ему.
В 1968 году была создана версия стандарта ASCII, действующая до сих пор.
Декабрь
Шестигранник
ASCII 1963 (устаревший)
ASCII 1965 (отброшен)
ASCII 1968 (текущий)
0-63
00-3F
увидеть нормальный состав
64
40
@
`
@
65-91
41-5B
увидеть нормальный состав
92
5C
\
127
7F
увидеть нормальный состав
компьютер
В начале компьютерной эры ASCII превратился в стандартный код для символов. Например, многие терминалы ( VT100 ) и принтеры управлялись только с помощью ASCII.
Использовать для других языков
С Международным алфавитом 5 (IA5) 7-битное кодирование на основе ASCII было стандартизировано как ISO 646 в 1963 году. Эталонная версия (ISO 646-IRV) соответствует ASCII, за исключением одной позиции. Чтобы иметь возможность отображать буквы и специальные символы на разных языках (например, немецкие умляуты), для переопределения было предоставлено 12 позиций символов ( #$@[\]^`
). Одновременное отображение невозможно. Неспособность адаптировать программное обеспечение к варианту, используемому для отображения, часто приводила к непреднамеренно смешным результатам, например B. Когда Apple II был включен, вместо «ЯБЛОКО] [» появлялось «ЯБЛОКО ÜÄ».
Поскольку есть символы, которые используются в программировании, в частности z. Например, различные скобки, языки программирования были обновлены для интернационализации с использованием заменяющих комбинаций ( орграфов ). Для кодирования использовались только символы из инвариантной части ISO 646. Комбинации зависят от языка. Например, Паскаль (* и *) фигурные скобки соответствуют ( <> ), а C и %> предусматривает это.
Расширения
Использование оставшихся 128 позиций в байте
Более 8 бит
Многие старые программы, которые использовали восьмой бит в своих целях, не справлялись с этим. С течением времени их часто приспосабливали к новым требованиям.
Метки форматирования по сравнению с языками разметки
Совместимые кодировки символов
Большинство кодировок символов разработаны таким образом, что они используют тот же код, что и ASCII, для символов от 0 до 127 и диапазон выше 127 для других символов.
Кодировки фиксированной длины (выбор)
Кодировки переменной длины
Чтобы иметь возможность кодировать больше символов, символы от 0 до 127 кодируются одним байтом, другие символы кодируются несколькими байтами со значениями больше 127:
002: установить G0: ESC 2/8 4/0 установить G1: ESC 2/9 4/0
006: установить G0: ESC 2/8 4/2 установить G1: ESC 2/9 4/2
Резюме
История
В 1961 году Министерство обороны разработало стандартный 8-битный код передачи данных. Этот 8-битный стандарт представляет собой вариант шестибитных стандартов FIELDATA, используемых защитой в предыдущее десятилетие. Он оказал заметное влияние на первую версию ASCII.
В 1963 году появилась первая опубликованная версия ASCII. Был обсужден список рассматриваемых персонажей и их положение.
Принципы
Ограничения
Когда он используется отдельно для английского языка, он запрещает использование акцентов в английском языке (см. Wikt: en: Приложение: английские слова с диакритическими знаками ).
Некоторые графические символы ASCII вызывают многозначность. Это полностью или частично связано с ограниченным количеством элементов кода в семибитном наборе. Это, в частности, проявляется в знаках препинания и использовании кавычек. ASCII был сохранен, потому что он повсеместно используется во многих программах. Это наследование обнаружено в Unicode, где эти знаки находятся в отдельном блоке от других подобных символов, большинство из которых закодированы из U + 2000.
Интернационализация
Ограничения американского стандарта ASCII за три разных периода привели к трем подходам к интернационализации :
Недостатком региональных стандартов является то, что они позволяют отображать только небольшой набор символов, например символы Западной Европы. При таком подходе необходимо указать кодировку вне потока.
Недостатком расширяемых стандартов является контекстуальность. В этом отношении программное обеспечение, использующее определенные алгоритмы поиска, может не иметь возможности взаимодействия.
Стандартизация
Набор кодирования ASCII определяется почти идентично несколькими различными стандартами, имеет множество вариаций и породил множество (десятки или сотни) более или менее несовместимых расширений.
Основные расширения оправданы тем фактом, что ASCII не отвечает различным региональным потребностям. Они предлагаются органами по стандартизации или поставщиками продуктов и услуг.
Стандарты ASCII
Стандарты US ASCII (устаревшие стандарты и текущий стандарт):
Следующие международные стандарты обычно считаются совместимыми (почти идентичными) со стандартом ASCII, действовавшим с 1986 по 2011 год, и при этом представляют собой официальную международную стандартизацию:
Обозначения US-ASCII, US ASCII или US ASCII представляют собой смесь вышеуказанных обозначений. Реестр IANA присваивает ему имя US-ASCII, не определяя его кодировку.
Приближение, варианты и расширения
Три типа кодировки символов похожи на ASCII:
IANA более конкретно продвигает название «US-ASCII» для Интернета.
Варианты
Кроме того, некоторые старые компьютеры были оснащены только двумя третями ASCII, то есть символами с 32 по 95, а не с 32 по 126. Тогда это, строго говоря, 6-битный вариант. На Цветном компьютере мы поместили файлы с кодами от 32 до 127, но коды от 96 до 127 были инвертированными цветовыми версиями (зеленый на черном, а не черный на зеленом). Эти 32 символьных блока были заменены при отправке в VDG, для которых коды ASCII с 32 по 63 были пронумерованы от 96 до 127, а от 0 до 63 были в инвертированных цветах (вычитая 64). Кроме того, кодирует от 128 до 255 кодированных форм блоков в цвете. GIME мог работать либо как VDG, либо в режиме ASCII, с циркумфлексом # 94, подчеркиванием # 95. Он также имел в качестве опции собственное 8-битное расширение для прописных и строчных букв с диакритическими знаками, совместимое, вероятно, ни с одним другим компьютером (кроме того, что его нельзя было вставить иначе, как по номеру в исходный код BASIC).
Восьмой бит и увеличивается
Многие стандарты для кодирования символов возобновились ASCII и добавлены другие символы для кодов больше 127.
Однобайтовые расширения
Злоупотреблением языком часто называют стандарты «ASCII», которые расширяют ASCII, но несовместимы между собой (а иногда даже несовместимы по своим первым 128 кодированным символам). В частности, стандарты Windows-1252 (обычно используемые в Microsoft Windows в западных странах), ISO / IEC 8859-1 (обычно используемые в Интернете и Unix ) и кодовые страницы ПК номер 437 и 850 (обычно используемые в DOS ) не являются стандарт ASCII. Это неправильное использование языка не без путаницы, вызывающей несовместимость, часто проявляющуюся из-за того, что символы, отличные от ASCII, такие как «буквы с диакритическими знаками» (éÈç), отображаются неправильно. Иногда мы пишем «Basic ASCII», чтобы отличить ASCII от более крупного стандарта.
Азиатские расширения, основанные на escape-последовательностях
Расширения Юникода
Версия 1.0 была прекращена, начиная с версии 1.1, чтобы объединить и объединить два каталога в универсальный набор кодированных символов. ISO / IEC 10646 кодирует десятки тысяч символов, но первые 128 остаются совместимыми с ASCII (в его последней версии X3.4-1986); стандарт Unicode добавляет дополнительную семантику. В стандарте Unicode стандарт ASCII определяется как «C0 Controls and Basic Latin».
Влияющий
ASCII оказал важное влияние на компьютерный мир. В частности, он долгое время ограничивал символы, доступные латинскими символами без ударения, особенно в мире Интернета, будь то для доменных имен, адресов электронной почты, символов, доступных в BIOS, или символов, которыми могут быть написаны компьютерные программы.
Описание
Таблица 128 символов ASCII
Мы также можем представить таблицу символов ASCII в этой более сжатой форме, которая подчеркивает организацию, основанную на базе 16.
PDF: en v · d · m
0
1
2
3
4
5
6
7
8
9
В
B
ПРОТИВ
D
E
F
U + 0000
(символ заполнения)»> НЕТ
начало заголовка»> SOH
начало текста»> STX
конец текста»> ETX
конец передачи»> EOT
запрос»> ENQ
подтверждение получения [положительное]»> ACK
рингтон»> BEL
backspace»> BS
горизонтальная вкладка»> HT
пересечение линии»> LF
вертикальная вкладка»> VT
разрыв страницы»> FF
возврат каретки»> CR
вне кода, замена заблокирована»> ТАК
в коде, замена с нулевой блокировкой»> ЕСЛИ
U + 0010
выхлоп трансмиссии»> DLE
устройство управления один»> DC1
устройство управления два»> DC2
устройство управления три»> DC3
устройство управления четырьмя»> DC4
отрицательное подтверждение»> НАК
синхронизация»> SYN
конец блока передачи»> И B
отмена»> МОЖЕТ
конец поддержки»> ЭМ
подстановка»> SUB
выхлоп»> ESC
разделитель файлов»> FS
разделитель групп»> GS
разделитель записей, разделитель статей»> RS
разделитель подпунктов»> Нас
U + 0020
SP
!
»
#
$
%
&
‘
(
)
*
+
,
—
.
/
U + 0030
0
1
2
3
4
5
6
7
8
9
:
;
знак равно
>
?
U + 0040
@
В
B
ПРОТИВ
D
E
F
грамм
ЧАС
я
J
K
L
M
НЕТ
О
U + 0050
п
Q
р
S
Т
U
V
W
Икс
Y
Z
[
\
]
^
_
U + 0060
«
в
б
против
d
е
ж
грамм
час
я
j
k
л
м
нет
о
U + 0070
п
q
р
s
т
ты
v
ш
Икс
у
z
<
|
>
В следующей подробной таблице 32 управляющих символа (коды от 0 до 31 и 127) и пробел (код 32) представлены с их названиями на английском языке, за которыми следует перевод в скобках.
Базовый код
Персонаж
Имея в виду
10
8
16
2
0
0
00
0000000
НЕТ
Null (ноль)
1
01
01
0000001
SOH
Начало заголовка (начало заголовка)
2
02
02
0000010
STX
Start of Text (начало текста)
3
03
03
0000011
ETX
Конец текста (конец текста)
4
04
04
0000100
EOT
Конец передачи (конец передачи)
5
05
05
0000101
ENQ
Запрос (запрос)
6
06
06
0000110
ACK
Подтверждение (подтверждение)
7
07
07
0000111
BEL
Колокол ( звонит )
8
010
08
0001000
BS
Backspace (возврат / удаление)
9
011
09
0001001
HT
Горизонтальная вкладка (горизонтальная вкладка)
10
012
0A
0001010
LF
Перенос строки ( новая строка )
11
013
0B
0001011
VT
Табуляция вертикальная (вертикальная табуляция)
12
014
0C
0001100
FF
Подача формы (разрыв страницы)
13
015
0D
0001101
CR
Возврат каретки ( возврат каретки / новая строка )
14
016
0E
0001110
ТАК
Shift Out (специальный код)
15
017
0F
0001111
ЕСЛИ
Shift In (стандартный код)
16
020
10
0010000
DLE
Data Link Escape (выхлоп коробки передач)
17
021
11
0010001
DC1
Управление устройством с 1 по 4 (управление устройством)
18
022
12
0010010
DC2
19
023
13
0010011
DC3
20
024
14
0010100
DC4
21 год
025
15
0010101
НАК
Отрицательное подтверждение (NACK)
22
026
16
0010110
SYN
Синхронный режим ожидания (синхронизированный режим ожидания)
23
027
17
0010111
И B
Конец блока передачи (конец блока передачи)
24
030
18
0011000
МОЖЕТ
Отмена (отменено)
25
031
19
0011001
ЭМ
Конец среды (EM)
26 год
032
1А
0011010
SUB
Замена (замена)
27
033
1B
0011011
ESC
Побег (побег)
28 год
034
1 К
0011100
FS
File Separator (разделитель файлов)
29
035
1D
0011101
GS
Разделитель групп (разделитель группы)
30
036
1E
0011110
RS
Разделитель записей (д «разделитель записи )
31 год
037
1F
0011111
Нас
Блок сепаратора (блок сепаратора)
32
040
20
0100000
SP
Пробел ( интервал )
33
041
21 год
0100001
!
Восклицательный знак
34
042
22
0100010
«
Кавычка
35 год
043
23
0100011
#
Крест
36
044
24
0100100
$
Доллар
37
045
25
0100101
%
Процентов
38
046
26 год
0100110
&
Амперсанд
39
047
27
0100111
‘
Апостроф
40
050
28 год
0101000
(
скобка открывается
41 год
051
29
0101001
)
Закрывающая скобка
42
052
2А
0101010
*
Звездочка
43 год
053
2B
0101011
+
Более
44 год
054
2C
0101100
,
Запятая
45
055
2D
0101101
—
Дефис, меньше
46
056
2E
0101110
.
Точка
47
057
2 F
0101111
/
Слэш
48
060
30
0110000
0
Цифра ноль
49
061
31 год
0110001
1
Номер один
50
062
32
0110010
2
Номер два
51
063
33
0110011
3
Номер три
52
064
34
0110100
4
Номер четыре
53
065
35 год
0110101
5
Номер пять
54
066
36
0110110
6
Номер шесть
55
067
37
0110111
7
Номер семь
56
070
38
0111000
8
Номер восемь
57 год
071
39
0111001
9
Номер девять
58
072
3А
0111010
:
Два очка
59
073
3B
0111011
;
Точка с запятой
60
074
3C
0111100
Начальство
63
077
3F
0111111
?
Вопросительный знак
64
0100
40
1 000 000
@
В
65
0101
41 год
100 0001
В
Латинская заглавная буква А
66
0102
42
1000010
B
Латинская заглавная буква B
67
0103
43 год
1000011
ПРОТИВ
Латинская заглавная буква C
68
0104
44 год
1000 100
D
Латинская заглавная буква D
69
0105
45
1000101
E
Латинская заглавная буква E
70
0106
46
1000110
F
Латинская заглавная буква F
71
0107
47
1000111
грамм
Латинская заглавная буква G
72
0110
48
1001000
ЧАС
Латинская заглавная буква H
73
0111
49
1001001
я
Латинская заглавная буква I
74
0112
4А
1001010
J
Латинская заглавная буква J
75
0113
4B
1001011
K
Латинская заглавная буква K
76
0114
4C
1001100
L
Латинская заглавная буква L
77
0115
4D
1001101
M
Латинская заглавная буква M
78
0116
4E
1001110
НЕТ
Латинская заглавная буква N
79
0117
4F
1001111
О
Латинская заглавная буква O
80
0120
50
1010000
п
Латинская заглавная буква P
81 год
0121
51
1010001
Q
Латинская заглавная буква Q
82
0122
52
1010010
р
Латинская заглавная буква R
83
0123
53
1010011
S
Латинская заглавная буква S
84
0124
54
1010100
Т
Латинская заглавная буква T
85
0125
55
1010101
U
Латинская заглавная буква U
86
0126
56
1010110
V
Латинская заглавная буква V
87
0127
57 год
1010111
W
Латинская заглавная буква W
88
01:30
58
1011000
Икс
Латинская заглавная буква X
89
0131
59
1011001
Y
Латинская заглавная буква Y
90
0132
5А
1011010
Z
Латинская заглавная буква Z
91
0133
5B
1011011
[
Открывающий крючок
92
0134
5C
1011100
\
Обратная косая черта
93
0135
5D
1011101
]
Закрывающий крючок
94
0136
5E
1011110
^
Circumflex accent (с охотой )
95
0137
5F
1011111
_
Нижнее подчеркивание
96
0140
60
1100000
«
Серьезный акцент (с охотой)
97
0141
61
1100001
в
Строчная латинская буква A
98
0142
62
1100010
б
Строчная латинская буква B
99
0143
63
1100011
против
Строчная латинская буква C
100
0144
64
1100100
d
Строчная латинская буква D
101
0145
65
1100101
е
Строчная латинская буква E
102
0146
66
1100110
ж
Строчная латинская буква F
103
0147
67
1100111
грамм
Строчная латинская буква G
104
0150
68
1101000
час
Строчная латинская буква H
105
0151
69
1101001
я
Строчная латинская буква i
106
0152
6А
1101010
j
Строчная латинская буква J
107
0153
6B
1101011
k
Строчная латинская буква K
108
0154
6C
1101100
л
Строчная латинская буква L
109
0155
6D
1101101
м
Строчная латинская буква M
110
0156
6E
1101110
нет
Строчная латинская буква N
111
0157
6F
1101111
о
Строчная латинская буква O
112
0160
70
1110000
п
Строчная латинская буква P
113
0161
71
1110001
q
Строчная латинская буква Q
114
0162
72
1110010
р
Строчная латинская буква R
115
0163
73
1110011
s
Строчная латинская буква S
116
0164
74
1110100
т
Строчная латинская буква T
117
0165
75
1110101
ты
Строчная латинская буква U
118
0166
76
1110110
v
Строчная латинская буква V
119
0167
77
1110111
ш
Строчная латинская буква W
120
0170
78
1111000
Икс
Строчная латинская буква x
121
0171
79
1111001
у
Строчная латинская буква Y
122
0172
7А
1111010
z
Строчная латинская буква Z
123
0173
7B
1111011
<
Акколада открывается
124
0174
7C
1111100
|
Вертикальная полоса
125
0175
7D
1111101
>
Закрывающая скобка
126
0176
7E
1111110
Тильда
127
0177
7F
1111111
ПРИНАДЛЕЖАЩИЙ
Удалить (стереть)
Группировка по типу символа
Управляющие символы
Двоичный
Октябрь
Декабрь
Hex.
Сокращение
Имя (1967)
1963 г.
1965 г.
1967
000 0000
000
0
00
НОЛЬ
НЕТ
␀
^@
\0
Нулевой символ
000 0001
001
1
01
SOM
SOH
␁
^A
Начальный символ заголовка
000 0010
002
2
02
EOA
STX
␂
^B
Начало текстового символа
000 0011
003
3
03
МНВ
ETX
␃
^C
Конец текстового символа
000 0100
004
4
04
EOT
␄
^D
Конец передачи символа
000 0101
005
5
05
WRU
ENQ
␅
^E
Характер запроса
000 0110
006
6
06
Соединенное Королевство
ACK
␆
^F
Знак признательности
000 0111
007
7
07
КОЛОКОЛЬЧИК
BEL
␇
^G
\a
Вызов персонажа
000 1000
010
8
08
FE0
BS
␈
^H
\b
Символ Backspace
000 1001
011
9
09
HT / SK
HT
␉
^I
\t
Символ горизонтальной табуляции
000 1010
012
10
0A
LF
␊
^J
\n
Символ разрыва строки
000 1011
013
11
0B
VTAB
VT
␋
^K
\v
Вертикальный символ табуляции
000 1100
014
12
0C
FF
␌
^L
\f
Персонаж смены страницы
000 1101
015
13
0D
CR
␍
^M
\r
Символ возврата каретки
000 1110
016
14
0E
ТАК
␎
^N
Сдвиг
000 1111
017
15
0F
ЕСЛИ
␏
^O
Перейти в
001 0000
020
16
10
DC0
DLE
␐
^P
Выход из канала передачи данных
001 0001
021
17
11
DC1
␑
^Q
Управление устройством 1 (часто XON )
001 0010
022
18
12
DC2
␒
^R
Контроль устройств 2
001 0011
023
19
13
DC3
␓
^S
Управление устройством 3 (часто XOFF )
001 0100
024
20
14
DC4
␔
^T
Контроль устройств 4
001 0101
025
21 год
15
ERR
НАК
␕
^U
Отрицательное подтверждение
001 0110
026
22
16
СИНХРОНИЗАЦИЯ
SYN
␖
^V
Синхронный холостой ход
001 0111
027
23
17
LEM
И B
␗
^W
Конец блока передачи
001 1000
030
24
18
S0
МОЖЕТ
␘
^X
Отмена
001 1001
031
25
19
S1
ЭМ
␙
^Y
Конец среднего
001 1010
032
26 год
1А
S2
SS
SUB
␚
^Z
Заменять
001 1011
033
27
1B
S3
ESC
␛
^[
\e
Побег
001 1100
034
28 год
1 К
S4
FS
␜
^\
Разделитель файлов
001 1101
035
29
1D
S5
GS
␝
^]
Разделитель групп
001 1110
036
30
1E
S6
RS
␞
^^
Разделитель записей
001 1111
037
31 год
1F
S7
Нас
␟
^_
Разделитель единиц
111 1111
177
127
7F
ПРИНАДЛЕЖАЩИЙ
␡
^?
Удалить
Начало заголовка: начало заголовка. Сегодня он часто используется в последовательной связи,чтобы обеспечить синхронизацию после ошибки.
ПРИНАДЛЕЖАЩИЙ
Удалить : удаление. Присвоение ему кода 127 (1111111 в двоичном формате) позволяло удалять апостериори символ на перфорированных лентах, которые кодировали информацию на 7 битах. Любой символ можно преобразовать в светодиод, выполнив перфорацию составляющих его 7 бит.
LF, CR
Замена : замена. Он часто ассоциируется с комбинацией клавиш Ctrl + z и используется в последовательной связи для передачи данных вместо клавиши ввода.
Печатные символы
Шестнадцатеричный код 7F соответствует символу удаления (DEL), который не печатается и поэтому не указан в этой таблице. Он включен в таблицу в предыдущем разделе.