Base Converter
Converts numbers between binary, octal, decimal, hexadecimal and any base from 2 to 36.
Source base
—
—
—
When to use each base
| Base | Example | Where it's used |
|---|---|---|
| Binary | 11111111 | Bit level — logical operations (AND/OR/XOR), bitmasks, network protocols |
| Octal | 377 | Unix/Linux file permissions (chmod), some legacy protocols |
| Decimal | 255 | Everyday use — the base humans read naturally |
| Hexadecimal | ff | Memory addresses, colors (#RRGGBB), hashes/checksums, binary dumps |
What is positional notation
Any integer can be written in any base — the difference between binary, octal, decimal, and hexadecimal isn't the value itself, only how many symbols each position can hold before "rolling over" to the next digit (2 in binary, 8 in octal, 10 in decimal, 16 in hexadecimal — and so on up to 36, using 0-9 and then a-z). 255 in decimal is exactly the same number as 11111111 in binary, 377 in octal, and ff in hexadecimal — only the representation changes, never the quantity it represents.
Limitations
This tool only works with integers — no decimals/floating point. Negative numbers use sign and magnitude (a "-" in front, the rest converted normally), not two's complement: "-101" in binary means "minus five", never the fixed-width bit representation programming languages use internally for negative numbers (that's a different question — "how does -1 look as an 8-bit integer?" — which depends on picking a fixed width, and this tool doesn't assume one).
Frequently asked questions
This tool uses sign and magnitude (a "-" in front of the converted absolute value), not two's complement. Two's complement depends on picking a fixed bit width (8, 16, 32...) before computing the representation — a decision this tool doesn't make for you, since the same -5 would look different in 8 bits, 16 bits, or 32 bits.
For consistency with the rest of Nexinon — Hash Generator and UUID Generator already display hexadecimal in lowercase everywhere. Input accepts either case with no difference ("ff" and "FF" are the same value).
Yes — the tool uses BigInt internally, which represents integers with exact precision and no practical size limit. This matters starting at 2^53: beyond that, JavaScript's Number type (and several other languages) starts silently losing precision, which would be a real problem for someone pasting, say, a large hash or ID in hexadecimal.
Besides Binary/Octal/Decimal/Hexadecimal, you can pick any base between 2 and 36 by selecting "Other" — useful for cases like base36 or base62, common in URL shorteners and short ID generation. The alphabet used is always 0-9 followed by a-z, in order.
Each base only accepts a specific digit alphabet (for example, only 0 and 1 in binary) — instead of letting you type something invalid and warning afterward, the tool discards the out-of-alphabet character at the moment it would have been typed. This avoids interrupting typing with an error message for something already auto-corrected.
No — this tool only converts integers. Floating point in bases other than 10 is a considerably harder problem (even the notion of "exact decimal places" changes from base to base) and was left out of this version's scope.
Nexinon Principles
Privacy
Your data never leaves your browser.No account needed
Use it now, no account or password.Free
No usage limits, no paid plan.Trustworthy content
Full explanation behind every tool, not just the result.