By Talcart · Last updated July 10, 2026
Decimal Conversions
Decimal to Fraction
Convert decimal to equivalent fraction
Simplify fraction if possible
Example: 0.5 = 1/2
Decimal to Percent
Multiply decimal by 100
Add % symbol
Example: 0.25 = 25%
Fraction Conversions
Fraction to Decimal
Divide numerator by denominator
Example: 3/4 = 0.75
Fraction to Percent
Convert to decimal first
Multiply by 100
Example: 1/4 = 0.25 = 25%
Percent Conversions
Percent to Decimal
Divide by 100
Example: 75% = 0.75
Percent to Fraction
Convert to decimal first
Convert decimal to fraction
Example: 50% = 0.5 = 1/2
Roman Numeral Conversions
Basic Rules
I = 1, V = 5, X = 10, L = 50
C = 100, D = 500, M = 1000
Smaller before larger means subtract
Example: IV = 4, VI = 6
A number converter translates the same integer between number bases — binary (base 2), octal (base 8), decimal (base 10) and hexadecimal (base 16). Type 255 in decimal and it instantly shows 11111111 in binary, 377 in octal and FF in hex. The value never changes; only the digits used to write it down do.
A number converter (base converter) is a tool that rewrites an integer in a different positional numeral system, where each digit's value depends on its position. Binary uses digits 0-1, octal 0-7, decimal 0-9, and hexadecimal 0-9 plus A-F (A = 10 through F = 15). These bases matter in computing because hardware stores everything in binary, and hex and octal are compact shorthand: one hex digit encodes exactly 4 bits, one octal digit exactly 3, so the byte 10110101 is simply B5 in hex.
The converter uses positional notation: a numeral in base b equals the sum of digit × b^position, counting positions from 0 at the right. Hex 1A is 1 × 16 + 10 = 26; binary 1011 is 8 + 0 + 2 + 1 = 11. Any input is first evaluated to a plain integer this way, then re-encoded in the target base by repeatedly dividing by that base and collecting the remainders in reverse order — 26 ÷ 16 gives quotient 1 remainder 10 (A), producing 1A.
| Decimal | Binary | Octal | Hexadecimal |
|---|---|---|---|
| 1 | 1 | 1 | 1 |
| 2 | 10 | 2 | 2 |
| 4 | 100 | 4 | 4 |
| 8 | 1000 | 10 | 8 |
| 10 | 1010 | 12 | A |
| 15 | 1111 | 17 | F |
| 16 | 10000 | 20 | 10 |
| 32 | 100000 | 40 | 20 |
| 64 | 1000000 | 100 | 40 |
| 100 | 1100100 | 144 | 64 |
| 255 | 11111111 | 377 | FF |
| 256 | 100000000 | 400 | 100 |
| Scenario | Hex 1A to decimal |
| Calculation | 1×16 + 10 |
| Result | 26. |
Hex prefixes 0x and binary 0b are only display conventions — the value is the same.
Multiply each bit by its power of 2 and add the results, starting from 2^0 at the rightmost bit. Binary 1011 = 1×8 + 0×4 + 1×2 + 1×1 = 11. Binary 11111111 (eight ones) = 255, the largest value one byte can hold. The place values double leftward: 1, 2, 4, 8, 16, 32, 64, 128, and so on.
Divide the number by 2 repeatedly and read the remainders from bottom to top. For 13: 13 ÷ 2 = 6 r 1, 6 ÷ 2 = 3 r 0, 3 ÷ 2 = 1 r 1, 1 ÷ 2 = 0 r 1 — giving 1101. A faster mental method is subtracting the largest powers of 2: 13 = 8 + 4 + 1, so the 8, 4 and 1 bits are set: 1101.
Multiply each hex digit by its power of 16, remembering A = 10 through F = 15. Hex 2F = 2×16 + 15 = 47; hex FF = 15×16 + 15 = 255; hex 100 = 256. Positions are worth 1, 16, 256, 4096... moving left. Prefixes like 0x2F are just notation marking the numeral as hex — they carry no value.
Because one hex digit maps to exactly 4 binary bits, hex is a compact, lossless shorthand for binary. A byte is always two hex digits (00-FF), which is why you see hex in CSS colors (#FF5733 is three bytes: red 255, green 87, blue 51), memory addresses, MAC addresses and error codes. Reading 8 bits as "B5" is far easier than "10110101".
Octal (base 8, digits 0-7) groups binary bits in threes, and survives mainly in Unix file permissions: chmod 755 encodes rwxr-xr-x, because each octal digit packs the three read/write/execute bits for owner, group and others (7 = 4+2+1 = rwx, 5 = 4+1 = r-x). Historically octal suited 12-, 24- and 36-bit computers whose word sizes divide by 3.
255 unsigned — binary 11111111, hex FF, octal 377. A byte has 8 bits, giving 2^8 = 256 distinct values, 0 through 255. That range is why IPv4 address octets never exceed 255 and why RGB color channels run 0-255. With 16 bits the unsigned maximum is 65,535; with 32 bits it is 4,294,967,295.