num-rev-byte

koadrobot/math/num-rev-byte

Convert N to rev byte for display. Out= abs(pow(2,N)-1) input is 0..7 else out is zero.
num-rev-byte
@/num-rev-byte
Convert N to rev byte for display. Out= abs(pow(2,N)-1) input is 0..7 else out is zero.
INnumber
num-rev-byte
OUT
IN
OUTbyte
To use the node in your project you should have the koadrobot/math library installed. Use the “File → Add Library” menu item in XOD IDE if you don’t have it yet. See Using libraries for more info.

C++ implementation

#pragma XOD dirtieness disable

struct State {
};

{{ GENERATED_CODE }}

void evaluate(Context ctx) 
{
    uint8_t inp = getValue<input_IN>(ctx);
    uint8_t byt = 0;

    switch (inp)
    {
        case 1 : byt = 1; break;
        case 2 : byt = 3; break;
        case 3 : byt = 7; break;
        case 4 : byt = 15;break;
        case 5 : byt = 31;break;
        case 6 : byt = 63;break;
        case 7 : byt = 127;break;
    }
    emitValue<output_OUT>(ctx, byt);
}

Tabular tests

INOUT
00
11
23
37
415
531
663
7127
80
-10