Bit Reverse C Code

人氣點閱:6730
發表人
Bit Reverse C Code 2010-10-15 13:36
/ / /

Bit-Reverse C Code



提供一下 u8 & u32 bit reverse C code

代碼:

static inline u32 u32_bit_reverse(u32 v)
{
    u32 r = v;
    int s = 31;

    for (v >>= 1; v; v >>= 1)
    {
        r <<= 1;
        r |= v & 1;
        s--;
    }
    r <<= s;
    return r;
}

static inline u8 u8_bit_reverse(u8 v)
{
    u8 r = v;
    int s = 7;

    for (v >>= 1; v; v >>= 1)
    {
        r <<= 1;
        r |= v & 1;
        s--;
    }
    r <<= s;
    return r;
}

________________

美術插畫設計案子報價系統 v0.1 Beta
爪哇禾雀
Re: Bit Reverse C Code 2010-10-15 13:37
/ / /

Bit-Reverse C Code



u16 & u64 bit reverse C code

代碼:

static inline u16 u16_bit_reverse(u16 v)
{
    u16 r = v;
    int s = 15;

    for (v >>= 1; v; v >>= 1)
    {
        r <<= 1;
        r |= v & 1;
        s--;
    }
    r <<= s;
    return r;
}

static inline u64 u64_bit_reverse(u64 v)
{
    u64 r = v;
    int s = 63;

    for (v >>= 1; v; v >>= 1)
    {
        r <<= 1;
        r |= v & 1;
        s--;
    }
    r <<= s;
    return r;
}

________________

美術插畫設計案子報價系統 v0.1 Beta
爪哇禾雀