CompoundPage

Convert Decimal to Binary

255 in decimal is 11111111 in binary, so converting decimal to binary changes the digits and nothing else: both are the same quantity, 255.

Prefixes 0b, 0o and 0x are understood, as are spaces and underscores.

In decimal255

In binary
11111111
In octal
377
In decimal The value as entered.
255
In hexadecimal
ff
Grouped Binary in nibbles of four and hex in bytes of two, which is how both are actually read. Each hex digit is exactly four binary digits, so the two groupings line up. That correspondence is the whole reason hexadecimal exists.
1111 1111 | ff
Fits in Unsigned. A value needing more than 53 bits cannot be held exactly in a JavaScript number, which is why this converter works in BigInt. A float-based converter is silently wrong in the last digits above that.
8 bits
As a character Read as a Unicode code point. This is the 'binary to text' conversion, one character at a time: 65 is A, 97 is a, and the 32 between them is why setting the sixth bit changes case in ASCII.
U+00FF ΓΏ

How the Number Base Converter works

255 in decimal is 11111111 in binary. Both spellings describe the same quantity, 255, and the conversion changes nothing except how it is written.

Every base works the same way: a digit's worth is the base times the worth of the digit to its right. In decimal each position is 10 times the last, so 255 reads as 2x10^2 + 5x10^1 + 5x10^0, which comes to 255.

Repeatedly halve, writing down the remainder each time, then read the remainders bottom to top. The quicker method for anything that is not tiny is to subtract the largest power of two that fits and keep going: 200 is 128 + 64 + 8, so bits 7, 6 and 3 are set and the answer is 11001000. Worth knowing where the boundaries are, because they are the ones that break things: 255 is the largest unsigned byte, 65,535 the largest unsigned 16-bit value, and 2,147,483,647 the largest signed 32-bit integer, the number that ended Gangnam Style's view counter.

Grouped for reading, that is 1111 1111 in binary and ff in hex. Binary is read in nibbles of four because each nibble is exactly one hex digit; hex is read in pairs because each pair is one byte.

One limit worth knowing about converters generally. A value above 2^53 cannot be held exactly in a floating-point number, and most online converters are built on them, so a 64-bit hash or identifier comes back with its last digits silently wrong. This converter uses arbitrary-precision integers, so the conversion is exact at any size.

Number Base Converter FAQ

What is 255 in binary?

11111111. In decimal that is 255, and in the other two bases ff and 377.

How do I convert decimal to binary by hand?

Repeatedly halve, writing down the remainder each time, then read the remainders bottom to top. The quicker method for anything that is not tiny is to subtract the largest power of two that fits and keep going: 200 is 128 + 64 + 8, so bits 7, 6 and 3 are set and the answer is 11001000. Worth knowing where the boundaries are, because they are the ones that break things: 255 is the largest unsigned byte, 65,535 the largest unsigned 16-bit value, and 2,147,483,647 the largest signed 32-bit integer, the number that ended Gangnam Style's view counter.

Why does this matter outside programming?

Mostly it does not, but two cases leak out. CSS colors are hexadecimal, so anyone adjusting a shade by hand is doing this conversion. And file permissions on any Unix machine are octal, which is why chmod takes numbers like 755.

Will this be exact for very large numbers?

Yes. The arithmetic here is arbitrary-precision, so there is no point at which digits start being approximated. Converters built on ordinary floating-point numbers lose exactness above 2^53, which 64-bit identifiers routinely exceed.

More from the Number Base Converter

Related calculators

Embed this calculator
<div id="compoundpage-number-base-converter"></div>
<script src="https://compoundpage.com/embed/number-base-converter.js" async></script>

The same calculation as JSON