Jump to content

MIK (character set)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Matthiaspaul (talk | contribs) at 20:20, 7 June 2016 (fixed refs). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

MIK is a Cyrillic code page used with DOS. It is based on the character set used in the Bulgarian Pravetz 16[1] IBM PC compatible system.

This is the most widespread DOS/OEM code page used in Bulgaria, rather than CP 808, CP 855, CP 866 or CP 872.

Almost every DOS program created in Bulgaria, which has Bulgarian strings in it, was using MIK as encoding, and many such programs are still in use.

Code page layout

Each character is shown with its equivalent Unicode code point and its decimal code point. Only the second half of the table (code points 128–255) is shown, the first half (code points 0–127) being the same as ASCII.

_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
8_ Template:Chset-color-intl |А
0410

128
Template:Chset-color-intl |Б
0411

129
Template:Chset-color-intl |В
0412

130
Template:Chset-color-intl |Г
0413

131
Template:Chset-color-intl |Д
0414

132
Template:Chset-color-intl |Е
0415

133
Template:Chset-color-intl |Ж
0416

134
Template:Chset-color-intl |З
0417

135
Template:Chset-color-intl |И
0418

136
Template:Chset-color-intl |Й
0419

137
Template:Chset-color-intl |К
041A

138
Template:Chset-color-intl |Л
041B

139
Template:Chset-color-intl |М
041C

140
Template:Chset-color-intl |Н
041D

141
Template:Chset-color-intl |О
041E

142
Template:Chset-color-intl |П
041F

143
9_ Template:Chset-color-intl |Р
0420

144
Template:Chset-color-intl |С
0421

145
Template:Chset-color-intl |Т
0422

146
Template:Chset-color-intl |У
0423

147
Template:Chset-color-intl |Ф
0424

148
Template:Chset-color-intl |Х
0425

149
Template:Chset-color-intl |Ц
0426

150
Template:Chset-color-intl |Ч
0427

151
Template:Chset-color-intl |Ш
0428

152
Template:Chset-color-intl |Щ
0429

153
Template:Chset-color-intl |Ъ
042A

154
Template:Chset-color-intl |Ы
042B

155
Template:Chset-color-intl |Ь
042C

156
Template:Chset-color-intl |Э
042D

157
Template:Chset-color-intl |Ю
042E

158
Template:Chset-color-intl |Я
042F

159
A_ Template:Chset-color-intl |а
0430

160
Template:Chset-color-intl |б
0431

161
Template:Chset-color-intl |в
0432

162
Template:Chset-color-intl |г
0433

163
Template:Chset-color-intl |д
0434

164
Template:Chset-color-intl |е
0435

165
Template:Chset-color-intl |ж
0436

166
Template:Chset-color-intl |з
0437

167
Template:Chset-color-intl |и
0438

168
Template:Chset-color-intl |й
0439

169
Template:Chset-color-intl |к
043A

170
Template:Chset-color-intl |л
043B

171
Template:Chset-color-intl |м
043C

172
Template:Chset-color-intl |н
043D

173
Template:Chset-color-intl |о
043E

174
Template:Chset-color-intl |п
043F

175
B_ Template:Chset-color-intl |р
0440

176
Template:Chset-color-intl |с
0441

177
Template:Chset-color-intl |т
0442

178
Template:Chset-color-intl |у
0443

179
Template:Chset-color-intl |ф
0444

180
Template:Chset-color-intl |х
0445

181
Template:Chset-color-intl |ц
0446

182
Template:Chset-color-intl |ч
0447

183
Template:Chset-color-intl |ш
0448

184
Template:Chset-color-intl |щ
0449

185
Template:Chset-color-intl |ъ
044A

186
Template:Chset-color-intl |ы
044B

187
Template:Chset-color-intl |ь
044C

188
Template:Chset-color-intl |э
044D

189
Template:Chset-color-intl |ю
044E

190
Template:Chset-color-intl |я
044F

191
C_ Template:Chset-color-graph|
2514

192
Template:Chset-color-graph|
2534

193
Template:Chset-color-graph|
252C

194
Template:Chset-color-graph|
251C

195
Template:Chset-color-graph|
2500

196
Template:Chset-color-graph|
253C

197
Template:Chset-color-graph|
2563

198
Template:Chset-color-graph|
2551

199
Template:Chset-color-graph|
255A

200
Template:Chset-color-graph|
2554

201
Template:Chset-color-graph|
2569

202
Template:Chset-color-graph|
2566

203
Template:Chset-color-graph|
2560

204
Template:Chset-color-graph|
2550

205
Template:Chset-color-graph|
256C

206
Template:Chset-color-graph|
2510

207
D_ Template:Chset-color-graph|
2591

208
Template:Chset-color-graph|
2592

209
Template:Chset-color-graph|
2593

210
Template:Chset-color-graph|
2502

211
Template:Chset-color-graph|
2524

212
Template:Chset-color-punct|
2116

213
Template:Chset-color-punct|§
00A7

214
Template:Chset-color-graph|
2557

215
Template:Chset-color-graph|
255D

216
Template:Chset-color-graph|
2518

217
Template:Chset-color-graph|
250C

218
Template:Chset-color-graph|
2588

219
Template:Chset-color-graph|
2584

220
Template:Chset-color-graph|
258C

221
Template:Chset-color-graph|
2590

222
Template:Chset-color-graph|
2580

223
E_ Template:Chset-color-intl |α
03B1

224
Template:Chset-color-intl |ß
00DF
[nb 1]
225
Template:Chset-color-intl |Γ
0393

226
Template:Chset-color-intl |π
03C0

227
Template:Chset-color-intl |Σ
03A3
[nb 2]
228
Template:Chset-color-intl |σ
03C3

229
Template:Chset-color-intl |µ
00B5
[nb 3]
230
Template:Chset-color-intl |τ
03C4

231
Template:Chset-color-intl |Φ
03A6

232
Template:Chset-color-intl |Θ
0398

233
Template:Chset-color-intl |Ω
03A9
[nb 4]
234
Template:Chset-color-intl |δ
03B4

235
Template:Chset-color-punct|
221E

236
Template:Chset-color-intl |φ
03C6

237
Template:Chset-color-intl |ε
03B5
[nb 5]
238
Template:Chset-color-punct|
2229

239
F_ Template:Chset-color-punct|
2261

240
Template:Chset-color-punct|±
00B1

241
Template:Chset-color-punct|
2265

242
Template:Chset-color-punct|
2264

243
Template:Chset-color-punct|
2320

244
Template:Chset-color-punct|
2321

245
Template:Chset-color-punct|÷
00F7

246
Template:Chset-color-punct|
2248

247
Template:Chset-color-punct|°
00B0

248
Template:Chset-color-punct|
2219

249
Template:Chset-color-punct|·
00B7

250
Template:Chset-color-punct|
221A

251
Template:Chset-color-punct|
207F

252
Template:Chset-color-punct|²
00B2

253
Template:Chset-color-graph|
25A0

254
Template:Chset-color-punct|NBSP
00A0

255

Notes for implementors of mapping tables to Unicode

Implementors of mapping tables to Unicode should note that the MIK Code page unifies some characters:

  1. ^ 0xE1 is both the German sharp S (U+00DF, ß) and the Greek lowercase beta (U+03B2, β);
  2. ^ 0xE4 is both the n-ary summation sign (U+2211, ∑) and the Greek uppercase sigma (U+03A3, Σ);
  3. ^ 0xE6 is both the micro sign (U+00B5, µ) and the Greek lowercase mu (U+03BC, μ);
  4. ^ 0xEA is both the Ohm sign (U+2126, Ω) and the Greek uppercase omega (U+03A9, Ω);
  5. ^ 0xEE is both the element-of sign (U+2208, ∈) and the Greek lowercase epsilon (U+03B5, ε)!

Binary character manipulations

The MIK code page maintains in alphabetical order all Cyrillic letters which enables very easy character manipulation in binary form:

10xx xxxx - is a Cyrillic Letter

100x xxxx - is an Upper-case Cyrillic Letter

101x xxxx - is a Lower-case Cyrillic Letter

In such case testing and character manipulating functions as:

IsAlpha(), IsUpper(), IsLower(), ToUpper() and ToLower(),

are bit operations and sorting is by simple comparison of character values.

See also

References

For more information about the origins of the characters unification have a look at Unicode Consortium's mappings between IBM's code pages and Unicode

Similar information about the characters unification is given in Markus Kuhn's UTF-8 and Unicode FAQ for Unix/Linux

For more information about the range of 0xE0 to 0xFF please see the Microsoft Code Page 437 reference chart