logo
FoxPro / Методички АСВТ / Информатика

Представление текстовой информации

Текст состоит из символов, поэтому символ можно считать минимальным элементом текста. Если собрать все возможные символы, которые могут встретиться в тексте: латинские буквы, буквы кириллицы, знаки препинания и т.д., и каждому из этих символов присвоить свой уникальный номер (называемый кодом символа), то текст можно записать в виде набора чисел. С помощью 8 бит можно закодировать 256 различных символов. Этого хватит, чтобы закодировать различными комбинациями бит буквы латинского алфавита и кириллицы, как строчные, так и заглавные, знаки препинания, цифры, символы арифметических действий и некоторые другие распространенные символы, такие как «$» или «&». Комбинация из восьми бит получила свое собственное название – байт.

Так как коды символам можно присвоить по-разному, для того, чтобы не было путаницы, было решено ввести стандарт кодирования символов. Для английского языка такой стандарт существует, он называется ASCII (American Standard Code for Information Interchange – стандартный американский код для информационного обмена).

С кодированием русских букв дела обстаят хуже. В настоящее время применяется как минимум три различные кодировки символов кириллицы: Win-1251, КОИ-8 и CP866. Если русский текст записан в одной кодировке, а Вы пытаетесь просмотреть его, используя другую кодировку, то получите совершенно нечитаемый набор букв или символов. Решить такую проблему можно с помощью специальных программ, переводящих текст из одной кодировки в другую.

В ASCII закреплены две таблицы кодирования: базовая и расширенная. В базовой таблице определены значения кодов с 0 по 127, а в расширенной – с 128 по 255. В базовой таблице находятся буквы латинского алфавита, цифры, математические знаки и знаки препинания. Кроме того, за кодами с 0 по 31 закреплены специальные управляющие символы: перевод строки, возврат каретки и т.д. Расширенная таблица ASCII содержит буквы западноевропейских языков и так называемые символы псевдографики, с помощью которых можно, например, рисовать таблицы.

В кодировки русского языка расширенная таблица изменена. В табл. 1.4.2.1 и табл. 1.4.2.2 приведены базовая таблица ASCII-символов и кодировка CP866, используемая в операционной системе MS-DOS. В течение долгого времени понятия «байт» и «символ» были почти синонимами. Однако, в конце концов, стало ясно, что 256 различных символов – это не так много. Математикам требуется использовать в формулах специальные математические знаки, переводчикам необходимо создавать тексты, где могут встретиться символы из различных алфавитов, экономистам необходимы символы валют ($,£,¥). Для удовлетворения нужд всех людей 256 символов явно недостаточно. Для решения этой проблемы была разработана универсальная система кодирования текстовой информации – Unicode. В этой кодировке каждый символ кодируется не одним, а двумя байтами. Таким образом, доступно не 256, а 216=65536 различных кодов. Этого количества хватает на латинский алфавит, кириллицу, иврит, различные африканские и азиатские языки, в том числе наиболее часто употребляющиеся китайские иероглифы, различные специализированные символы, в том числе математические, экономические, технические и многие другие. Кроме этого, часть кодов даже осталась неиспользованной. Главный недостаток Unicode состоит в том, что все тексты в этой кодировке становятся в два раза длиннее.

Таблица 1.4.2.1 Базовая таблица ASCII

32

пробел

48

0

64

@

80

P

96

`

112

P

33

!

49

1

65

A

81

Q

97

a

113

Q

34

«

50

2

66

B

82

R

98

b

114

R

35

#

51

3

67

C

83

S

99

c

115

S

36

$

52

4

68

D

84

T

100

d

116

T

37

%

53

5

69

E

85

U

101

e

117

U

38

&

54

6

70

F

86

V

102

f

118

V

39

'

55

7

71

G

87

W

103

g

119

W

40

(

56

8

72

H

88

X

104

h

120

X

41

)

57

9

73

I

89

Y

105

i

121

Y

42

*

58

:

74

J

90

Z

106

j

122

Z

43

+

59

;

75

K

91

[

107

k

123

{

44

,

60

<

76

L

92

\

108

l

124

|

45

-

61

=

77

M

93

]

109

m

125

}

46

.

62

>

78

N

94

^

110

n

126

~

47

/

63

?

79

O

95

_

111

o

127

Таблица 1.4.2.2  Кодировка CP866 (DOS)

128

А

144

Р

160

а

176

192

208

224

р

240

Е

129

Б

145

С

161

б

177

193

209

225

с

241

е

130

В

146

Т

162

в

178

194

210

226

т

242

Є

131

Г

147

У

163

г

179

195

211

227

у

243

є

132

Д

148

Ф

164

д

180

196

212

228

ф

244

Ї

133

Е

149

Х

165

е

181

197

213

229

х

245

ї

134

Ж

150

Ц

166

ж

182

198

214

230

ц

246

Ў

135

З

151

Ч

167

з

183

199

215

231

ч

247

ў

136

И

152

Ш

168

и

184

200

216

232

ш

248

°

137

Й

153

Щ

169

й

185

201

217

233

щ

249

138

К

154

Ъ

170

к

186

202

218

234

ъ

250

·

139

Л

155

Ы

171

л

187

203

219

235

ы

251

140

М

156

Ь

172

м

188

204

220

236

ь

252

141

Н

157

Э

173

н

189

205

221

237

э

253

¤

142

О

158

Ю

174

о

190

206

222

238

ю

254

143

П

159

Я

175

п

191

207

223

239

я

255

В настоящее время стандарты ASCII и Unicode мирно сосуществуют, хотя существует тенденции постепенного перехода на Unicode.

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4