Символьный тип
Символьный тип представляют собой упорядоченное множество расширенного набора символов кода ASCII.
Каждому символу кода ASCII соответствует число от 0 до 255, которое является кодом его внутреннего представления. В табл. 7 приведены символы кода ASCII .
.
Таблица 7
Код |
Символ |
Код |
Символ |
Код |
Символ |
Код |
Символ |
0 |
NUL |
32 |
BL |
64 |
@ |
96 |
‘ |
1 |
SOH |
33 |
! |
65 |
A |
97 |
a |
2 |
STX |
34 |
“ |
66 |
B |
98 |
b |
3 |
ETX |
35 |
# |
67 |
C |
99 |
c |
4 |
EOT |
36 |
$ |
68 |
D |
100 |
d |
5 |
ENQ |
37 |
% |
69 |
E |
101 |
e |
6 |
ACK |
38 |
& |
70 |
F |
102 |
f |
7 |
BEL |
39 |
‘ |
71 |
G |
103 |
g |
8 |
BS |
40 |
( |
72 |
H |
104 |
h |
9 |
HT |
41 |
) |
73 |
I |
105 |
i |
10 |
LF |
42 |
* |
74 |
J |
106 |
j |
11 |
VT |
43 |
+ |
75 |
K |
107 |
l |
12 |
FF |
44 |
, |
76 |
L |
108 |
l |
13 |
CR |
45 |
- |
77 |
M |
109 |
m |
14 |
SO |
46 |
. |
78 |
N |
110 |
n |
15 |
S1 |
47 |
/ |
79 |
O |
111 |
o |
16 |
DEL |
48 |
0 |
80 |
P |
112 |
p |
17 |
DC1 |
49 |
1 |
81 |
Q |
113 |
q |
18 |
DC2 |
50 |
2 |
82 |
R |
114 |
r |
19 |
DC3 |
51 |
3 |
83 |
S |
115 |
s |
20 |
DC4 |
52 |
4 |
84 |
T |
116 |
t |
21 |
NAK |
53 |
5 |
85 |
U |
117 |
u |
22 |
SYN |
54 |
6 |
86 |
V |
118 |
v |
23 |
ETB |
55 |
7 |
87 |
W |
119 |
w |
24 |
CAN |
56 |
8 |
88 |
X |
120 |
x |
25 |
EM |
57 |
9 |
89 |
Y |
121 |
y |
26 |
EOF |
58 |
: |
90 |
Z |
122 |
z |
27 |
ESC |
59 |
; |
91 |
[ |
123 |
{ |
28 |
FS |
60 |
< |
92 |
\ |
124 |
| |
29 |
GS |
61 |
= |
93 |
] |
125 |
} |
30 |
RS |
62 |
> |
94 |
^ |
126 |
~ |
31 |
US |
63 |
? |
95 |
_ |
127 |
D |
Код ASCII 7-ми битный и позволяет закодировать символов. и составляет основной набор кода. В ТР используется 8 –ми битный код, который позволяет закодировать символов, который представляет расширенный набор символов. Символы с кодами 128..255 составляют дополнительный набор и содержат символы национальных клавиатур и др. символы дополнительного набора.
Символы можно записывать указывая их код #С где С принадлежит 0..255.
Например:
#65=>’A’; #66=>’B’; #97=>’a’; #98=>’b’;
#48=>’0’; #49=>’1’; #49=>’#’; #46=>’.’.
Символы с кодами 0..31 являются управляющими, они не отображаются на экране, а выполняют определенные функции (некоторые из них приведены в табл. 8).
Таблица 8
Код |
Символ |
Назначение |
#7 |
BEL |
Звуковой сигнал |
#9 |
HT |
Горизонтальная табуляция |
#10 |
LF |
Перевод строки |
#11 |
VT |
Вертикальная табуляция |
#12 |
FF |
Прогон страницы |
#13 |
CR |
Возврат каретки |
#26 |
EOF |
Конец файла |
#27 |
ESC |
Конец работы |
#32 |
BL |
Пробел |
Управляющие символы можно задавать следующим образом: ^С.
#7 =>^G; #10 =>^J; #13 =>^M.
Эти символы можно включать в текстовые строки без разделителей.
В строках вывода они выполняют определенные функции
Writeln(^G^G’Таблица №1’:30^M^J,’A’:10,’B’:10,’y’:10);
Над данными символьного типа можно выполнять отношения (при этом сравниваются их ASCII коды). Для данных символьного типа существует набор процедур и функций приведенный в табл. 9.
Таблица 9
Обращение |
Назначение |
Пример |
ord(S) |
Определяет порядковый номер N символа S |
ord(‘A’)=65 |
chr(N) |
Определяет символ S по номеру N |
chr(66)=’A’ |
pred(S) |
Определяет предыдущий символ S |
pred(‘B’)=’A’ |
succ(S) |
Определяет последующий символ S |
succ (‘A’)=’B’ |
UpCase(S) |
Определяет символ S в верхнем регистре |
UpCase(‘y’)=’Y’ |