What Is a "Base"?
The base of a number system tells you how many unique digits it uses before rolling over to the next place value. Our everyday system is base 10 (decimal) — it has 10 digits: 0 through 9. When you run out of single digits, you move to the next column (ones → tens → hundreds...).
Binary is base 2 — only two digits: 0 and 1. Hex is base 16 — sixteen symbols: 0-9 plus A-F. Same logic, different column sizes.
The Four Main Number Systems
| Name | Base | Digits Used | Common Use |
|---|---|---|---|
| Decimal | 10 | 0–9 | Everyday math |
| Binary | 2 | 0, 1 | Computer hardware, logic circuits |
| Octal | 8 | 0–7 | Unix file permissions, some legacy systems |
| Hexadecimal | 16 | 0–9, A–F | Colors in web design, memory addresses, debugging |
Binary — Base 2
Computers use binary because transistors (the basic building blocks of all digital hardware) have two states: on (1) and off (0). Every piece of data your computer processes is ultimately represented as a sequence of 0s and 1s.
Each digit in a binary number is called a bit. The columns represent powers of 2 (not powers of 10 like in decimal).
Binary place values: ... 8 4 2 1
Binary 1011 = (1×8) + (0×4) + (1×2) + (1×1)
= 8 + 0 + 2 + 1 = 11 in decimal
Decimal to Binary Conversion
The easiest method: repeatedly divide by 2, writing down the remainder each time. Read the remainders bottom to top.
25 ÷ 2 = 12 remainder 1
12 ÷ 2 = 6 remainder 0
6 ÷ 2 = 3 remainder 0
3 ÷ 2 = 1 remainder 1
1 ÷ 2 = 0 remainder 1
Read bottom to top: 11001
Check: 16 + 8 + 0 + 0 + 1 = 25 ✓
Hexadecimal — Base 16
Hex needs 16 symbols but we only have 10 digits (0-9). So letters A-F fill in for values 10-15:
| Decimal | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|
| Hex | A | B | C | D | E | F |
In hex, each column is a power of 16 (1, 16, 256, 4096...).
Hex FF = (15 × 16) + (15 × 1) = 240 + 15 = 255
Why is FF = 255 significant? Because 255 is the maximum value that fits in one byte (8 bits), which is why RGB color values go from 0 to 255. In web design, #FF0000 means red at full intensity, green at zero, blue at zero — pure red.
Hexadecimal to Decimal
3 × 16² + A × 16¹ + 7 × 16⁰
= 3 × 256 + 10 × 16 + 7 × 1
= 768 + 160 + 7
= 935
Binary to Hexadecimal (The Fast Way)
One hex digit always represents exactly 4 binary digits (called a nibble). This makes converting between them extremely convenient — no arithmetic needed, just look up the 4-bit groups.
| Binary | Hex | Decimal |
|---|---|---|
| 0000 | 0 | 0 |
| 0001 | 1 | 1 |
| 0100 | 4 | 4 |
| 1000 | 8 | 8 |
| 1010 | A | 10 |
| 1111 | F | 15 |
Split into groups of 4: 1101 0110
1101 = 13 = D
0110 = 6
Result: D6
This is exactly why programmers prefer hex over long strings of binary — D6 is a lot easier to read and type than 11010110, and they represent the same value.
Octal — Base 8
Octal uses digits 0-7. Each column is a power of 8. It was popular in older computing systems and is still used for Unix/Linux file permissions.
Unix file permissions like chmod 755 use octal — 7 means full permissions (rwx = 4+2+1), 5 means read + execute (4+1). If you've ever set file permissions on a server, you've been using octal.
Quick Conversion Reference
| Decimal | Binary | Octal | Hex |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 8 | 1000 | 10 | 8 |
| 10 | 1010 | 12 | A |
| 16 | 10000 | 20 | 10 |
| 32 | 100000 | 40 | 20 |
| 64 | 1000000 | 100 | 40 |
| 255 | 11111111 | 377 | FF |
Using the Base Converter
Converting between these systems by hand is fine for learning, but for practical work the SolveCalc base converter converts between decimal, binary, octal, and hex instantly. Just enter the number and the base you're converting from.
Conclusion
All number systems work on the same fundamental principle — place value and a fixed base. Once you understand that each column represents the next power of the base, you can work in any of them. Binary is the language of hardware, hex is the shorthand for binary that humans can actually read, decimal is what your brain uses naturally, and octal shows up in specific system contexts. The most useful pair to know is binary-to-hex (because of the clean 4-bit = 1 hex digit relationship), and if you do any web or systems work you'll use it regularly.