*
L 16 //16 bits hat ein INT
next: T #iLoopCount //in Schleifenzähler laden
L #iInput //die eine INT-Zahl
L W#16#1 //mit einer 0000 0000 0000 0001
UW //UND-Verknüpfen
L 0 //auf 0
==I //vergleichen
SPBN bit //wenn nicht 0 ist ein bit gefunden wurden
L #iInput //die eine INT-Zahl
SRW 1 //um eine Stelle nach rechts
T #iInput //speichern
L #iLoopCount //Schleifenzähler
LOOP next //dekrementieren und erneut durchlaufen
SPA end //kein bit gefunden - abbruch
bit: L #iLoopCount //nach bit gefunden steht hier die position
L -1 //also fast
*I //y = -1 * x + 17
+ 17
T #iBitPosition //position speichern
end: NOP 0
Wenn ichs richtig sehe, sagt mir das Stück Programm doch nur das wieivelte BIT gerade gesetzt ist, oder?
Ich will ja speichern, in welcher Reihenfolge welche bits gesetzt werden.
Hmm... Nee.
Ich will ja speichern, in welcher Reihenfolge welche bits gesetzt werden.
ja, so hatte ich deine ausführungen da oben verstanden
die reihenfolge, also: 4,8,2,3,9,11,12 ???
und du das in einem INT ablegen
das hat nichts mit einem FIFO zu tun ... oder jedenfalls nicht direkt ...
Das kann dann dein aktueller Baustein auch nicht.
Wenn du so etwas machen willst, dann mußt du dir entweder eine Struktur bauen, die die Anzahl deiner insgesamt möglichen Bits enthält und dann daraus ein ARRAY machen (ARRAY of Struct) und dies dann als FIFO verschieben ...
oder ...
du machst ein ARRAY of INT und speicherst in jedem neuen Element nicht das echte Bit, sondern dessen Nummer und schaltest diese Nummer hinterher bei der Ausgabe ggf. in deine Maske hinein ...
Gruß
LL
Klar, kann er. So hab ich es ja gemacht. Sagte ich ja, für jedes Bit ein INT, worin ich die Position des Bits reinschreibe...
Wie komm ich eigentlich drauf, das die Werte in EIN INT passen??Passt ja hinten und vorne nicht! Egal...
Wieso? Ich denke es geht nur um Bits? Dann kann ich diese doch auf eine feste Position im Word schreiben und dieses Word dann durch das FIFO schicken. So aus dem Bauch würde ich mal schauen, ob man dafür nicht gar den SFB32 DRUM verwenden kann.
die nummerierung kommt mir auch ein bisschen spanisch vor...
Jordy schrieb:Jedem bit ist ein INT im FB zugeordnet wo drin gespeichert ist, an welcher Stelle dieses bit in der Warteschleife steht.
Sag ich doch, dreh nicht durch, dreh DRUM
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?