Binary Conversion Chart (0-255)

Every value a byte can hold, shown in binary, decimal, hexadecimal and octal side by side, with the ASCII character, powers of two and the boundary values that cause bugs.

A grid of printed numerals forming an abstract pattern
Every value from 0 to 255 in five notations. One byte, exhaustively enumerated. Photo: Jan van der Wolf on Pexels
Updated: 2 August 2026Read: 7 minRuns: 100% in your browser

How to use this chart

Every row shows the same value in five notations. Reading across converts between them instantly, no arithmetic required.

The relationships are fixed and worth internalising:

  • 4 bits = 1 hex digit. Split any binary byte into two nibbles and convert each separately: 1101 0110 is D6.
  • 3 bits = 1 octal digit. Group from the right: 11 010 110 is 0o326.
  • 8 bits = 1 byte, covering 0-255 unsigned or −128-127 signed.

0 to 255 in four bases

Every value a single byte can hold, with the corresponding ASCII character where one exists.

0 - 63

DecimalBinaryHexOctalASCII
0000000000x000o000NUL
1000000010x010o001SOH
2000000100x020o002STX
3000000110x030o003ETX
4000001000x040o004EOT
5000001010x050o005ENQ
6000001100x060o006ACK
7000001110x070o007BEL
8000010000x080o010BS
9000010010x090o011HT
10000010100x0A0o012LF
11000010110x0B0o013VT
12000011000x0C0o014FF
13000011010x0D0o015CR
14000011100x0E0o016SO
15000011110x0F0o017SI
16000100000x100o020DLE
17000100010x110o021DC1
18000100100x120o022DC2
19000100110x130o023DC3
20000101000x140o024DC4
21000101010x150o025NAK
22000101100x160o026SYN
23000101110x170o027ETB
24000110000x180o030CAN
25000110010x190o031EM
26000110100x1A0o032SUB
27000110110x1B0o033ESC
28000111000x1C0o034FS
29000111010x1D0o035GS
30000111100x1E0o036RS
31000111110x1F0o037US
32001000000x200o040SP
33001000010x210o041!
34001000100x220o042"
35001000110x230o043#
36001001000x240o044$
37001001010x250o045%
38001001100x260o046&
39001001110x270o047'
40001010000x280o050(
41001010010x290o051)
42001010100x2A0o052*
43001010110x2B0o053+
44001011000x2C0o054,
45001011010x2D0o055-
46001011100x2E0o056.
47001011110x2F0o057/
48001100000x300o0600
49001100010x310o0611
50001100100x320o0622
51001100110x330o0633
52001101000x340o0644
53001101010x350o0655
54001101100x360o0666
55001101110x370o0677
56001110000x380o0708
57001110010x390o0719
58001110100x3A0o072:
59001110110x3B0o073;
60001111000x3C0o074<
61001111010x3D0o075=
62001111100x3E0o076>
63001111110x3F0o077?

64 - 127

DecimalBinaryHexOctalASCII
64010000000x400o100@
65010000010x410o101A
66010000100x420o102B
67010000110x430o103C
68010001000x440o104D
69010001010x450o105E
70010001100x460o106F
71010001110x470o107G
72010010000x480o110H
73010010010x490o111I
74010010100x4A0o112J
75010010110x4B0o113K
76010011000x4C0o114L
77010011010x4D0o115M
78010011100x4E0o116N
79010011110x4F0o117O
80010100000x500o120P
81010100010x510o121Q
82010100100x520o122R
83010100110x530o123S
84010101000x540o124T
85010101010x550o125U
86010101100x560o126V
87010101110x570o127W
88010110000x580o130X
89010110010x590o131Y
90010110100x5A0o132Z
91010110110x5B0o133[
92010111000x5C0o134\
93010111010x5D0o135]
94010111100x5E0o136^
95010111110x5F0o137_
96011000000x600o140`
97011000010x610o141a
98011000100x620o142b
99011000110x630o143c
100011001000x640o144d
101011001010x650o145e
102011001100x660o146f
103011001110x670o147g
104011010000x680o150h
105011010010x690o151i
106011010100x6A0o152j
107011010110x6B0o153k
108011011000x6C0o154l
109011011010x6D0o155m
110011011100x6E0o156n
111011011110x6F0o157o
112011100000x700o160p
113011100010x710o161q
114011100100x720o162r
115011100110x730o163s
116011101000x740o164t
117011101010x750o165u
118011101100x760o166v
119011101110x770o167w
120011110000x780o170x
121011110010x790o171y
122011110100x7A0o172z
123011110110x7B0o173{
124011111000x7C0o174|
125011111010x7D0o175}
126011111100x7E0o176~
127011111110x7F0o177DEL

128 - 191

DecimalBinaryHexOctalASCII
128100000000x800o200,
129100000010x810o201,
130100000100x820o202,
131100000110x830o203,
132100001000x840o204,
133100001010x850o205,
134100001100x860o206,
135100001110x870o207,
136100010000x880o210,
137100010010x890o211,
138100010100x8A0o212,
139100010110x8B0o213,
140100011000x8C0o214,
141100011010x8D0o215,
142100011100x8E0o216,
143100011110x8F0o217,
144100100000x900o220,
145100100010x910o221,
146100100100x920o222,
147100100110x930o223,
148100101000x940o224,
149100101010x950o225,
150100101100x960o226,
151100101110x970o227,
152100110000x980o230,
153100110010x990o231,
154100110100x9A0o232,
155100110110x9B0o233,
156100111000x9C0o234,
157100111010x9D0o235,
158100111100x9E0o236,
159100111110x9F0o237,
160101000000xA00o240,
161101000010xA10o241,
162101000100xA20o242,
163101000110xA30o243,
164101001000xA40o244,
165101001010xA50o245,
166101001100xA60o246,
167101001110xA70o247,
168101010000xA80o250,
169101010010xA90o251,
170101010100xAA0o252,
171101010110xAB0o253,
172101011000xAC0o254,
173101011010xAD0o255,
174101011100xAE0o256,
175101011110xAF0o257,
176101100000xB00o260,
177101100010xB10o261,
178101100100xB20o262,
179101100110xB30o263,
180101101000xB40o264,
181101101010xB50o265,
182101101100xB60o266,
183101101110xB70o267,
184101110000xB80o270,
185101110010xB90o271,
186101110100xBA0o272,
187101110110xBB0o273,
188101111000xBC0o274,
189101111010xBD0o275,
190101111100xBE0o276,
191101111110xBF0o277,

192 - 255

DecimalBinaryHexOctalASCII
192110000000xC00o300,
193110000010xC10o301,
194110000100xC20o302,
195110000110xC30o303,
196110001000xC40o304,
197110001010xC50o305,
198110001100xC60o306,
199110001110xC70o307,
200110010000xC80o310,
201110010010xC90o311,
202110010100xCA0o312,
203110010110xCB0o313,
204110011000xCC0o314,
205110011010xCD0o315,
206110011100xCE0o316,
207110011110xCF0o317,
208110100000xD00o320,
209110100010xD10o321,
210110100100xD20o322,
211110100110xD30o323,
212110101000xD40o324,
213110101010xD50o325,
214110101100xD60o326,
215110101110xD70o327,
216110110000xD80o330,
217110110010xD90o331,
218110110100xDA0o332,
219110110110xDB0o333,
220110111000xDC0o334,
221110111010xDD0o335,
222110111100xDE0o336,
223110111110xDF0o337,
224111000000xE00o340,
225111000010xE10o341,
226111000100xE20o342,
227111000110xE30o343,
228111001000xE40o344,
229111001010xE50o345,
230111001100xE60o346,
231111001110xE70o347,
232111010000xE80o350,
233111010010xE90o351,
234111010100xEA0o352,
235111010110xEB0o353,
236111011000xEC0o354,
237111011010xED0o355,
238111011100xEE0o356,
239111011110xEF0o357,
240111100000xF00o360,
241111100010xF10o361,
242111100100xF20o362,
243111100110xF30o363,
244111101000xF40o364,
245111101010xF50o365,
246111101100xF60o366,
247111101110xF70o367,
248111110000xF80o370,
249111110010xF90o371,
250111110100xFA0o372,
251111110110xFB0o373,
252111111000xFC0o374,
253111111010xFD0o375,
254111111100xFE0o376,
255111111110xFF0o377,

Powers of two

A seven-segment LED display showing numeric digits
255 is where a byte stops. Everything above it needs a second byte and a decision about which one comes first. Photo: Benjamin Farren on Pexels

The numbers that appear constantly in memory sizes, address ranges and limits.

PowerDecimalHexSignificance
2010x1One bit
2120x2
2240x4
2380x8One byte’s worth of values per nibble
24160x10
25320x20Case bit in ASCII
26640x40
271280x80ASCII range
282560x100One byte
295120x200
2101,0240x4001 KiB
2112,0480x800
2124,0960x1000
2138,1920x2000
21416,3840x4000
21532,7680x8000
21665,5360x1000016-bit range, 64 KiB
2201,048,5760x1000001 MiB
22416,777,2160x1000000RGB colour space
2301,073,741,8240x400000001 GiB
2312,147,483,6480x80000000Signed 32-bit limit
2324,294,967,2960x100000000IPv4 address space
2401,099,511,627,7760x100000000001 TiB
2539,007,199,254,740,9920x20000000000000JavaScript exact integer limit
26418,446,744,073,709,551,6160x1000000000000000064-bit range

Boundary values that cause bugs

ValueWhy it matters
127Largest signed 8-bit integer; largest ASCII code
128Most negative signed 8-bit value (−128); first “extended” byte
255Largest unsigned byte; 0xFF; full colour channel
32,767Largest signed 16-bit integer
65,535Largest unsigned 16-bit; highest TCP/UDP port
2,147,483,647Largest signed 32-bit integer; the 2038 timestamp limit
4,294,967,295Largest unsigned 32-bit; total IPv4 addresses
9,007,199,254,740,991JavaScript MAX_SAFE_INTEGER, 253−1

Off-by-one errors around these values are among the most common classes of bug in systems programming. The Y2K38 problem is exactly the 2,147,483,647 row: 32-bit Unix timestamps overflow on 19 January 2038, as explained in the timestamp converter.

Frequently Asked Questions

How do I convert binary to decimal?

Multiply each bit by its positional value (1, 2, 4, 8, 16…) and add them up. 1101 is 8 + 4 + 0 + 1 = 13. The chart lets you look it up directly.

How many hex digits make a byte?

Two. Each hex digit represents exactly four bits, so FF is 11111111, which is 255.

Why is 255 significant?

It is the largest value one unsigned byte can hold, which is why colour channels, IP octets and many size limits stop there.

What is 0xFF in decimal?

255. The 0x prefix marks hexadecimal, and FF is 15×16 + 15.

Why does octal use three bits per digit?

Because octal is base 8 and 8 = 2³. Each octal digit maps to exactly three binary digits, which is why Unix file permissions are written in octal.

What is the largest 32-bit signed integer?

2,147,483,647. One bit is the sign, leaving 31 bits of magnitude. This value is the cause of the Year 2038 problem in 32-bit Unix timestamps.

Sources & further reading

  1. Positional notation, the general principle behind every base in this chart
  2. The Year 2038 problem, what happens when a signed 32-bit counter overflows
  3. MDN: MAX_SAFE_INTEGER, the exact-integer limit in JavaScript