Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 4 von 4

Thema: Bits in temporäres Byte mappen und gesetzte Bits zählen

  1. #1
    yetibrain Gast

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    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
    Zitieren Zitieren Gelöst: Bits in temporäres Byte mappen und gesetzte Bits zählen  

  2. "Hallo,
    habe nicht getestet, aber so sollte es gehen:

    Code:
          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"


  3. #2
    Registriert seit
    23.11.2004
    Beiträge
    347
    Danke
    2
    Erhielt 28 Danke für 28 Beiträge

    Standard

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

    Code:
          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

  4. #3
    yetibrain Gast

    Standard

    Danke raika !

  5. #4
    Registriert seit
    16.06.2003
    Ort
    88356 Ostrach
    Beiträge
    4.812
    Danke
    1.231
    Erhielt 1.101 Danke für 527 Beiträge

    Standard


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

Ähnliche Themen

  1. Byte im DB in Bits auflösen
    Von SIMREU im Forum Simatic
    Antworten: 26
    Letzter Beitrag: 11.03.2016, 09:58
  2. bits sammeln und dezimal zählen
    Von Anonymous im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 05.02.2016, 14:11
  3. Bits in Byte setzen
    Von bass im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 14.07.2011, 14:42
  4. Bits im DB 42 zählen
    Von tanja im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 24.07.2007, 17:28
  5. Bits aus Byte
    Von Reto im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 30.01.2007, 23:53

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •