PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 160 Bits in array adressieren - jmd ne idee?



sebastian.heyn
22.11.2005, 09:21
Hallo,
ich habe 160 bits, die einzeln jederzeit dressierbar sein sollen. bit array geht ja nicht und ich will nicht bytes (20bytes) nehmen, weil ich dann wieder mit ner if anweisung drumrum programmieren muss.. Gibt es eine andre möglichkeit 160 bits in ner art array abzulegen?

Rage_Empire
22.11.2005, 09:45
Hatte mal ähnliches mit 1024Bits vor. Habs aber nie hinbekommen.

sebastian.heyn
22.11.2005, 09:47
machs jetzt erstmal mit bytes... bis sich ne bessere variante anbietet

Rage_Empire
22.11.2005, 09:49
So hab ichs dann auch gemacht ;-)

PicNick
22.11.2005, 09:54
Das mit dem "IF" versteh' ich nicht ganz. Ich würde:


DIM array(20) as byte
dim byteidx as byte
dim bitnr as byte

dim given_bitnummer as byte ' input: 0 - 159

byteidx = given_bitnummer / 8 ' bytenummer 0-19
incr byteidx ' index 1-20
bitnr = given_bitnummer AND &H07
xxx = array(byteidx).bitnr ' das ergebnis bit



Schreit aber irgendwie nach ein paar assembler-statements, da kann man die bitnummer besser zerlegen.

PicNick
22.11.2005, 09:58
Ach ja, wenn die "Input" bitnummer von 1-160 geht, mußt du zuerst eins abziehen