ASCII to Uppercase Converter
Convert any text to uppercase instantly. Free online ASCII to uppercase converter with copy, download, and real-time character count.
About
Case conversion errors propagate silently through data pipelines. A mismatched key in a case-sensitive database lookup returns zero rows instead of throwing an error. This tool applies the Unicode Simple Uppercase Mapping to every code point in your input. For standard ASCII, each lowercase letter from a (0x61) through z (0x7A) is shifted by subtracting 32 (0x20) to yield A (0x41) through Z (0x5A). Non-alphabetic characters pass through unchanged. The conversion handles the full BMP range, so accented characters like Γ© correctly become Γ.
Limitation: locale-specific mappings (e.g., Turkish dotless i β Δ°) follow the browserβs default locale, not a user-selected one. For bulk normalization tasks, verify your target locale matches.
Formulas
For any character c within the ASCII lowercase range, the uppercase equivalent C is computed by a fixed integer offset:
This works because the ASCII table places uppercase letters at code points 65 - 90 and lowercase at 97 - 122. The gap is exactly 0x20 (32 in decimal). In binary, this is equivalent to clearing bit 5:
The general condition for this offset to apply:
Where c = the input character, C = the resulting uppercase character, 0x20 = the fixed decimal offset of 32 between ASCII cases, and 0xDF = the bitmask that clears bit 5. For characters outside this range (digits, punctuation, already-uppercase, extended Unicode), the JavaScript engine applies the full Unicode Simple Uppercase Mapping table internally.
Reference Data
| Character | Lowercase Code | Uppercase | Uppercase Code | Offset |
|---|---|---|---|---|
| a | 97 (0x61) | A | 65 (0x41) | β32 |
| b | 98 (0x62) | B | 66 (0x42) | β32 |
| c | 99 (0x63) | C | 67 (0x43) | β32 |
| d | 100 (0x64) | D | 68 (0x44) | β32 |
| e | 101 (0x65) | E | 69 (0x45) | β32 |
| f | 102 (0x66) | F | 70 (0x46) | β32 |
| g | 103 (0x67) | G | 71 (0x47) | β32 |
| h | 104 (0x68) | H | 72 (0x48) | β32 |
| i | 105 (0x69) | I | 73 (0x49) | β32 |
| j | 106 (0x6A) | J | 74 (0x4A) | β32 |
| k | 107 (0x6B) | K | 75 (0x4B) | β32 |
| l | 108 (0x6C) | L | 76 (0x4C) | β32 |
| m | 109 (0x6D) | M | 77 (0x4D) | β32 |
| n | 110 (0x6E) | N | 78 (0x4E) | β32 |
| o | 111 (0x6F) | O | 79 (0x4F) | β32 |
| p | 112 (0x70) | P | 80 (0x50) | β32 |
| q | 113 (0x71) | Q | 81 (0x51) | β32 |
| r | 114 (0x72) | R | 82 (0x52) | β32 |
| s | 115 (0x73) | S | 83 (0x53) | β32 |
| t | 116 (0x74) | T | 84 (0x54) | β32 |
| u | 117 (0x75) | U | 85 (0x55) | β32 |
| v | 118 (0x76) | V | 86 (0x56) | β32 |
| w | 119 (0x77) | W | 87 (0x57) | β32 |
| x | 120 (0x78) | X | 88 (0x58) | β32 |
| y | 121 (0x79) | Y | 89 (0x59) | β32 |
| z | 122 (0x7A) | Z | 90 (0x5A) | β32 |