T
🗂️🧩
🔢Developer

Number Base Converter

Convert integers between bases 2 through 64, including binary, octal, decimal, hex, Base58, and Base64. Uses BigInt for unlimited precision. Shows formatted output with nibble/byte spacing.

Valid digits: 0–9

② Enter a number

= Decimal 255

③ Results
Binary (Base 2)
1111 1111
11111111
Octal (Base 8)
377
Decimal (Base 10)← input
255
Hexadecimal (Base 16)
ff
Base 31 (Base 31)
Excluded letters: A, E, I, O, U
87
Base 32 (Base 32)
Excluded letters: I, O, Q, U
7z
Base 34 (Base 34)
Excluded letters: I, O
7h
Base 36 (Base 36)
73
Examples:
Was this result accurate?

Why Computers Think in Powers, Not Digits

Every number you see on a screen exists in memory as a pattern of electrical signals — on or off, 1 or 0. That's base 2, binary. But humans find 11111111 tedious to read when they could just write 255. Base conversion lets you translate the same numerical value between these different counting systems without changing what the number actually represents.

Think of bases as different languages for the same idea. The decimal number 42 means forty-two things whether you write it as 101010 in binary, 52 in octal, or 2A in hexadecimal. The underlying quantity never changes — only the symbols used to express it. This tool handles that translation instantly for bases from 2 up to 64, using BigInt arithmetic so you can convert enormous numbers without losing precision.

The practical value shows up everywhere in programming and IT work. A web developer sees #FF5733 and needs to know that's RGB(255, 87, 51). A network admin reads an IPv6 address in hex and needs to understand what subnet they're looking at. Base conversion isn't abstract math — it's daily vocabulary for anyone working with computers.

Frequently Asked Questions

What bases are supported?

All integer bases from 2 to 64, including Binary (2), Octal (8), Decimal (10), Hexadecimal (16), Base32 (32), Base36 (36), Base58 (Bitcoin, 58), and Base64 (64).

What is hexadecimal used for?

Hex is ubiquitous in computing: memory addresses, color codes (#FF5733), byte values, hash outputs (MD5, SHA256), and CPU instruction sets.

What is the difference between Base58 and Base64?

Base58 omits visually ambiguous characters (0, O, I, l) to prevent human transcription errors. Base64 uses the full 64-character alphabet and is designed for machine-to-machine data encoding.

How Base Conversion Actually Works, With Real Numbers

Converting a number to base 10 follows a straightforward pattern: multiply each digit by its positional power, then add everything up. Take the hexadecimal number 1A3. The rightmost digit 3 sits in the ones place (16⁰), the A (which represents 10) sits in the sixteens place (16¹), and the 1 sits in the 256s place (16²). So you calculate: 1×256 + 10×16 + 3×1 = 256 + 160 + 3 = 419 in decimal.

Going the other direction requires repeated division. To convert decimal 419 back to hex, divide by 16 and track remainders. 419 ÷ 16 = 26 remainder 3. Then 26 ÷ 16 = 1 remainder 10. Finally 1 ÷ 16 = 0 remainder 1. Reading the remainders from last to first gives you 1, 10, 3 — or 1A3 in hex notation.

This tool automates both directions for any base. Converting between non-decimal bases (say, binary to hex) typically routes through base 10 internally, though hex and binary have a convenient shortcut: each hex digit maps exactly to four binary digits, which is why the tool shows nibble spacing for easier reading.

Debugging a Memory Address in an Embedded System

You're troubleshooting a microcontroller that's crashing at a specific memory location. The debugger reports the fault address as 0x0001F4A0. Your memory map documentation lists regions in decimal byte ranges. You need to figure out which memory section this address falls into.

Paste 1F4A0 into the converter with base 16 selected. The result: 128,160 in decimal. Your documentation shows that addresses 131,072 through 196,607 belong to the external RAM region, while 0 through 131,071 is internal flash. Since 128,160 falls below 131,072, you now know the crash happened in flash memory — probably a code execution issue rather than a data corruption problem.

This kind of quick translation saves significant debugging time. Rather than manually calculating powers of 16 or trusting a rough estimate, you get the exact decimal value in seconds. The same workflow applies when reading packet captures, analyzing log files, or cross-referencing hardware datasheets that mix notation styles.

Base58 for Clean Addresses and Base64 for Data Encoding

Bitcoin addresses use Base58 encoding specifically because it excludes characters that look alike: zero and uppercase O, lowercase L and the number 1. This prevents expensive typos when someone hand-copies a wallet address. If you're building any system where humans will manually transcribe alphanumeric strings — gift card codes, short URLs, invoice references — Base58 is worth considering.

Base64 serves a different purpose entirely. It's designed for machines talking to machines, encoding binary data as printable ASCII characters. Email attachments, data URLs in CSS, and API authentication tokens all commonly use Base64. When you need to verify what a Base64 string actually represents, converting it to decimal (and then potentially to hex) lets you inspect the underlying bytes.

The converter also handles Base32, which appears in two-factor authentication codes like those from Google Authenticator. Understanding that your TOTP secret key is just a big number encoded for human-readable display helps when debugging authentication failures or migrating credentials between apps.

Mistakes That Produce Silently Wrong Results

The most common error is forgetting which base your input is in. Typing 100 and converting from binary gives you 4 decimal. Typing the same 100 from decimal gives you 1100100 binary. The tool can't guess your intent, so double-check the source base before converting. It sounds obvious, but this mistake wastes real debugging time when you're tired.

Another pitfall involves leading zeros. In some contexts 007 means seven, but in others (like old JavaScript) it signals octal. This tool interprets 007 in base 10 as just 7, but if you meant octal, you'd get a different decimal result. Always strip ambiguous leading zeros or explicitly verify your source base matches the format you're working with.

Finally, remember that Base58 and Base64 use specific character alphabets. A valid hex string containing the letters G or Z will fail as hex input. If you're getting unexpected errors, confirm your input string only contains characters valid for the source base — hex uses 0-9 and A-F only, while Base64 adds lowercase letters, plus, and slash.

Why Computers Think in Powers, Not Digits

Every number you see on a screen exists in memory as a pattern of electrical signals — on or off, 1 or 0. That's base 2, binary. But humans find 11111111 tedious to read when they could just write 255. Base conversion lets you translate the same numerical value between these different counting systems without changing what the number actually represents.

Think of bases as different languages for the same idea. The decimal number 42 means forty-two things whether you write it as 101010 in binary, 52 in octal, or 2A in hexadecimal. The underlying quantity never changes — only the symbols used to express it. This tool handles that translation instantly for bases from 2 up to 64, using BigInt arithmetic so you can convert enormous numbers without losing precision.

The practical value shows up everywhere in programming and IT work. A web developer sees #FF5733 and needs to know that's RGB(255, 87, 51). A network admin reads an IPv6 address in hex and needs to understand what subnet they're looking at. Base conversion isn't abstract math — it's daily vocabulary for anyone working with computers.

How Base Conversion Actually Works, With Real Numbers

Converting a number to base 10 follows a straightforward pattern: multiply each digit by its positional power, then add everything up. Take the hexadecimal number 1A3. The rightmost digit 3 sits in the ones place (16⁰), the A (which represents 10) sits in the sixteens place (16¹), and the 1 sits in the 256s place (16²). So you calculate: 1×256 + 10×16 + 3×1 = 256 + 160 + 3 = 419 in decimal.

Going the other direction requires repeated division. To convert decimal 419 back to hex, divide by 16 and track remainders. 419 ÷ 16 = 26 remainder 3. Then 26 ÷ 16 = 1 remainder 10. Finally 1 ÷ 16 = 0 remainder 1. Reading the remainders from last to first gives you 1, 10, 3 — or 1A3 in hex notation.

This tool automates both directions for any base. Converting between non-decimal bases (say, binary to hex) typically routes through base 10 internally, though hex and binary have a convenient shortcut: each hex digit maps exactly to four binary digits, which is why the tool shows nibble spacing for easier reading.

Debugging a Memory Address in an Embedded System

You're troubleshooting a microcontroller that's crashing at a specific memory location. The debugger reports the fault address as 0x0001F4A0. Your memory map documentation lists regions in decimal byte ranges. You need to figure out which memory section this address falls into.

Paste 1F4A0 into the converter with base 16 selected. The result: 128,160 in decimal. Your documentation shows that addresses 131,072 through 196,607 belong to the external RAM region, while 0 through 131,071 is internal flash. Since 128,160 falls below 131,072, you now know the crash happened in flash memory — probably a code execution issue rather than a data corruption problem.

This kind of quick translation saves significant debugging time. Rather than manually calculating powers of 16 or trusting a rough estimate, you get the exact decimal value in seconds. The same workflow applies when reading packet captures, analyzing log files, or cross-referencing hardware datasheets that mix notation styles.

Base58 for Clean Addresses and Base64 for Data Encoding

Bitcoin addresses use Base58 encoding specifically because it excludes characters that look alike: zero and uppercase O, lowercase L and the number 1. This prevents expensive typos when someone hand-copies a wallet address. If you're building any system where humans will manually transcribe alphanumeric strings — gift card codes, short URLs, invoice references — Base58 is worth considering.

Base64 serves a different purpose entirely. It's designed for machines talking to machines, encoding binary data as printable ASCII characters. Email attachments, data URLs in CSS, and API authentication tokens all commonly use Base64. When you need to verify what a Base64 string actually represents, converting it to decimal (and then potentially to hex) lets you inspect the underlying bytes.

The converter also handles Base32, which appears in two-factor authentication codes like those from Google Authenticator. Understanding that your TOTP secret key is just a big number encoded for human-readable display helps when debugging authentication failures or migrating credentials between apps.

Mistakes That Produce Silently Wrong Results

The most common error is forgetting which base your input is in. Typing 100 and converting from binary gives you 4 decimal. Typing the same 100 from decimal gives you 1100100 binary. The tool can't guess your intent, so double-check the source base before converting. It sounds obvious, but this mistake wastes real debugging time when you're tired.

Another pitfall involves leading zeros. In some contexts 007 means seven, but in others (like old JavaScript) it signals octal. This tool interprets 007 in base 10 as just 7, but if you meant octal, you'd get a different decimal result. Always strip ambiguous leading zeros or explicitly verify your source base matches the format you're working with.

Finally, remember that Base58 and Base64 use specific character alphabets. A valid hex string containing the letters G or Z will fail as hex input. If you're getting unexpected errors, confirm your input string only contains characters valid for the source base — hex uses 0-9 and A-F only, while Base64 adds lowercase letters, plus, and slash.

Related Tools