Bit Field Value → C Macro
embedcalc_bitfield_macroDecompose a 32-bit hex value into set bits and generate a C macro with OR'd bit shifts, plus decimal, binary, and popcount views.
Instructions
Decompose a 32-bit register value into set bits and generate a C macro of OR'd (1U << n) terms, plus decimal/binary/popcount views.
Args:
value_hex (string): 32-bit value, e.g. '0x8001'.
macro_name (string, optional): default 'REG_VAL'.
Returns (structured): { dec, hex, bin, ones_count, c_macro }. Example: '0x8001' -> #define REG_VAL ((1U << 0) | (1U << 15)), 2 bits set.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| value_hex | Yes | 32-bit register value in hex | |
| macro_name | No | C macro name (default REG_VAL) |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| bin | Yes | ||
| dec | Yes | ||
| hex | Yes | ||
| c_macro | Yes | ||
| ones_count | Yes |