[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y ] [Search | Free Show | Home]

Is there an easy way to build an interleaver in an 8 bit microcontroller,

This is a blue board which means that it's for everybody (Safe For Work content only). If you see any adult content, please report it.

Thread replies: 4
Thread images: 1

File: img004.gif (9KB, 640x480px) Image search: [Google]
img004.gif
9KB, 640x480px
Is there an easy way to build an interleaver in an 8 bit microcontroller, or do I have to "pick up" every single bit in a data block and place it into another position?
>>
>>61754011
Depends on how many bytes do you want to interleave. CPU cores usually don't allow you to use a quick way to do it unless they have built-in dedicated interleavers using CPU registers.

But if is 2 bytes you can try with an array.
void interleave(byte* input, byte* output)
{
const byte ntable[] = {
0b00000000,
0b00000001,
0b00000100,
0b00000101,
0b00010000,
0b00010001,
0b00010100,
0b00010101,
0b01000000,
0b01000001,
0b01000100,
0b01000101,
0b01010000,
0b01010001,
0b01010100,
0b01010101
};

byte nibble[4];
nibble[0] = input[0] & 0x0f;
nibble[1] = input[0] >> 4;
nibble[2] = input[1] & 0x0f;
nibble[3] = input[1] >> 4;

output[0] = (ntable[nibble[1]] << 1) | ntable[nibble[0]];
output[1] = (ntable[nibble[3]] << 1) | ntable[nibble[2]];
}
>>
>>61754196
Thanks. It's 250 bytes though, so I guess I better start typing shit.
>>
>>61754228
This technique works better on 32-bit microcontrollers though.
Thread posts: 4
Thread images: 1


[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y] [Search | Top | Home]

I'm aware that Imgur.com will stop allowing adult images since 15th of May. I'm taking actions to backup as much data as possible.
Read more on this topic here - https://archived.moe/talk/thread/1694/


If you need a post removed click on it's [Report] button and follow the instruction.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com.
If you like this website please support us by donating with Bitcoins at 16mKtbZiwW52BLkibtCr8jUg2KVUMTxVQ5
All trademarks and copyrights on this page are owned by their respective parties.
Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
This is a 4chan archive - all of the content originated from that site.
This means that RandomArchive shows their content, archived.
If you need information for a Poster - contact them.