Hex, decimal, octal & binary converter
Convert a value between binary, octal, decimal and hexadecimal — with an ASCII character view when the value is a printable byte.
Enter a value
Results
Binary
base 2
Octal
base 8
Decimal
base 10
Hexadecimal
base 16
ASCII
character view
About radix notation
Firmware registers, memory addresses and I²C/SPI opcodes are usually written in hex, while ADC counts and timer reload values are binary. The converter detects 0x / 0b / 0o prefixes and lets the prefix set the base, so pasting a value straight from a datasheet or register map works no matter which radix the selector holds. BigInt keeps 64-bit register values exact — no double-precision rounding above 2⁵³. Byte and word boundaries still matter, so keep the register width in mind when converting.
Browse related parts:
Frequently asked questions
How do I convert decimal to hex, binary and octal?
Pick the input radix or let the tool strip the prefix, and every base is shown at once: decimal 63 is 0x3f, 0o77 and 0b111111. Negative values keep the sign and convert the magnitude, so -0x0a reads back as -10 decimal.
What is 0x3f in decimal?
0x3f = 3×16 + 15 = 63. It is the ASCII code for the question mark, and 0x3f is also the common I²C address mask. The tool shows the character view automatically when the value lands in the printable ASCII range 32–126.
Why do registers use hexadecimal?
One hex digit maps to exactly four binary bits, so a byte is two hex digits and a 32-bit register is eight. That makes hex the natural notation for memory addresses, register maps and opcodes — and why the converter keeps bit and byte views side by side.
ICBOMS provides this tool for reference only.