The Hidden Number Systems Behind Your Screen
Every device uses binary (1s and 0s) behind the scenes, but humans and programmers work with decimal, hexadecimal, and other bases. A number base converter translates between these systems instantly. Whether you're debugging code, reading color codes, understanding IP addresses, or working with memory addresses, you need to convert between bases smoothly without mental gymnastics.
What This Calculator Does
A number base converter translates numbers between decimal (base 10, what humans use), binary (base 2, what computers use), hexadecimal (base 16, friendly to programmers), and octal (base 8, legacy systems). Enter a number in any base and the converter displays it in all the others. No more hand calculations, memorizing conversion formulas, or second-guessing yourself.
How to Use This Calculator
Select the input base (the system your number is currently in) and enter the number. Select the output bases you want to see (or the converter shows all major bases by default). The calculator instantly displays equivalents across all systems.
Most converters clearly label binary with "0b", hexadecimal with "0x", and octal with "0o" to avoid confusion. The interface handles both uppercase and lowercase hex (A-F or a-f). Some converters let you work with large numbers (256-bit integers), while simpler versions handle basic conversions.
The best converters also show the step-by-step conversion process so you understand how the bases relate to each other.
The Formula Behind the Math
Decimal to Binary: Repeatedly divide by 2, collecting remainders bottom-up.
Example: Convert 255 to binary
255 ÷ 2 = 127 remainder 1
127 ÷ 2 = 63 remainder 1
63 ÷ 2 = 31 remainder 1
31 ÷ 2 = 15 remainder 1
15 ÷ 2 = 7 remainder 1
7 ÷ 2 = 3 remainder 1
3 ÷ 2 = 1 remainder 1
1 ÷ 2 = 0 remainder 1
Reading remainders bottom-up: 11111111 (binary)
Binary to Decimal: Multiply each digit by its power of 2, then sum.
Example: 11111111 in binary
= (1×2⁷) + (1×2⁶) + (1×2⁵) + (1×2⁴) + (1×2³) + (1×2²) + (1×2¹) + (1×2⁰)
= 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1
= 255
Decimal to Hexadecimal: Repeatedly divide by 16, using remainders 0-15 (where 10=A, 11=B, 12=C, 13=D, 14=E, 15=F).
Example: 255 to hexadecimal
255 ÷ 16 = 15 remainder 15
15 ÷ 16 = 0 remainder 15
Remainders bottom-up: FF (hexadecimal, where F = 15)
Hexadecimal to Decimal: Multiply each hex digit by its power of 16, then sum.
Example: 0xFF
= (F×16¹) + (F×16⁰)
= (15×16) + (15×1)
= 240 + 15
= 255
Key relationship: 255 decimal = 11111111 binary = 0xFF hexadecimal
All three represent the exact same number-just in different bases. This is why number base conversion is purely mechanical; the number itself doesn't change.
Octal to Decimal: Multiply each digit by its power of 8.
Example: 377 (octal)
= (3×8²) + (7×8¹) + (7×8⁰)
= (3×64) + (7×8) + (7×1)
= 192 + 56 + 7
= 255
Our calculator does all of this instantly-but now you understand exactly what it's computing.
Web Design and Color Codes
A web designer needs color code #FF6B35 (an orange) in RGB (red-green-blue) decimal values.
FF (hex) = 255 (decimal) red
6B (hex) = 107 (decimal) green
35 (hex) = 53 (decimal) blue
So the color is RGB(255, 107, 53). A number base converter makes translating color codes trivial-no more guessing or hand calculation errors.
Programming and Bit Manipulation
A programmer checks the binary representation of a number to understand bit patterns.
The number 17 (decimal) = 10001 (binary)
Only bits 0 and 4 are set (reading right to left from 0). The programmer uses this bit representation to understand flag operations, bitwise AND/OR operations, and memory layouts. A base converter displays this instantly.
IP Addresses and Network Computing
An IPv4 address like 192.168.1.1 is actually four 8-bit numbers (each 0-255 in decimal). In binary, this is:
11000000.10101000.00000001.00000001
Network engineers understand IP addresses better in binary form when analyzing subnets and CIDR notation. A number base converter handles these transformations instantly across entire addresses.
Memory Addresses in Debugging
A debugger shows a memory address as 0x7FFC0000. What is this in decimal?
7F (hex) = 127 (decimal)
FC (hex) = 252 (decimal)
00 (hex) = 0 (decimal)
00 (hex) = 0 (decimal)
Decimal: (127×16⁶) + (252×16⁴) + 0 + 0 = 2,147,450,880
Or simply: 0x7FFC0000 = 2,147,450,880 in decimal. A converter handles this instantly.
Tips and Things to Watch Out For
Hexadecimal uses A-F for 10-15. A = 10, B = 11, C = 12, D = 13, E = 14, F = 15. Both uppercase and lowercase are standard; don't let case confuse you.
Binary is verbose but simple. Binary numbers are long (255 requires 8 bits), but the logic is straightforward-each position is either 1 or 0. Hexadecimal is more compact (255 = FF) but requires understanding the A-F digits.
The 0x prefix means hexadecimal. In programming, 0x marks a hex number: 0xFF = 255, 0x10 = 16. Without the prefix, 10 means decimal ten. This notation prevents confusion.
Octal (base 8) is legacy. Modern systems rarely use octal except in Unix file permissions (e.g., chmod 755). You'll encounter it in older code or system administration, but binary and hex are far more common.
Leading zeros don't change the value. 00FF (hex) equals FF equals 255 decimal. Leading zeros are often added for fixed widths (like 32-bit numbers), but they don't alter the value.
Negative numbers require special handling. Two's complement is the standard for negative binary numbers. Most calculators handle this, but understanding it requires deeper knowledge. For simple conversions, you'll typically work with positive numbers.
Frequently Asked Questions
Why use hexadecimal instead of decimal or binary?
Hexadecimal is a sweet spot: more compact than binary (4 binary digits = 1 hex digit) but easier than decimal for programmers working with binary data. Memory addresses, color codes, and byte values all align nicely with hex.
What's two's complement for negative numbers?
It's the standard way to represent negative numbers in binary. For an 8-bit number, flip all bits and add 1. So -1 in 8-bit two's complement is 11111111 (binary). A dedicated calculator can show this, but most basic converters work with positive numbers only.
Is octal still used?
Rarely in new code, but Unix file permissions still use octal (chmod 755 means specific read/write/execute permissions). Legacy systems may also use octal. For new work, binary and hex dominate.
What's the difference between base and radix?
They're synonyms. "Base 16" and "radix 16" both refer to hexadecimal. Base is more common in everyday language; radix is more technical.
Can I convert fractional numbers (0.5, 0.75)?
Yes, but it's more complex. A full base converter handles this by converting the integer and fractional parts separately. Most basic converters focus on integers; fractions require more advanced tools.
How many bits do I need for a number?
A number N requires ⌈log₂(N)⌉ bits. For practical purposes: 1-255 needs 8 bits, 256-65,535 needs 16 bits, 65,536+ needs 32 bits or more. A converter can show this if you know the answer already, but calculating it requires logarithms.
Why is the number still the same in different bases?
Because bases are just different ways of writing the same value. 255 decimal = 0xFF hex = 11111111 binary. They all represent the exact same quantity-the representation changes, not the number itself.
Related Calculators
The modulo calculator helps with remainder operations that underlie base conversions. The percentage calculator handles proportional relationships similar to base relationships. For working with large binary numbers, the scientific notation calculator makes representing huge values manageable.