🔢 Binary to Decimal Converter

🔄
🔢
📏
📝
Bits: {{ bitCount }} Value range: {{ getValueRange() }}
💡
📤
{{ output ||'Result will appear here...' }}
🔍
Position Bit Value Decimal
{{ bit.position }} {{ bit.bit }} {{ bit.value }} {{ bit.decimal }}
... and {{ bitBreakdown.length - 20 }} more bits
📖
Powers of 2:
2⁰ = 1
2¹ = 2
2² = 4
2³ = 8
2⁴ = 16
2⁵ = 32
2⁶ = 64
2⁷ = 128
Common Values:
0 = 0
1 = 1
10 = 2
100 = 4
1000 = 8
10000 = 16
11111111 = 255
10000000 = 128
Two's Complement ({{ bitWidth }}-bit):
Max positive: {{ getMaxPositive() }}
Max negative: {{ getMaxNegative() }}
⚠️ {{ error }}

ℹ️ About Binary to Decimal Converter

Binary to decimal conversion translates numbers between base-2 notation and the everyday base-10 decimal system. In binary, each bit is weighted by a power of 2: 1010 means 1*8 + 0*4 + 1*2 + 0*1 = 10. Digits after a binary point use negative powers of 2, so 0.101 is 1/2 + 0/4 + 1/8 = 0.625.

Use cases:

  • Check bit masks, feature flags, permissions, and low-level constants while programming.
  • Read register values, protocol fields, packet examples, and digital electronics worksheets.
  • Convert binary subnet, address, or storage examples into decimal values for documentation.
  • Compare unsigned values with signed two's-complement interpretations during debugging.

Technical details: Binary input accepts 0 and 1 digits, with an optional binary point when fractional values are enabled. Decimal input accepts ordinary signed decimal numbers, and the result updates as you type. Unsigned mode treats the bits as a non-negative magnitude. Signed mode uses two's-complement interpretation for fixed 8-, 16-, 32-, or 64-bit integers, matching the style used by common CPU and language specifications such as the Intel 64 and IA-32 manuals and the Java Language Specification.

Examples: 1010 converts to 10, 11111111 converts to 255 as unsigned 8-bit data, and the same 11111111 converts to -1 when interpreted as an 8-bit signed two's-complement value. In the other direction, 42 converts to 101010, and -1 in signed 8-bit mode converts to 11111111.

Signed, unsigned, and fractional limits: The same bit pattern can mean different numbers depending on whether you choose unsigned or signed mode, so select the interpretation that matches the system you are checking. For signed binary-to-decimal work, pad the value to the selected width when the sign bit matters. Decimal-to-binary fractional output is a positional binary fraction and is limited to 20 fractional bits; it is not an IEEE 754 floating-point encoder.

Privacy note: The interactive converter runs in your browser for quick local conversions. If you use the public API example instead, the submitted value is sent to the server, so avoid sending secrets, private memory dumps, or proprietary protocol data.

API Usage Example:

POST /api/tools/conversion/binary-decimal
Content-Type: application/json

{
    "mode": "binary-to-decimal",
    "input": "1010",
    "numberType": "unsigned",
    "bitWidth": 8,
    "allowFractional": false
}
Ready