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 contexts these terms are used more precisely; see Character encoding § Terminology.)

The term "code page" originated from IBM's EBCDIC-based mainframe systems,[1] but Microsoft, SAP,[2] and Oracle Corporation[3] are among the vendors that use this term. The majority of vendors identify their own character sets by a name. In the case when there is a plethora of character sets (like in IBM), identifying character sets through a number is a convenient way to distinguish them. Originally, the code page numbers referred to the page numbers in the IBM standard character set manual,[4][5][6] a condition which has not held for a long time. Vendors that use a code page system allocate their own code page number to a character encoding, even if it is better known by another name; for example, UTF-8 has been assigned page numbers 1208 at IBM, 65001 at Microsoft, and 4110 at SAP.

Hewlett-Packard uses a similar concept in its HP-UX operating system and its Printer Command Language[7] (PCL) protocol for printers (either for HP printers or not). The terminology, however, is different: What others call a character set, HP calls a symbol set, and what IBM or Microsoft call a code page, HP calls a symbol set code. HP developed a series of symbol sets,[8][9] each with an associated symbol set code, to encode both its own character sets and other vendors’ character sets.

The multitude of character sets leads many vendors to recommend Unicode.

  1. ^ Cite error: The named reference IBM_i_EBCDIC was invoked but never defined (see the help page).
  2. ^ Cite error: The named reference SAP_CP was invoked but never defined (see the help page).
  3. ^ Cite error: The named reference oracle.com was invoked but never defined (see the help page).
  4. ^ Cite error: The named reference DEC_VT510 was invoked but never defined (see the help page).
  5. ^ Cite error: The named reference DEC_1994_Codepage was invoked but never defined (see the help page).
  6. ^ Cite error: The named reference Paul_2001_CODEPAGE was invoked but never defined (see the help page).
  7. ^ Cite error: The named reference PCL was invoked but never defined (see the help page).
  8. ^ Cite error: The named reference PCL-Symbol was invoked but never defined (see the help page).
  9. ^ Cite error: The named reference PCL5 was invoked but never defined (see the help page).