Seven tools for embedded, RF, and hardware work. Pick a tab below to jump to it, or press 1–7 to switch. Click any monospace value cell to copy it.
Type an expression in decimal, hex, binary, or octal — it evaluates live and shows the result as HEX · DEC · OCT · signed i64, plus a clickable 64-bit grid. Toggle Fields to name bit ranges and decode a register layout.
| Arithmetic | + - * / % ** |
| Bitwise | & | ^ ~ << >> |
| Literals | 255 0xFF 0b1010 0o17 |
| Functions | lsr(v,n) rol(v,n) ror(v,n) |
(0x10 + 4) << 2— compute an address offset~0xF & 0xFF— clear the low nibble of a byte1 << 7 | 1 << 3— set bits 7 and 3rol(0x80000000, 1)— rotate left, watch the wrap
Enter a byte count (decimal or hex) and read it across B · KB · MB · GB · TB at once. Switch Binary (1024) vs Decimal (1000) to match datasheets vs drive specs.
0x100000— confirm a flash region is exactly 1 MiB1.5with unit GiB — see the exact byte count2048bytes — how many KiB is this DMA buffer?
Two-way conversion between frequency and period, shown in every unit. Tap a clock preset (24M, 48M, 100M…) to start, and read the ½ / ¼ period below.
- Enter
100 MHz→ period is10 ns - SPI at
8 MHz→ one bit takes125 ns - Type
1 µson the period side → that's a1 MHztick
Convert dB to/from linear power or voltage. Pick Power (×10) for dBm/watts or Voltage (×20) for dBV. The reference table is clickable.
0 dBm=1 mW;30 dBm=1 W-3 dB≈ half the power20 dBV=10 V(voltage mode)
Convert between 10–90% rise time and bandwidth using the Gaussian
(0.35 / tr) and single-pole RC (0.22 / tr) models.
1 nsrise time → ~350 MHzneeded- A
100 MHzscope resolves edges down to ~3.5 ns
Enter any two of V, I, R, P (each with its own unit) and the other two are solved instantly. Known values show blue, computed ones green.
3.3 V+10 mA→ R =330 Ω, P =33 mW5 V+220 Ω→ current and dissipation for an LED resistor
Enter a float (3.14, -1.5e-5, NaN) or a raw hex
word and see the sign / exponent / mantissa split, the category, and the exact value.
Toggle Float32 / Double64.
0x3F800000(f32) decodes to1.00.1— see why it isn't exact in binaryNaN/Infinity— inspect the special encodings