All Topics  
Character encoding

 

   Email Print
   Bookmark   Link






 

Character encoding



 
 
A character encoding system consists of a code
Code (information theory)

In information theory, a code is a function mapping an alphabet to non-negative real numbers, satisfying a generalization of Kraft's inequality. A code page, a type of character encoding table, is one such code....
 that pairs a sequence of characters
Character (computing)

In computer and machine-based telecommunications terminology, a character is a unit of information that roughly corresponds to a grapheme, grapheme-like unit, or symbol, such as in an alphabet or syllabary in the written language form of a natural language....
 from a given character set (sometimes incorrectly referred to as code page
Code page

Code page is the traditional International Business Machines term used to map a specific set of characters to numerical code point values . This is slightly different in meaning than the related terms character encoding and character set....
) with something else, such as a sequence of natural number
Number

A number is a mathematical object used in counting and measurement. A notational symbol which represents a number is called a Numeral system, but in common usage the word number is used for both the abstract object and the symbol, as well as for the numeral for the number....
s, octets
Octet (computing)

In computing, an octet is a grouping of eight bits.Octet, with the only exception noted below, always refers to an entity having exactly eight bits....
 or electrical pulses, in order to facilitate the transmission of data (generally numbers and/or text) through telecommunication networks and/or storage of text
Character (computing)

In computer and machine-based telecommunications terminology, a character is a unit of information that roughly corresponds to a grapheme, grapheme-like unit, or symbol, such as in an alphabet or syllabary in the written language form of a natural language....
 in computer
Computer

A computer is a machine that manipulates Data according to a list of Code .The first devices that resemble modern computers date to the mid-20th century , although the computer concept and various machines similar to computers existed earlier....
s.

Terminology
The terms character set and character encoding are often used interchangeably, though usually incorrectly.






Discussion
Ask a question about 'Character encoding'
Start a new discussion about 'Character encoding'
Answer questions from other users
Full Discussion Forum



Encyclopedia


A character encoding system consists of a code
Code (information theory)

In information theory, a code is a function mapping an alphabet to non-negative real numbers, satisfying a generalization of Kraft's inequality. A code page, a type of character encoding table, is one such code....
 that pairs a sequence of characters
Character (computing)

In computer and machine-based telecommunications terminology, a character is a unit of information that roughly corresponds to a grapheme, grapheme-like unit, or symbol, such as in an alphabet or syllabary in the written language form of a natural language....
 from a given character set (sometimes incorrectly referred to as code page
Code page

Code page is the traditional International Business Machines term used to map a specific set of characters to numerical code point values . This is slightly different in meaning than the related terms character encoding and character set....
) with something else, such as a sequence of natural number
Number

A number is a mathematical object used in counting and measurement. A notational symbol which represents a number is called a Numeral system, but in common usage the word number is used for both the abstract object and the symbol, as well as for the numeral for the number....
s, octets
Octet (computing)

In computing, an octet is a grouping of eight bits.Octet, with the only exception noted below, always refers to an entity having exactly eight bits....
 or electrical pulses, in order to facilitate the transmission of data (generally numbers and/or text) through telecommunication networks and/or storage of text
Character (computing)

In computer and machine-based telecommunications terminology, a character is a unit of information that roughly corresponds to a grapheme, grapheme-like unit, or symbol, such as in an alphabet or syllabary in the written language form of a natural language....
 in computer
Computer

A computer is a machine that manipulates Data according to a list of Code .The first devices that resemble modern computers date to the mid-20th century , although the computer concept and various machines similar to computers existed earlier....
s.

Terminology


The terms character set and character encoding are often used interchangeably, though usually incorrectly. The term character set refers only to the set (or group) of characters (and sometimes device control codes) used by a particular encoding system, but does not include their numerical assignments nor order therein. The term character encoding includes a character set and how each character is represented within a character encoding system.

For historical reasons, MIME
MIME

Multipurpose Internet Mail Extensions is an Internet standard that extends the format of electronic mail to support:* Text in character sets other than ASCII...
 and systems based on it use the abbreviation charset to refer to the complete system for encoding a sequence of characters into a sequence of octets.

History


Common examples of character encoding systems include Morse code
Morse code

Morse code is a type of character encoding that transmits telegraphic information using rhythm. Morse code uses a standardized sequence of short and long elements to represent the alphanumeric, punctuation and special characters of a given message....
, the Baudot code
Baudot code

The Baudot code, invented by ?mile Baudot, is a character encoding predating EBCDIC and ASCII, and the root predecessor to International Telegraph Alphabet No 2 , the teleprinter code in use until the advent of ASCII....
, the American Standard Code for Information Interchange (ASCII
ASCII

American Standard Code for Information Interchange , is a coding standard that can be used for interchanging information, if the information is expressed mainly by the written form of English words....
) and Unicode
Unicode

Unicode is a computing industry standard allowing computers to consistently represent and manipulate Character expressed in most of the world's writing systems....
.

Morse code
Morse code

Morse code is a type of character encoding that transmits telegraphic information using rhythm. Morse code uses a standardized sequence of short and long elements to represent the alphanumeric, punctuation and special characters of a given message....
 was introduced in the 1840s and is used to encode each letter of the Latin alphabet
Latin alphabet

The Latin alphabet, also called the Roman alphabet, is the most widely used alphabetic writing system in the world today. It evolved from the western variety of the Greek alphabet called the Cumae alphabet, and was initially developed by the Ancient Romes to write the Latin....
 and each Arabic numeral as a series of long and short presses of a telegraph key
Telegraph key

Telegraph key, also known as a Morse key, are generic terms for any switching device used primarily to send Morse code. Similar keys are used for all forms of manual telegraphy, such as in electrical telegraph and radio telegraphy....
. Representations of characters encoded using Morse code varied in length.

The Baudot code
Baudot code

The Baudot code, invented by ?mile Baudot, is a character encoding predating EBCDIC and ASCII, and the root predecessor to International Telegraph Alphabet No 2 , the teleprinter code in use until the advent of ASCII....
 was created by Émile Baudot
Émile Baudot

Jean-Maurice-?mile Baudot , France telegraphy engineering and inventor of the Baudot code, was one of the pioneers of telecommunications. He invented a multiplexed printing telegraph system that used his code and allowed multiple transmissions over a single line....
 in 1870, patented in 1874, modified by Donald Murray in 1901, and standardized by CCITT as International Telegraph Alphabet No. 2 (ITA2) in 1930.

The American Standard Code for Information Interchange (usually abbreviated ASCII
ASCII

American Standard Code for Information Interchange , is a coding standard that can be used for interchanging information, if the information is expressed mainly by the written form of English words....
) was introduced in 1963 and is a 7-bit encoding scheme used to encode letters, numerals, symbols, and device control codes as fixed-length codes using integer
Integer

The integers are natural numbers including 0 and their negative and non-negative numberss . They are numbers that can be written without a fractional or decimal component, and fall within the set ....
s). IBM
IBM

International Business Machines Corporation, abbreviated IBM and nicknamed "Big Blue" , is a multinational corporation computer technology and consulting corporation headquartered in Armonk, New York, New York, United States....
's Extended Binary Coded Decimal Interchange Code (usually abbreviated EBCDIC
EBCDIC

Extended Binary Coded Decimal Interchange Code is an 8-bit character encoding used on IBM mainframe operating systems such as z/OS, OS/390, VM and VSE , as well as IBM midrange computer operating systems such as OS/400 and i5/OS ....
) is an 8-bit encoding scheme developed in 1963.

The limitations of such sets soon became apparent, and a number of ad-hoc
Ad hoc

Ad hoc is a List of Latin phrases which means "for this [purpose]". It generally signifies a solution designed for a specific problem or task, non-generalisable and which cannot be adapted to other purposes....
 methods were developed to extend them. The need to support more writing system
Writing system

A writing system is a type of symbolic system used to represent elements or statements expressible in language....
s for different languages, including the CJK family of East Asian scripts, required support for a far larger number of characters and demanded a systematic approach to character encoding rather than the previous ad hoc
Ad hoc

Ad hoc is a List of Latin phrases which means "for this [purpose]". It generally signifies a solution designed for a specific problem or task, non-generalisable and which cannot be adapted to other purposes....
 approaches.

Early binary repertoires include:
  • I Ching
    I Ching

    The I Ching , or ?Y? Jing? ; also called Classic of Changes or Book of Changes is one of the oldest of the Chinese classic texts....
     (China 1122 BC - 256 BC)
  • Braille
    Braille

    The Braille system is a method that is widely used by blindness people to read and write. Braille was devised in 1821 by Louis Braille, a Frenchman....
  • International maritime signal flags
    International maritime signal flags

    The system of international maritime signal flags is a way of representing individual letters of the alphabet in International Code of Signalss to or from ships....
  • Chinese telegraph code
    Chinese telegraph code

    The Chinese Telegraph Code, Chinese Telegraphic Code, or Chinese Commercial Code is a four-digit decimal code for Electrical telegraph messages written with Chinese characters....
     (Hans Schjellerup
    Hans Schjellerup

    Hans Carl Frederik Christian Schjellerup was a Denmark astronomer.He was born at Odense, the son of a jeweller. Initially he was apprenticed as a watch maker, but in 1848 he passed the entrance exam for the Polytechnic School of Copenhagen....
    , 1869, modified 1872 and following)
    Encoding of Chinese characters as 4-digit decimals.


Modern encoding model


Unicode
Unicode

Unicode is a computing industry standard allowing computers to consistently represent and manipulate Character expressed in most of the world's writing systems....
 and its parallel standard, ISO 10646 Universal Character Set
Universal Character Set

The Universal Character Set , defined by the International Organization for Standardization/International Electrotechnical Commission 10646 International Organization for Standardization, is a standard set of character s upon which many character encodings are based....
, which together constitute the most modern character encoding, broke away from this idea, and instead separated the ideas of what characters are available, their numbering, how those numbers are encoded as a series of "code units" (limited-size numbers), and finally how those units are encoded as a stream of octets (bytes). The idea behind this decomposition is to establish a universal set of characters that can be encoded in a variety of ways. To correctly describe this model needs more precise terms than "character set" and "character encoding". The terms used in the modern model follow:

A character repertoire is the full set of abstract characters that a system supports. The repertoire may be closed, that is no additions are allowed without creating a new standard (as is the case with ASCII and most of the ISO-8859 series), or it may be open, allowing additions (as is the case with Unicode and to a limited extent the Windows code page
Windows code page

Windows code pages are sets of characters or code pages used in Microsoft Windows systems from the 1980s and 1990s....
s). The characters in a given repertoire reflect decisions that have been made about how to divide writing systems into linear information units. The basic variants of the Latin
Latin alphabet

The Latin alphabet, also called the Roman alphabet, is the most widely used alphabetic writing system in the world today. It evolved from the western variety of the Greek alphabet called the Cumae alphabet, and was initially developed by the Ancient Romes to write the Latin....
, Greek
Greek alphabet

The Greek alphabet is a set of twenty-four letters that has been used to write the Greek language since the late 9th century BC or early 8th century BCE....
, and Cyrillic alphabet
Cyrillic alphabet

The Cyrillic alphabet is a family of alphabets, subsets of which are used by five Slavic languages national languages as well as non-Slavic . It is also used by many other languages of Eastern Europe, the Caucasus, Siberia and other languages in the past....
s, can be broken down into letters, digits, punctuation, and a few special characters like the space, which can all be arranged in simple linear sequences that are displayed in the same order they are read. Even with these alphabets however diacritic
Diacritic

A diacritic is a small sign added to a letter to alter pronunciation or to distinguish between similar words. The term derives from the Greek language d?a???t???? ....
s pose a complication: they can be regarded either as part of a single character containing a letter and diacritic (known in modern terminology as a precomposed character), or as separate characters. The former allows a far simpler text handling system but the latter allows any letter/diacritic combination to be used in text. Other writing systems, such as Arabic and Hebrew, are represented with more complex character repertoires due to the need to accommodate things like bidirectional text and glyph
Glyph

A glyph is an element of writing. Two or more glyphs representing the same symbol, whether interchangeable or context-dependent, are called allographs; the abstract unit they are variants of is called a grapheme or character ....
s that are joined together in different ways for different situations.

A coded character set specifies how to represent a repertoire of characters using a number of non-negative integer codes called code points. For example, in a given repertoire, a character representing the capital letter "A" in the Latin alphabet might be assigned to the integer 65, the character for "B" to 66, and so on. A complete set of characters and corresponding integers is a coded character set. Multiple coded character sets may share the same repertoire; for example ISO/IEC 8859-1
ISO/IEC 8859-1

ISO 8859-1, more formally cited as ISO/IEC 8859-1 is part 1 of ISO 8859, a standard character encoding of the Latin alphabet. It is less formally referred to as Latin-1....
 and IBM code pages 037 and 500 all cover the same repertoire but map them to different codes. In a coded character set, each code point only represents one character.

A character encoding form (CEF) specifies the conversion of a coded character set's integer codes into a set of limited-size integer code values that facilitate storage in a system that represents numbers in binary form using a fixed number of bits (i.e. practically any computer system). For example, a system that stores numeric information in 16-bit units would only be able to directly represent integers from 0 to 65,535 in each unit, but larger integers could be represented if more than one 16-bit unit could be used. This is what a CEF accommodates: it defines a way of mapping single code point from a range of, say, 0 to 1.4 million, to a series of one or more code values from a range of, say, 0 to 65,535.

The simplest CEF system is simply to choose large enough units that the values from the coded character set can be encoded directly (one code point to one code value). This works well for coded character sets that fit in 8 bits (as most legacy non-CJK encodings do) and reasonably well for coded character sets that fit in 16 bits (such as early versions of Unicode). However, as the size of the coded character set increases (e.g. modern Unicode requires at least 21 bits/character), this becomes less and less efficient, and it is difficult to adapt existing systems to use larger code values. Therefore, most systems working with later versions of Unicode use either UTF-8
UTF-8

UTF-8 is a Variable-width encoding character encoding for Unicode. It is able to represent any character in the Unicode standard, yet the initial encoding of byte codes and character assignments for UTF-8 is backward compatibility with ASCII....
, which maps Unicode code points to variable-length sequences of octets, or UTF-16/UCS-2
UTF-16/UCS-2

In computing, UTF-16 is a Variable-width encoding character encoding for Unicode, capable of encoding the entire Unicode repertoire.The encoding form maps each character to a sequence of 16-bit Word ....
, which maps Unicode code points to variable-length sequences of 16-bit words.

Next, a character encoding scheme (CES) specifies how the fixed-size integer codes should be mapped into an octet sequence suitable for saving on an octet-based file system or transmitting over an octet-based network. With Unicode, a simple character encoding scheme is used in most cases, simply specifying whether the bytes for each integer should be in big-endian
Endianness

In computing, endianness is the byte ordering used to represent some kind of data. Typical cases are the order in which integer values are stored as bytes in computer memory and the transmission order over a network or other medium....
 or little-endian order (even this isn't needed with UTF-8). However, there are also compound character encoding schemes, which use escape sequences to switch between several simple schemes (such as ISO/IEC 2022
ISO/IEC 2022

ISO 2022, more formally ISO/IEC 2022 "Information Technology?Character code structure and extension techniques", is an International Organization for Standardization standard specifying...
), and compressing schemes, which try to minimise the number of bytes used per code unit (such as SCSU
Standard Compression Scheme for Unicode

The Standard Compression Scheme for Unicode is a Unicode Technical Standard for reducing the number of bytes needed to represent Unicode text, especially if that text uses mostly characters from one or a small number of per-language character blocks....
, BOCU
Binary Ordered Compression for Unicode

BOCU-1 is a MIME compatible Unicode compression scheme. BOCU stands for Binary Ordered Compression for Unicode. BOCU-1 combines the wide applicability of UTF-8 with the compactness of Standard Compression Scheme for Unicode....
, and Punycode
Punycode

Punycode is a computer programming encoding syntax by which a Unicode string of characters can be translated into the more-limited Character encoding permitted in network Hostname....
).

Finally, there may be a higher level protocol which supplies additional information that can be used to select the particular variant of a Unicode
Unicode

Unicode is a computing industry standard allowing computers to consistently represent and manipulate Character expressed in most of the world's writing systems....
 character, particularly where there are regional variants that have been 'unified' in Unicode as the same character. An example is the XML attribute xml:lang.

Popular character encodings

  • ISO 646
    ISO/IEC 646

    ISO 646 is an International Organization for Standardization standard that since 1972 has specified a 7-bit character code from which several national standards are derived....
    • ASCII
      ASCII

      American Standard Code for Information Interchange , is a coding standard that can be used for interchanging information, if the information is expressed mainly by the written form of English words....
  • EBCDIC
    • CP930
      Code page 930

      Code page 930 is a code page created by IBM for representation of Japanese text. It is a superset of EBCDIC. It is commonly used on IBM OS390 and IBM AS400 operating system....
  • ISO 8859
    ISO/IEC 8859

    ISO/IEC 8859 is a joint International Organization for Standardization and International Electrotechnical Commission standard for 8-bit character encodings for use by computers....
    :
    • ISO 8859-1
      ISO/IEC 8859-1

      ISO 8859-1, more formally cited as ISO/IEC 8859-1 is part 1 of ISO 8859, a standard character encoding of the Latin alphabet. It is less formally referred to as Latin-1....
       Western Europe
    • ISO 8859-2
      ISO/IEC 8859-2

      ISO 8859-2, more formally cited as ISO/IEC 8859-2 or less formally as Latin-2, is part 2 of ISO 8859, a standard character encoding defined by International Organization for Standardization ....
       Western and Central Europe
    • ISO 8859-3
      ISO/IEC 8859-3

      International Organization for Standardization 8859-3, also known as Latin-3 or "South European" is an 8-bit character encoding, part of the ISO 8859 standard....
       Western Europe and South European ( Turkish, Maltese plus Esperanto )
    • ISO 8859-4
      ISO/IEC 8859-4

      International Organization for Standardization 8859-4, also known as Latin-4 or "North European", is an 8-bit character encoding, part of the ISO 8859 standard....
       Western Europe and Baltic countries ( Lithuania, Estonia and Lapp )
    • ISO 8859-5
      ISO/IEC 8859-5

      International Organization for Standardization 8859-5, also known as Cyrillic is an 8-bit character encoding, part of the ISO 8859 standard....
       Cyrillic alphabet
    • ISO 8859-6
      ISO/IEC 8859-6

      International Organization for Standardization 8859-6, also known as Arabic, is an 8-bit character encoding, part of the ISO 8859 standard....
       Arabic
    • ISO 8859-7
      ISO/IEC 8859-7

      International Organization for Standardization 8859-7, also known as Greek, is an 8-bit character encoding, part of the ISO 8859 standard....
       Greek
    • ISO 8859-8
      ISO/IEC 8859-8

      International Organization for Standardization 8859-8, more formally cited as ISO/IEC 8859-8, is part 8 of ISO 8859, a standard character encoding defined by International Organization for Standardization.ISO 8859-8 contains all the Hebrew alphabet ....
       Hebrew
    • ISO 8859-9
      ISO/IEC 8859-9

      International Organization for Standardization 8859-9, also known as Latin-5 or "Turkish", is an 8-bit character encoding, part of the ISO 8859 standard....
       Western Europe with amended Turkish character set
    • ISO 8859-10
      ISO/IEC 8859-10

      International Organization for Standardization 8859-10, also known as Latin-6, is an 8-bit character encoding, part of the ISO 8859 standard....
       Western Europe with rationalised character set for Nordic languages, including complete Icelandic set.
    • ISO 8859-11
      ISO/IEC 8859-11

      International Organization for Standardization 8859-11 is an 8-bit character encoding, part of the ISO 8859 standard. It covers the characters used for the Thai language....
       Thai
    • ISO 8859-13
      ISO/IEC 8859-13

      International Organization for Standardization 8859-13, also known as Latin-7 or "Baltic Rim", is an 8-bit character encoding, part of the ISO 8859 standard....
       Baltic languages plus Polish
    • ISO 8859-14
      ISO/IEC 8859-14

      International Organization for Standardization 8859-14, also known as Latin-8 or "Celtic", is an 8-bit character encoding, part of the ISO 8859 standard....
       Celtic languages ( Irish Gaelic, Scottish, Welsh )
    • ISO 8859-15
      ISO/IEC 8859-15

      ISO 8859-15 is part 15 of ISO 8859, a standard character encoding defined by International Organization for Standardization. It is also known as Latin-9, and unofficially as Latin-0 but not as Latin-15....
       Added the Euro sign and other rationalisations to ISO 8859-1
    • ISO 8859-16
      ISO/IEC 8859-16

      International Organization for Standardization 8859-16, also known as Latin-10 or "South-Eastern European", is an 8-bit character encoding, part of the ISO 8859 standard....
       Central European languages ( Polish, Czech, Slovenian, Slovak, Hungarian, Albanian, Romanian, German, Italian )
  • CP437
    Code page 437

    IBM PC or MS-DOS code page 437, often abbreviated CP437 and also known as, DOS-US, OEM-US or sometimes misleadingly referred to as the OEM font, High ASCII or Extended ASCII, is the original character set of the IBM PC, circa 1981....
    , CP737
    Code page 737

    Code page 737 is a code page to be used under MS-DOS to write Greek language. It was much more popular than CP869....
    , CP850
    Code page 850

    Code page 850 is a code page that was used in western Europe, under systems such as DOS. It was also sometimes used on English DOS systems although CP437 was generally the default on those....
    , CP852
    Code page 852

    Code page 852 is a code page to be used under MS-DOS with Central European languages that use Latin alphabet .Some of the box drawing characters were sacrificed in order to put in more accented letters ....
    , CP855
    Code page 855

    CP855 is a Cyrillic alphabet code page to be used under MS-DOS. This code page is not used much.In the following table only the codes 128–255 are shown. The codes 0–127 are the same as in ASCII....
    , CP857
    Code page 857

    Code page 857 is a code page to be used under MS-DOS to write Turkish language.CP857 is based on CP850, but with many changes. It includes all characters from ISO 8859-9....
    , CP858
    Code page 858

    Code page 858 is a code page to be used under MS-DOS to write Western European languages.The only difference between CP858 and CP850 is the codepoint 0xD5, which is dotless-i in CP850, but euro sign in CP858....
    , CP860
    Code page 860

    Code page 860 is a code page to be used under MS-DOS to write Portuguese language....
    , CP861
    Code page 861

    Code page 861 is a code page to be used under MS-DOS to write the Icelandic language ....
    , CP863
    Code page 863

    Code page 863 is a code page to be used under MS-DOS to write French language ....
    , CP865
    Code page 865

    Code page 865 is a code page to be used under MS-DOS with Nordic languages .CP865 differs from CP437 only in two points: 0x9B and 0x9D . The letter ?? is required for Danish language and Norwegian language languages....
    , CP866
    Code page 866

    CP866 is a Cyrillic alphabet code page to be used with MS-DOS. It is based on the "alternative character set" of GOST 19768-87. The code was widely used during MS-DOS era because it preserves the pseudographic symbols and maintains alphabetical order of Cyrillic letters ....
    , CP869
    Code page 869

    Code page 869 is a code page to be used under MS-DOS to write Greek language. It was designed to include all characters from ISO 8859-7.CP869 was not so popular as CP737....
  • MS-Windows character sets
    Code page

    Code page is the traditional International Business Machines term used to map a specific set of characters to numerical code point values . This is slightly different in meaning than the related terms character encoding and character set....
    :
    • Windows-1250
      Windows-1250

      Windows-1250 is a code page used under Microsoft Windows to represent texts in Central European and Eastern European languages that use Latin alphabet, such as Polish language, Czech language, Slovak language, Hungarian language, Slovene language, Bosnian language, Croatian language, Serbian language , Romanian language and Albanian language....
       for Central European languages that use Latin script, (Polish, Czech, Slovak, Hungarian, Slovene, Serbian, Croatian, Romanian and Albanian)
    • Windows-1251
      Windows-1251

      Windows-1251 is a popular 8-bit character encoding, designed to cover languages that use the Cyrillic alphabet such as Russian language, Bulgarian language and other languages....
       for Cyrillic alphabets
    • Windows-1252
      Windows-1252

      Windows-1252 is a character encoding of the Latin alphabet, used by default in the legacy components of Microsoft Windows in English and some other Western languages....
       for Western languages
    • Windows-1253
      Windows-1253

      Windows-1253 is a Microsoft Windows code page used to write modern Greek language . It is not fully compatible with ISO 8859-7 .UTF-8 is preferred for modern applications....
       for Greek
    • Windows-1254
      Windows-1254

      Windows-1254 is a code page used under Microsoft Windows to write Turkish language. Characters with codepoints A0 through FF are compatible with ISO 8859-9....
       for Turkish
    • Windows-1255
      Windows-1255

      Windows-1255 is a codepage used under Microsoft Windows to write Hebrew language. It is an almost compatible superset of ISO 8859-8 - the letters are in the same positions , but Windows-1255 adds vowel-points and other signs in lower positions....
       for Hebrew
    • Windows-1256
      Windows-1256

      Windows-1256 is a code page used to write Arabic language under Microsoft Windows.  This code page is not compatible with ISO 8859-6 and MacArabic encoding encodings....
       for Arabic
    • Windows-1257
      Windows-1257

      Windows-1257 is a code page used to write Estonian language , Latvian language and Lithuanian language languages under Microsoft Windows. It is also possible to write Polish language and German language using this code page with the added bonus that the German text will be identical to that encoded in Windows-1252....
       for Baltic languages
    • Windows-1258
      Windows-1258

      Windows-1258 is a codepage used in Microsoft Windows to represent Vietnamese language texts. It makes use of combining diacritical marks. Windows-1258 is not compatible with VISCII....
       for Vietnamese
  • Mac OS Roman
    Mac OS Roman

    Mac OS Roman is a character encoding primarily used by Mac OS to represent text. It encodes 256 characters, the first 128 of which are identical to ASCII, with the remaining characters including mathematical symbols, diacritics, and additional punctuation marks....
  • KOI8-R
    KOI8-R

    KOI8-R is an 8-bit character encoding, designed to cover Russian language, which uses the Cyrillic alphabet. It also happens to cover Bulgarian language....
    , KOI8-U
    KOI8-U

    KOI8-U is an 8-bit character encoding, designed to cover Ukrainian language, which uses the Cyrillic alphabet. It is based on KOI8-R, which covers Russian language and Bulgarian language, but replaces eight graphic characters with four Ukrainian letters Ghe , Ukrainian Ye, Ukrainian I, and Yi in both upper case and lower case....
    , KOI7
    KOI7

    KOI7 is a 7-bit character encoding, designed to cover Russian language, which uses the Cyrillic alphabet. It can cover either the ASCII table or Cyrillic characters, but not both ....
  • MIK
    MIK Code page

    MIK is a Cyrillic alphabet code page to be used with MS-DOS. It is based on the character set used in the Bulgarian IBM PC compatible system....
  • Cork or T1
    Cork encoding

    The Cork or T1 encoding is a character encoding. It is named after city of Cork in Ireland, where during a TeX Users Group conference, a new encoding was introduced for LaTeX....
  • ISCII
  • TSCII
  • VISCII
  • JIS X 0208
    JIS X 0208

    JIS X 0208 is a Japanese Industrial Standard defining a set of kanji indexed by a pair of integers from 1 to 94 . This standard was previously known as JIS-C-6226....
     is a widely deployed standard for Japanese character encoding that has several encoding forms.
    • Shift_JIS (Microsoft Code page 932
      Code page 932

      Code page 932 is Microsoft's extension of Shift JIS to include NEC special characters , NEC selection of IBM extensions , and IBM extensions . The coded character sets are JIS X0201:1997, JIS X0208:1997, and these extensions....
       is a dialect of Shift_JIS)
    • EUC-JP
      Extended Unix Code

      Extended Unix Code is a multibyte character encoding system used primarily for Japanese language, Korean language, and simplified Chinese.The structure of EUC is based on the ISO_2022 standard, which specifies a way to represent character sets containing a maximum of 94 characters, or 8836 characters, or 830584 characters, as sequences o...
    • ISO-2022-JP
      ISO/IEC 2022

      ISO 2022, more formally ISO/IEC 2022 "Information Technology?Character code structure and extension techniques", is an International Organization for Standardization standard specifying...
  • JIS X 0213
    JIS X 0213

    JIS X 0213 is a Japanese Industrial Standard defining coded character sets for encoding the characters used in Japan. This standard extends JIS X 0208....
     is an extended version of JIS X 0208.
    • Shift_JIS-2004
    • EUC-JIS-2004
      Extended Unix Code

      Extended Unix Code is a multibyte character encoding system used primarily for Japanese language, Korean language, and simplified Chinese.The structure of EUC is based on the ISO_2022 standard, which specifies a way to represent character sets containing a maximum of 94 characters, or 8836 characters, or 830584 characters, as sequences o...
    • ISO-2022-JP-2004
      ISO/IEC 2022

      ISO 2022, more formally ISO/IEC 2022 "Information Technology?Character code structure and extension techniques", is an International Organization for Standardization standard specifying...
  • Chinese Guobiao
    List of GB standards

    GB standards are the Chinese national standards issued by the Standardization Administration of China , the Chinese National Committee of the International Organization for Standardization and International Electrotechnical Commission....
    • GB 2312
      GB 2312

      GB2312 is the registered internet name for a key official character set of the People's Republic of China, used for Simplified chinese Chinese characters....
    • GBK
      GBK

      GBK is an extension of the GB2312 character set for Simplified chinese Chinese characters, used in the People's Republic of China.GB stands for National Standard, while K stands for Extension....
       (Microsoft Code page 936)
    • GB 18030
      GB 18030

      GB18030 is the registered Internet name for the official character set of the People's Republic of China superseding GB 2312. This character set is formally called "Chinese National Standard GB 18030-2005: Information technology -- Chinese coded character set"....
  • Taiwan Big5
    Big5

    Big-5 or Big5 is a Chinese character encoding method used in Taiwan, Hong Kong and Macau for Traditional Chinese characters. Its Mainland China equivalent is Guobiao code....
     (a more famous variant is Microsoft Code page 950
    Code page 950

    Code page 950 is Microsoft's implementation of the defacto standard Big5 . The code page is not registered with IANA, and hence, is not a standard to communicate information over the internet....
    )
  • Hong Kong HKSCS
    HKSCS

    The Hong Kong Supplementary Character Set is a set of Chinese characters -- 4,702 in total in the initial release -- used exclusively in Standard Cantonese....
  • KS X 1001 is a Korean double-byte character encoding standard
    • EUC-KR
      Extended Unix Code

      Extended Unix Code is a multibyte character encoding system used primarily for Japanese language, Korean language, and simplified Chinese.The structure of EUC is based on the ISO_2022 standard, which specifies a way to represent character sets containing a maximum of 94 characters, or 8836 characters, or 830584 characters, as sequences o...
    • ISO-2022-KR
      ISO/IEC 2022

      ISO 2022, more formally ISO/IEC 2022 "Information Technology?Character code structure and extension techniques", is an International Organization for Standardization standard specifying...
  • Unicode
    Unicode

    Unicode is a computing industry standard allowing computers to consistently represent and manipulate Character expressed in most of the world's writing systems....
     (and subsets thereof, such as the 16-bit 'Basic Multilingual Plane'). See UTF-8
    UTF-8

    UTF-8 is a Variable-width encoding character encoding for Unicode. It is able to represent any character in the Unicode standard, yet the initial encoding of byte codes and character assignments for UTF-8 is backward compatibility with ASCII....
  • ANSEL
    ANSEL

    ANSEL, American National Standard for Extended Latin Alphabet Coded Character Set for Bibliographic Use, is a character set used in text encoding, and is also known as ANSI/NISO Z39.47 or American Library Association character set ....
     or ISO/IEC 6937
    ISO/IEC 6937

    ISO/IEC 6937 is a multibyte extension of ASCII, or rather ofISO/IEC 646-IRV, developed in common with ITU-T for telematic services under the name of T.51....


Character encoding translation


As a result of having many character encoding methods in use (and the need for backward compatibility with archived data), many computer programs have been developed to translate data between encoding schemes. Some of these are cited below.

Cross-platform
Cross-platform

In computing, cross-platform is a term used to refer to computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms....
:
  • iconv
    Iconv

    iconv is a computer program and a standardized Application programming interface used to convert between different character encodings....
     – program and standardized API to convert encodings
  • convert_encoding.py – Python based utility to convert text files between arbitrary encodings and line endings.
  • decodeh.py - algorithm and module to heuristically guess the encoding of a string


Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
:
  • recode – convert file contents from one encoding to another
  • utrac – convert file contents from one encoding to another.
  • cstocs – convert file contents from one encoding to another
  • convmv – convert a filename from one encoding to another.
  • enca – analyzes encodings for given text files/


Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
:
  • cscvt – character set conversion tool


See also

Category:Character encoding — articles related to character encoding in general
Category:Character sets — articles detailing specific character encodings
  • Code page
    Code page

    Code page is the traditional International Business Machines term used to map a specific set of characters to numerical code point values . This is slightly different in meaning than the related terms character encoding and character set....
     — various character set encodings used by Microsoft
  • Windows code page
    Windows code page

    Windows code pages are sets of characters or code pages used in Microsoft Windows systems from the 1980s and 1990s....
     — various character set encodings used by Microsoft Windows
  • Mojibake
    Mojibake

    is the happenstance of incorrect, unreadable characters shown when computer software fails to render a text correctly according to its associated character encoding....
     — character set mismap.
  • Alt code


External links