Convert numbers between binary, octal, decimal, hexadecimal, and custom bases.
As a developer, I constantly switch between number bases. Reading memory addresses in hex, debugging bit flags in binary, dealing with file permissions in octal - it never ends. I got tired of mental math and scattered online tools, so I built this one converter that handles everything.
The key feature? BigInt support. Most converters break when you throw a 64-bit value at them. This one handles arbitrarily large numbers without losing precision. Plus, I added two's complement display because that's what you actually need when debugging signed integers.
I also added bit grouping for binary output because reading 32 ones and zeros without spacing is just painful. The 4-bit and 8-bit groupings make patterns much easier to spot.
Hex maps perfectly to binary - each hex digit represents exactly 4 bits. So 0xFF is immediately recognizable as 8 bits all set (11111111). Try doing that mental conversion with 255. Hex is also much more compact for large values: a 32-bit max value is FFFFFFFF in hex vs 4294967295 in decimal.
Two's complement is how computers represent signed integers in binary. For positive numbers, it's just the regular binary. For negative numbers, you invert all bits and add 1. This makes hardware addition work correctly for both positive and negative numbers. For example, -1 in 8-bit two's complement is 11111111.
Base 36 uses all digits (0-9) and letters (A-Z), giving you the most compact alphanumeric representation of a number. It's commonly used for short URLs, unique IDs, and anywhere you need to encode a large number in minimal characters while staying readable.
Just enter the number with a minus sign (e.g., -42). The converter will show the negative representation in all bases. For binary, it also displays the two's complement representation in 8-bit, 16-bit, and 32-bit formats, which is what you'll actually see in memory dumps and debuggers.