# Windows-1252

De tekencodering Windows-1252, door Windows omschreven als ANSI Latin 1, en in de context van Windows in de V.S. en het grootste deel van Europa kortweg ANSI genoemd, is een bepaalde extended ASCII-tekenset.

## ANSI en ASCII

De ASCII-tekenset bevat 128 tekens en gebruikt daarvoor 7 bits. Bij het opslaan van een ASCII-teken wordt in een byte het 8e bit op 0 gezet. Als het achtste bit gebruikt wordt voor de representatie van extra tekens, wordt dit extended ASCII genoemd. Bij extended ASCII kunnen de extra tekens gebruikt worden om bijvoorbeeld letters met accenten weer te geven of om lijnen te trekken. Zie verder bij ASCII.
In Windows 95 en latere versies van dit besturingssysteem wordt de term "ANSI" gebruikt voor de tekenverzameling die in het betreffende deel van de wereld door het systeem wordt ondersteund. In Noord-Amerika en West-Europa is dit de set CP1252, die voor het grootste gedeelte overeenkomt met de tekenset ISO 8859-1.
Dit ter vervanging van de tekensets CP437 en CP850, die worden gebruikt door MS-DOS-programma's. CP437 en CP850 gebruiken wel allebei 256 tekens. De verschillen zijn dat CP850 meer diakritische tekens en symbolen bevat ten koste van enkele lijntekensymbolen (niet allemaal) die in een grafische omgeving niet meer nodig zijn. CP850 bevat bijna alle tekens die ook in ISO-8859-1 voorkomen, maar op andere posities.
Toen Microsoft met Windows begon, werd een tekenset gekozen zonder de lijntekensymbolen. Microsoft noemde de tekenset consequent ANSI, met ANSI-lettertypen etc. In Windows is het nog steeds mogelijk CP437-tekens in te typen. Door de Alt-toets ingedrukt te houden, en op het numerieke deel van het toetsenbord 130 in te toetsen, ontstaat het teken: é. In feite wordt de code 130 (van CP437) omgezet naar code 233 van de ANSI-tekenset. De code van de ANSI-tekenset kan ook ingevoerd worden door Alt+0233 te kiezen. Op dezelfde manier zal Windows een tekstbestand uit MS-DOS (gecodeerd volgens CP437) omzetten naar ANSI.

## Tabel

Windows-1252 (CP1252) :
| | –0 | –1 | –2 | –3 | –4 | –5 | –6 | –7 | –8 | –9 | –A | –B | –C | –D | –E | –F |
| 0– | NUL | SOH | STX | ETX | EOT | ENQ | ACK | BEL | BS | TAB | LF | VT | FF | CR | SO | SI |
| 1– | DLE | DC1 | DC2 | DC3 | DC4 | NAK | SYN | ETB | CAN | EM | SUB | ESC | FS | GS | RS | US |
| 2– | SP | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
| 3– | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
| 4– | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
| 5– | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ^ | _ |
| 6– | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
| 7– | p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | DEL |
| 8– | € | | ‚ | ƒ | „ | … | † | ‡ | ˆ | ‰ | Š | ‹ | Œ | | Ž | |
| 9– | | ‘ | ’ | “ | ” | • | – | — | ~ | ™ | š | › | œ | | ž | Ÿ |
| A– | NBSP | ¡ | ¢ | £ | ¤ | ¥ | ¦ | § | ¨ | © | ª | « | ¬ | SHY | ® | ¯ |
| B– | ° | ± | ² | ³ | ´ | µ | ¶ | · | ¸ | ¹ | º | » | ¼ | ½ | ¾ | ¿ |
| C– | À | Á | Â | Ã | Ä | Å | Æ | Ç | È | É | Ê | Ë | Ì | Í | Î | Ï |
| D– | Ð | Ñ | Ò | Ó | Ô | Õ | Ö | × | Ø | Ù | Ú | Û | Ü | Ý | Þ | ß |
| E– | à | á | â | ã | ä | å | æ | ç | è | é | ê | ë | ì | í | î | ï |
| F– | ð | ñ | ò | ó | ô | õ | ö | ÷ | ø | ù | ú | û | ü | ý | þ | ÿ |
Het is een variant op ISO 8859-1, het gele deel is in ISO-8859-1 toegewezen aan stuurcodes. Het bevat evenals ISO 8859-15 (een nieuwere versie van ISO 8859-1) het euroteken, dat echter bij beide niet hetzelfde gecodeerd is. De codering van de tekens buiten het gele gebied komt overeen met het Unicode-codepunt. De tekens in het gele gebied worden ook door Unicode ondersteund, maar met codepunten hoger dan 255.