Convert hexadecimal to binary (hex to binary) as you type, with every step shown. This free online converter gives exact results for numbers of any size, and nothing you type leaves your browser.
1 Enter your value
From
To
0x
Examples
2 Your answer
Decimal
dec
Show in other bases
Tap any value to copy it.
See the working
Guide
How it works
Three steps, whether you are reading a memory address, a bit flag or a byte value.
1
Choose what to convert
Pick what you have and what you want: decimal, hexadecimal, binary or octal.
2
Type or paste a value
Write it however you like: 65,535, 0xFF, FFh, with commas, spaces or underscores.
3
Read the answer
It appears as you type, in every other base, with the working shown.
The formulas
A digit's value depends on its position. Every answer here uses one of these rules:
Hexadecimal to binary
each hexadecimal digit = 4 binary bits
0x1A3 is 1 → 0001, A → 1010, 3 → 0011, so 0x1A3 is 0001 1010 0011.
Binary to hexadecimal
group the bits in fours from the right
0b110100011 → 0001 1010 0011 → 1, A, 3, so 0b110100011 is 0x1A3.
Hexadecimal to decimal
decimal = Σ digit × 16position
0x1A3 is 1 × 256 + 10 × 16 + 3 × 1 = 419, so the answer checks out.
Decimal to hexadecimal digit chart
The decimal values 0 to 15 are the single hexadecimal digits 0 to F. Click one to add it to the converter.
All conversions
Decimal, hexadecimal, binary and octal converter
One free tool for every direction. Use it as a decimal to hexadecimal converter, convert decimal to binary or octal, or work backwards as a hexadecimal to decimal converter that turns 0x to decimal values. It also converts hexadecimal to binary, binary to hexadecimal and octal to decimal, so it works as a full number base converter and hexadecimal calculator. Pick a conversion to start.
Each hexadecimal digit stands for exactly 4 binary bits. Replace every hexadecimal digit with its 4-bit group.
Join the groups together and drop any leading zeros.
Worked example
0x1A3 → 0001 1010 0011
= 0b110100011
Hexadecimal to Binary conversion table
Use this hexadecimal to binary table as a quick hexadecimal to binary chart for common values, from 0 to 65,535.
Hexadecimal
Binary
0
0
1
1
2
10
3
11
4
100
5
101
6
110
7
111
8
1000
9
1001
A
1010
B
1011
C
1100
D
1101
E
1110
F
1111
10
1 0000
20
10 0000
40
100 0000
64
110 0100
7F
111 1111
80
1000 0000
FF
1111 1111
100
1 0000 0000
200
10 0000 0000
3E8
11 1110 1000
400
100 0000 0000
1000
1 0000 0000 0000
FFFF
1111 1111 1111 1111
Help
Questions
Quick answers to what people most often ask about hexadecimal, decimal and binary.
01How do I convert hexadecimal to binary?
Each hexadecimal digit stands for exactly 4 binary bits. Replace every hexadecimal digit with its 4-bit group. Join the groups together and drop any leading zeros.
02What is FF in binary?
0xFF in hexadecimal is 0b11111111 in binary (255 in decimal). Type FF into the converter above to see every step.
03What is 400 in binary?
0x400 in hexadecimal is 0b10000000000 in binary (1,024 in decimal).
04What is 10 in binary?
0x10 in hexadecimal is 0b10000 in binary (16 in decimal). That is why 0x10 means sixteen, not ten.
05What is FFFF in binary?
0xFFFF in hexadecimal is 0b1111111111111111 in binary (65,535 in decimal). It is the largest unsigned 16-bit number.
06What is 7FFFFFFF in binary?
0x7FFFFFFF in hexadecimal is 0b1111111111111111111111111111111 in binary (2,147,483,647 in decimal). It is the largest signed 32-bit integer.
07Why is one hexadecimal digit exactly four binary bits?
Because 16 = 2⁴. Four bits can hold 16 different values, 0000 to 1111, which is exactly the range of one hexadecimal digit, 0 to F. That is why hexadecimal is used as shorthand for binary: 0xFF is 1111 1111.
08How do I convert hexadecimal to binary in Excel?
Use the HEX2BIN function: =HEX2BIN("FF") returns 11111111. It works the same way in Google Sheets. These functions only handle up to 10 input characters, and the binary ones only −512 to 511, so use this converter for larger numbers.
09How do I convert hexadecimal to binary in Python or JavaScript?
In Python, bin(int('FF', 16)) returns '0b11111111'. In JavaScript, parseInt('FF', 16).toString(2) returns '11111111'. Python handles any size; in JavaScript use BigInt for numbers above 2⁵³.
10Does the converter use two’s complement for negative numbers?
No. It keeps the minus sign, so −255 is −0xFF, −0b11111111 and −0o377. Computers usually store negative numbers in two’s complement, where the pattern depends on the width: −1 is 1111 1111 (0xFF) in 8 bits and 0xFFFF in 16 bits. To read a signed value whose top bit is set, subtract 2ⁿ: 0xFF as a signed 8-bit number is 255 − 256 = −1.
11Can I convert hexadecimal numbers with a fractional part?
The converter works with whole numbers. By hand, convert the fractional part by multiplying it by the target base again and again and keeping the whole-number part each time. For example, 0.5 × 16 = 8, so 0.5 is 0x0.8 in hexadecimal, 0b0.1 in binary and 0o0.4 in octal.
12How many hexadecimal digits are in a byte?
Two. One hexadecimal digit is 4 bits, so a byte (8 bits) is two digits, from 00 to FF (0 to 255). A 16-bit number is 4 digits, a 32-bit number is 8 and a 64-bit number is 16.
13Is there a limit to how big a hexadecimal number can be?
No. The converter uses exact whole-number arithmetic, so 64-bit, 128-bit and longer hexadecimal values convert to binary with every digit correct, with no rounding.
14What does “hex to bin” mean?
“hex to bin” is short for hexadecimal to binary, which means going from base 16 to base 2: a number written in base 16 is rewritten in base 2. For example, 0xFF becomes 0b11111111.
15Does this hexadecimal to binary calculator show the working?
Yes. It converts hexadecimal to binary with steps: open “See the working” under the answer to see each digit multiplied by its power of 16, then the result written in binary. Every answer is also shown in decimal, hexadecimal, binary and octal at once.
16Is this hexadecimal to binary converter free?
Yes. It is free with no sign-up, works online on phones, tablets and computers, and every hexadecimal to binary conversion runs in your browser, so nothing you type is sent anywhere.