Re: Microsoft's ANSI Character Set

From: Asmus Freytag (
Date: Tue Jun 08 1999 - 08:24:00 EDT

Before the ISO standard, what was to become 8859-1 was an ANSI draft.
One of the early Windows developers must have been plugged in enough
to get ahold of this document and based the code page on it.
That was in the mid eighties sometime.

'ANSI' stood in contrast to 'OEM' (read DOS) character set, and this is
reflected all over function names and manuals from the earliest days.

This was handy, since with windows 3.1 there were many international
code pages, all paired off with a local DOS code page. ANSI on the
screen, OEM in filenames (and more often than not in those days, in
plain text files).

With NT, 'ANSI' could be paired off again, this time against Unicode.
All function entry points now exist in two versions an A (from ANSI)
and a W (for wchar_t or wide character) version.

Important to note is that the original ANSI set (in Windows) followed
8859-1 strictly and then with CP 1252 became a superset. The other
parts of 8859 did not fare that well: they each have a corresponding
code page that can cover the repertoire, but with a little bit
scrambled layout to allow a set of common characters in common

Customers wanted to be able to run US or Latin-1 based software and
did not care to see the paragraph marks, curly quotes, and other
characters used in the UI, change to random local characters. On
could say the market voted for a larger *common* subset than 96
ASCII characters already then.

With Unicode the times of careful tweaking of 8-bit sets for minor
advantage has hopefully come to an end.


At 04:41 AM 6/8/99 -0700, Markus Kuhn wrote:
>A question, just to satisfy my historic interest:
>Why is the MS-Windows documentation full of references to the "ANSI
>character set" and what ANSI standard does this refer to?
>It this just ANSI/ISO 8859-1 or has CP1252 at some point become
>an ANSI standard?
>Some branches of the (low end) computing literature have become full of
>references to the "ANSI character set", but know body seems to know what
>that means, except that everyone copies it from Microsoft documents.
>Indeed it seems that references to the "ANSI character set" have become
>a good indicator for the general level of competence of the author of a
>computing publication.
>Markus G. Kuhn, Computer Laboratory, University of Cambridge, UK
>Email: mkuhn at, WWW: <>

This archive was generated by hypermail 2.1.2 : Tue Jul 10 2001 - 17:20:46 EDT