Extended ASCII Table

Reference table for Extended ASCII character codes (128–255): decimal, hex and character.

Back to all tools on ToolForge

More in Developer Tools

Extended ASCII (128–255)

DecHexCharDecHexChar

About Extended ASCII Table

This Extended ASCII table lists character codes from 128 to 255 in decimal, hexadecimal, and character form. The displayed characters depend on your system's encoding—modern systems use UTF-8, while the table shows Windows-1252 (CP-1252) characters for the 128-159 range and ISO-8859-1 for 160-255.

It is useful for encoding references, special character lookups, debugging character display issues, and understanding legacy file formats that predate Unicode.

ASCII vs Extended ASCII vs Unicode

EncodingBitsCharactersRangeStatus
ASCII71280-127Base standard, universal
Extended ASCII82560-255Legacy (various incompatible variants)
ISO-8859-1 (Latin-1)82560-255Legacy European encoding
Windows-125282560-255Legacy Windows encoding
UTF-88-321,112,0640-0x10FFFFModern standard (98%+ web usage)

Windows-1252 Control Range (128-159)

Unlike ISO-8859-1 which defines 128-159 as C1 control codes, Windows-1252 uses this range for printable punctuation and symbols.

Windows-1252 printable characters in 128-159 range:

128 €  Euro sign           144 [unused]
129 [unused]                145 '  Left single quote
130 ‚  Single low quote     146 '  Right single quote
131 ƒ  Latin small f hook   147 "  Left double quote
132 „  Double low quote     148 "  Right double quote
133 …  Horizontal ellipsis  149 •  Bullet
134 †  Dagger               150 –  En dash
135 ‡  Double dagger        151 —  Em dash
136 ˆ  Modifier circumflex  152 ˜  Small tilde
137 ‰  Per mille            153 ™  Trade mark sign
138 Š  S caron              154 š  Small s caron
139 ‹  Single left angle    155 œ  OE ligature
140 Œ  OE ligature          156 [unused]
141 [unused]                157 [unused]
142 Ž  Z caron              158 ž  Small z caron
143 [unused]                159 Ÿ  Y with diaeresis

Common Extended ASCII Symbols (160-255)

DecHexCharNameHTML Entity
160A0 Non-breaking space 
161A1¡Inverted exclamation¡
162A2¢Cent sign¢
163A3£Pound sign£
164A4¤Currency sign¤
165A5¥Yen sign¥
166A6¦Broken bar¦
167A7§Section sign§
169A9©Copyright sign©
170AAªFeminine ordinalª
171AB«Left guillemet«
174AE®Registered sign®
175AF¯Macron¯
176B0°Degree sign°
177B1±Plus-minus sign±
182B6Pilcrow sign¶
183B7·Middle dot·
187BB»Right guillemet»
191BF¿Inverted question¿
215D7×Multiplication sign×
247F7÷Division sign÷

Character Encoding Conversion

JavaScript:
  // Encode string to bytes in specific encoding
  const encoder = new TextEncoder();  // UTF-8 only
  const bytes = encoder.encode("Hello");

  // Decode bytes from specific encoding
  const decoder = new TextDecoder('windows-1252');
  const text = decoder.decode(bytes);

Python:
  # String to bytes (encode)
  text = "Hello"
  utf8_bytes = text.encode('utf-8')
  latin1_bytes = text.encode('latin-1')

  # Bytes to string (decode)
  decoded = latin1_bytes.decode('latin-1')
  text = utf8_bytes.decode('utf-8')

Node.js Buffer:
  // Convert between encodings
  const buf = Buffer.from(input, 'latin1');
  const utf8String = buf.toString('utf8');

Command line (iconv):
  iconv -f ISO-8859-1 -t UTF-8 input.txt > output.txt
  iconv -f CP1252 -t UTF-8 windows.txt > unicode.txt

Why UTF-8 Replaced Extended ASCII

IssueExtended ASCIIUTF-8
Character coverage256 characters maxOver 1 million characters
Language supportSingle script per variantAll writing systems unified
CompatibilityMultiple incompatible variantsSingle universal standard
ASCII compatibilityYes (0-127 identical)Yes (0-127 identical)
Web adoptionLegacy/deprecated98%+ of all web pages
Emoji supportNoneFull emoji set

Frequently Asked Questions

What is Extended ASCII?
Extended ASCII refers to character encodings that use 8 bits per character, providing 256 possible characters (0-255). The first 128 (0-127) are standard ASCII. The extended range (128-255) varies by encoding—common variants include ISO-8859-1 (Latin-1), Windows-1252, and ISO-8859-15. These encodings add accented letters, currency symbols, and special characters.
What is the difference between ASCII and Extended ASCII?
Standard ASCII uses 7 bits (0-127) and includes basic Latin letters, digits, and control characters. Extended ASCII uses 8 bits (0-255), doubling the character set. The upper 128 characters (128-255) are not standardized—different encodings define them differently. Windows-1252 adds smart quotes and the euro symbol; Latin-1 adds accented European characters.
What encoding should I use for web pages?
UTF-8 is the universal standard for web pages. It's backward-compatible with ASCII (0-127 are identical) and supports all Unicode characters (over 140,000 characters from all writing systems). UTF-8 replaced legacy encodings like Latin-1 and Windows-1252. Always declare <meta charset="UTF-8"> in HTML documents.
What are the common Extended ASCII characters?
Common Extended ASCII characters include: 160 (non-breaking space), 162-165 (currency symbols ¢£¤¥), 167 (section sign §), 169 (copyright ©), 176 (degree °), 177 (plus-minus ±), 182 (pilcrow ¶), 187 (right guillemet »), 215 (multiplication ×), 247 (division ÷). Windows-1252 adds 128-159 with smart quotes and dashes.
What is Windows-1252 encoding?
Windows-1252 (also called CP-1252) is a Microsoft extension of ISO-8859-1 that uses the 128-159 range for printable characters instead of control codes. It includes smart quotes (145-148: '"'), en/em dashes (150-151), trademark (153), euro (128), and other typography symbols. It's the default encoding for legacy Windows text files.
How do I convert Extended ASCII to UTF-8?
Most modern tools handle conversion automatically. In programming: JavaScript uses TextEncoder/TextDecoder with encoding parameter; Python uses .encode('utf-8') and bytes.decode('cp1252'); Node.js uses Buffer.from(data, 'latin1').toString('utf8'). For files, use iconv: iconv -f ISO-8859-1 -t UTF-8 input.txt. Always backup before batch conversion.