WHAT IT DOES
Read the word, flip a bit, and see what it is in every other reading.
Read an integer as binary, octal, decimal, and hexadecimal across an explicit 8-, 16-, 32-, or 64-bit width. The same result exposes unsigned and two's-complement readings, big- and little-endian byte order, shifts and rotates, an optional second operand for AND, OR, and XOR, the IEEE 754 float the bits would be, and the characters they would spell. Every bit is a control: click one to flip it and the whole reading follows.
Why use it?
Use it to inspect a fixed-width word from a protocol, register, or binary file and separate its bits from their signed, unsigned, or floating-point interpretation.
How to use this tool
- Set width and signedness, enter a decimal value or prefixed bit pattern, and inspect it.
- For example, 0xff at 8 bits reads as unsigned 255 and signed -1. At a larger width the same written value no longer has its sign bit set.
- Review byte order separately from numeric value; use bit toggles or the optional operand to investigate masks and operations.
- A float reading reinterprets the same bits at 32 or 64 bits. It does not numerically convert the integer into a floating-point value.
Details and limitations
- A 0b, 0o, or 0x prefix marks input as a bit pattern, while unprefixed decimal input is range-checked using the selected signedness.
- All calculations use BigInt so 64-bit values remain exact instead of passing through JavaScript's limited floating-point integer range.
- Endianness reorders bytes only; it does not reverse individual bits or change the underlying numeric bit pattern.
- The bit grid is drawn from the value in the field, and flipping a cell writes the whole word back into that field as hex, so the value stays copyable, editable, and undoable rather than living somewhere the grid alone knows about.
- Both right shifts are shown because they differ: the logical shift brings in zeros and the arithmetic one carries the sign, and which of the two a language gives you depends on the type rather than the operator. Shift and rotate amounts are taken modulo the selected width.
- The float reading interprets the same bits as IEEE 754 binary32 or binary64 and is offered only at those two widths. The byte-swapped value is shown beside it, because a float read from the wrong end is not visibly wrong, only different.
- Changing width, signedness, byte order, or a bit recalculates a reading that is already on screen. Before the first run those controls only set the tool up, and none of them counts as another use of it.