Einzelnen Beitrag anzeigen

markusj

Registriert seit: 9. Dez 2005
Ort: Kandel
408 Beiträge
 
#14

Re: Arrays gezielt über Grenzen hinaus beschreiben

  Alt 2. Okt 2008, 22:55
Zitat von Dax:
Zitat von markusj:
Im übrigen müsstest du "einfach" nur hallo[stelle>>3] |= (a << (stelle++)%8) zuweisen, wenn ich dein Problem richtig verstanden habe.
Ersterer Teil greift auf das Element "stelle mod 8" zu, zweiterer schiebt das Bit dann zum Rest.
Das wäre zwar möglich, aber da Divisionen viele Zyklen kosten (und davon ne Menge), wäre dort eher ein & 7 angebracht. Allerdings wird dabei der Speicher auf Bytes heruntergebrochen statt auf machine words, was wieder zu Geschwindigkeitsverluste führt... Der Weg über (unsigned) longs und etwas Vertrauen in die CF-Unit des Compilers dürften da schon mehr wirken
Ich programmiere C nur auf Atmel AVRs, daher die Denkweise ... bei nem 8-Bit RISC ist ein Byte das machine word

mfG
Markus
Markus
  Mit Zitat antworten Zitat