MIK (МИК) is an 8-bit
Cyrillic
, bg, кирилица , mk, кирилица , russian: кириллица , sr, ћирилица, uk, кирилиця
, fam1 = Egyptian hieroglyphs
, fam2 = Proto-Sinaitic
, fam3 = Phoenician
, fam4 = G ...
code page
In computing, a code page is a character encoding and as such it is a specific association of a set of printable characters and control characters with unique numbers. Typically each number represents the binary value in a single byte. (In some co ...
used with
DOS. It is based on the character set used in the Bulgarian
Pravetz 16
Pravetz computers (in Bulgarian shortly: Правец) are the Bulgarian personal computers produced from 1979 that were widely used in scientific organizations and schools until the late 1990s, and are still in use in some schools.
Pravets are a ...
IBM PC compatible system.
Kermit calls this character set "BULGARIA-PC" / "bulgaria-pc".
In Bulgaria, it was sometimes incorrectly referred to as
code page 856
Code page 856 (CCSID 856) (also known as CP 856 and IBM 00856), is a code page used under DOS for Hebrew in Israel.
Like ISO 8859-8, it encodes only letters, not vowel-points or cantillation marks; includes all characters of ISO 8859-8. As non-l ...
(which clashes with IBM's definition for a Hebrew code page). This code page is known by
FreeDOS as Code page 3021.
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.
Character set
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.
Notes for implementors of mapping tables to Unicode
Implementors of mapping tables to Unicode should note that the MIK Code page unifies some characters:
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
*
Hardware code page
In computing, a hardware code page (HWCP) refers to a code page supported natively by a hardware device such as a display adapter or printer. The glyphs to present the characters are stored in the alphanumeric character generator's resident r ...
References
External links
* https://www.unicode.org/Public/MAPPINGS/VENDORS/IBM/IBM_conversions.html Unicode Consortium's mappings between IBM's code pages and Unicode
* http://www.cl.cam.ac.uk/~mgk25/unicode.html#conv UTF-8 and Unicode FAQ for Unix/Linux by
Markus Kuhn
{{DEFAULTSORT:MIK
DOS code pages
Character encoding