Archiv verlassen und diese Seite im Standarddesign anzeigen : Byte in Bits zerlegen
Hallo!
ich hätte eine Frage. Wie zerlege ich eine variable
mit zB 1byte in 8 bit? (bitte in C)
ich muss nämlich alle bits einzeln übertragen.
Danke
i wird zerlegt:
int i=13,j;
for(j=sizeof(i)*8-1;j>=0;--j)
{
char ziffer=i&(1 << j)?'1':'0';
printf("%c", ziffer);
}
batti112
18.12.2006, 14:00
Hi!
Guck dir mal ein paar Tutorials an... das sind so Standarddinge...
An die einzelnen Bits kommst du z.B. mit nem logischen "UND".
if(BYTE & 16)
{
// vierte bit gesetzt
}
else
{
// vierte bit nicht gesetzt
}
mfg
Batti
fluchtpunkt
20.12.2006, 02:27
if(BYTE & 16)
{
// vierte bit gesetzt
}
else
{
// vierte bit nicht gesetzt
}
man sollte statt (BYTE & 16) aber besser (byte & 0x10) schreiben. Das hat den Vorteil das man auch bei einer mehr als 8Bit Zahl noch erkennen kann welche Bits gesetzt sind.
Bei 0x38A00CEE sieht man nach einiger Uebung recht schnell welche Bits gesetzt sind; bei 950013166 wird das eher schwieriger. Auch so ein Standardding, das man sich von Anfang an angewoehnen sollte :)
asuro_freak2
20.12.2006, 14:59
Du suchst sowas ?
http://www.fh-augsburg.de/informatik/vorlesungen/c_cplus/tutorial/cyris/c-kurs2.htm#2_varieblenzuweisung
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.