Bitmuster aufteilen

OP #1495499
Lesenswert?

Hi

Ich möchte gern ein Bitmuster aufteilen um mit jedem Bit einzeln etwas 
zu machen

zB 01100110

zu 0, 1, 1, 0, 0, 1, 1, 0

mein Code funktioniert so nicht..
1
void bit(uint16_t x){
2
    machewasmitbit( x );
3
}
4

5
void bitmuster( uint16_t *y ) {
6
    while (*y) {
7
       bit(*y);
8
       y++;
9
    }
10
}
11

12
int main( void )
13
{
14
    bitmuster( 01100110 );
15
 
16
    return 0;
17
}
OP #1505791
Lesenswert?

Habe es jetzt so gelöst:
1
void bitfkt(uint8_t x)
2
{
3
    if( x == 0)
4
    {
5
        machewasmitbit_0( x );
6
    }
7
    if( x > 0 )
8
    {
9
        machewasmitbit_1( x );
10
    }
11
}
12

13
int main( void )
14
{
15

16
    uint8_t bitmuster = 0b10100110;
17
    uint8_t vergleich =  0b10000000;
18

19
    for(int i=1; i<=8; i++)
20
    {
21
        bit = bitmuster & vergleich;
22
        bitfkt( bit );
23
        bitmuster = bitmuster << 1;
24
    }
25

26
}

mfg

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren