# Bits in temporäres Byte mappen und gesetzte Bits zählen



## yetibrain (16 Februar 2005)

Hallo Forum,

ich habe 6 bits in einem DB und möchte diese auf ein byte mappen und dann zählen wieviele bits gesetzt sind. Wie geht das mit Step7 einfach und performant? Bin für jeden Tipp dankbar.

yb


----------



## RaiKa (17 Februar 2005)

Hallo, 
habe nicht getestet, aber so sollte es gehen:


```
U     DB22.DBX    2.3
      =     M    200.0
      U     DB22.DBX    3.6
      =     M    200.1
// ...

      L     0
      T     MB   201                    // Zähler auf Null

zyk:  L     MB   200
      SRW   1
      T     MB   200
      SPZ   null                        // Springe, wenn 0 rausgeschoben
      L     MB   201                    // Zähler erhöhen, wenn 1 rausgeschoben
      +     1
      T     MB   201                    // Anzahl "1" im MB 200
null: L     MB   200                    // wenn nicht alle its 0, dann weiterschieben
      L     0
      ==I   
      SPBN  zyk
```
Gruß
raika


----------



## yetibrain (18 Februar 2005)

Danke raika !


----------



## Markus (19 Februar 2005)

mit dem befehlt "RLDA" (Rotiere Akku 1 links über A1-Anzeige (32 Bit))
bzw "RRDA" kann man das sicher auch elegent lösen...


----------

