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

Ergebnis 1 bis 10 von 10

Thema: DB Wert mit Hex Wert Vergleichen?

  1. #1
    Registriert seit
    16.06.2010
    Beiträge
    18
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich möchte einen Hex Wert (0x40D5) mit einem Wert in einem DB Vergleichen ob beide Werte gleich sind.

    Ich dachte ich nehme den ==I Vergleicher.

    Aber ich kann irgendwie den Hex Wert nicht als In Parameter angeben, ich habe W#16#40D5 geschrieben.
    Aber das scheint falsch zu sein (angabe bleibt rot).

    Kann mir jemand weiter Helfen, hab grad kein Plan wo der Fehler is.
    Zitieren Zitieren DB Wert mit Hex Wert Vergleichen?  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.726
    Danke
    398
    Erhielt 2.402 Danke für 2.001 Beiträge

    Standard

    Hallo,
    das liegt daran, dass du mit "==I" Integerwerte vergleichst. Das geht in AWL zu machen obwohl du hier ja einen WORD-Wert vorgibst. In KOP und/oder FUP geht das nicht (die Typen passen nicht).

    Gruß
    Larry

  3. #3
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    das musst du mal in den einstellungen vom kop/fup editor schauen, irgendwo da kann man die typprüfung abschalten!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  4. #4
    ibanesch ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    16.06.2010
    Beiträge
    18
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    danke, also der vergleich funktioniert obwohl die datentypen nicht passen oder? wenn ichs in awl schreibe mekert step 7 zumindest nicht.

  5. #5
    Registriert seit
    17.05.2010
    Ort
    Paderborn
    Beiträge
    824
    Danke
    84
    Erhielt 125 Danke für 94 Beiträge

    Standard

    Geht aber nur mit ==I zu vergleichen!

    <I, >I, ... u.s.w. sind mit vorsicht zu genießen, denn wenn Du einen Hex-Wert mit "F000" an erster Stelle hast, dann ist das im INT-Format eine negative Zahl!

    Word: 0 - 65536
    INT: -32768 - 32767
    Grüße
    Michael

    1001101110110100... Das ist meine Welt

  6. #6
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Zitat Zitat von MCerv Beitrag anzeigen
    Geht aber nur mit ==I zu vergleichen!

    <I, >I, ... u.s.w. sind mit vorsicht zu genießen, denn wenn Du einen Hex-Wert mit "F000" an erster Stelle hast, dann ist das im INT-Format eine negative Zahl!

    Word: 0 - 65536
    INT: -32768 - 32767
    Genau, um es noch einmal anders zu sagen, Hex-Zahlen werden beim Vergleichen in Step7 als Int-Zahlen interpretiert! Und da bei Int-Zahlen durch die Zweierkomplementdarstellung negative Werte als große Hex-Zahlen (<=8000 Hex oder 32767 Int) dargestellt werden, würde der Vergleicher eine Hexzahl, die über dem pos. Int-Bereich (8000 Hex oder 32767 Int) liegt als negative Zahl interpretieren und ein falsches Vergleichsergebnis ausgeben.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  7. #7
    Registriert seit
    17.05.2010
    Ort
    Paderborn
    Beiträge
    824
    Danke
    84
    Erhielt 125 Danke für 94 Beiträge

    Standard

    so isses Ralle
    Grüße
    Michael

    1001101110110100... Das ist meine Welt

  8. #8
    ibanesch ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    16.06.2010
    Beiträge
    18
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    hm das is naja schlecht. wie vergleiche ich dann hex zahlen? wenn ich z.b wissen will ob der wert FFFF ist.
    Byte weiße? oder wie geht das dann?

  9. #9
    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

    Z.B. durch "Umrechnen" in int, 0xFFFF = -1. Hex ist nur eine andere Darstellung, kein anderer Inhalt!
    Zum Umrechnen kann ich den Windows-Taschenrechner unter Zubehör empfehlen.
    Bei Vergleichen auf <, <=, >, >= muss natürlich etwas aufgepasst werden.
    Die grundsätzliche Frage lautet hier nämlich: vergleiche ich vorzeichenbehaftete Werte oder vorzeichenlose Werte.
    Rainer Hönle
    DELTA LOGIC GmbH

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

  10. #10
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Wenn du weißt, das die Werte vorzeichenlos sind, kannst du die Worte (2Byte) in Doppelworte (4Byte) transferieren und dort vergleichen. bei <D gilt zwar im Prinzip das Gleiche, wie bei den <I, aber wenn du einen Wortwert in ein Doppelwort kopierst, dann sind ja die beiden höheren Bytes automatisch 0 und man kommt gar nicht in den negativen Bereich.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

Ähnliche Themen

  1. REAL-Wert in Word-Wert konvertieren
    Von Mohrchen im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 17.07.2011, 13:02
  2. Antworten: 27
    Letzter Beitrag: 07.04.2011, 22:56
  3. gegebenen REAL-Wert mit Drehgeberwert vergleichen
    Von refurbishment im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 21.05.2010, 09:21
  4. REAL Wert Vergleichen
    Von tomatensaft im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 05.09.2007, 16:22
  5. Antworten: 6
    Letzter Beitrag: 19.04.2007, 00:24

Lesezeichen

Berechtigungen

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