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

Ergebnis 1 bis 7 von 7

Thema: MW Vergleichen

  1. #1
    Registriert seit
    23.10.2007
    Ort
    Hamburg
    Beiträge
    5
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Beitrag


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo allerseits,

    Ich habe folgende Probleme, Ich möchte ein MW 54 mit ein #HilfMW 1 vergleichen aber bitweise dh:

    der MW 54 hat 16bit und ich möchte aber die bits 1,2 und 3 mit mein #HilfMW vergleichen wobei ich in der HilfMW den Inhalt selbst bestimme zB. HilfMW = 0011 1101.....

    wie Kann ich denn die Beide MW bitweise vergleichen ?
    Zitieren Zitieren MW Vergleichen  

  2. #2
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Soll nur ein Unterschied oder Gleichheit rauskommen oder sind nicht alle Bits zu vergleichen? Oder wird bei jedem Bit, z.B. wenn unterschiedlich, etwas anderes ausgeführt?
    Ansonsten eignet sich auch für Bitvergleiche die XOR-Verknüpfung. Bei Gleichheit ist das Ergebnis 0, bei Ungleichheit ist es 1.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  3. #3
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.712
    Danke
    398
    Erhielt 2.398 Danke für 1.998 Beiträge

    Standard

    Hallo,
    so wie ich es verstanden habe heißt das Zauberwort "maskieren" ...
    Ich würde es also so machen :
    Code:
    L  MW 54
    L  Vergleichswort
    UW
    L  Vergleichswort
    ==I
    =  M "Bits stimmen überein"

  4. #4
    bigannang ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    23.10.2007
    Ort
    Hamburg
    Beiträge
    5
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Die Bits sollen alle nicht verglichen werden, es gibt 6 Stufe und in jeder Stufe vergleiche ich einzelnen Bits zB. in Stufe 1 vergleiche ich bit 1,2 und 3 mit dem HilfMW und dafür benutze ich in der Bibliothek Vergleicher: CMP>=I ; Wenn MW 54 bit 1,2 und 3 größer oder gleich HilfMW 0001 1111 ist dann soll der Ausgang gesetzt werden.

    Das Problem bei mir ist dass ich nicht weiss wie ich diese MW 54 schreiben soll so dass nur die Bits 1,2 und 3 verglichen werden.

  5. #5
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    @Larry:
    Stimmt meiner Meinung nach nicht ganz. Beispiel (binär) MW = 1111 HM = 1010. Das UW ergibt den HM, die beiden sind aber nicht gleich. Deshalb wird das XOW in solchen Fällen angewand. Wenn dann das Ergebnis 0 ist, sind alle Bits gleich. Die Frage ist aber, ob auf die einzelnen Bits irgendwie reagiert werden soll. Dann das XOR Bitweise durchführen.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  6. #6
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.712
    Danke
    398
    Erhielt 2.398 Danke für 1.998 Beiträge

    Standard

    ...?
    Habe ich jetzt immer noch nicht verstanden ...
    Wenn du überprüfen willst, ob im MW54 die Bits 1 - 3 gesetzt sind dann wäre die Befehlsfolge dafür :
    Code:
    L MW 54
    L 2#00001110 00000000
    UW
    L 2#00001110 00000000
    ==I
    = M "so isses"

  7. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    bigannang (23.11.2007)

  8. #7
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von bigannang Beitrag anzeigen
    Die Bits sollen alle nicht verglichen werden, es gibt 6 Stufe und in jeder Stufe vergleiche ich einzelnen Bits zB. in Stufe 1 vergleiche ich bit 1,2 und 3 mit dem HilfMW und dafür benutze ich in der Bibliothek Vergleicher: CMP>=I ; Wenn MW 54 bit 1,2 und 3 größer oder gleich HilfMW 0001 1111 ist dann soll der Ausgang gesetzt werden.

    Das Problem bei mir ist dass ich nicht weiss wie ich diese MW 54 schreiben soll so dass nur die Bits 1,2 und 3 verglichen werden.
    Haben die einzelnen Bist eine separate Bedeutung oder sind nur die Gruppen der Bits interessant? Schreib einfach mal genauer (ohne Bibliothek) was wann passieren soll. Das Zauberwort heißt wirklich maskieren.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

Ähnliche Themen

  1. String vergleichen
    Von Bensen83 im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 14.07.2015, 10:52
  2. 2 DBs vergleichen?
    Von SebastianSPS im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 26.11.2010, 10:30
  3. Strings Vergleichen?
    Von Kmann im Forum CODESYS und IEC61131
    Antworten: 13
    Letzter Beitrag: 13.10.2010, 09:11
  4. 5 bits vergleichen
    Von compi im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 28.09.2010, 21:21
  5. Bausteine vergleichen
    Von Reto im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 07.10.2008, 15:24

Lesezeichen

Berechtigungen

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