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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: integer 32Bit in integer 16 Bit wandeln

  1. #1
    Registriert seit
    18.08.2007
    Ort
    Bayern
    Beiträge
    49
    Danke
    11
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Siemens Freaks,

    kennt von euch einer einen Befehl um eine Realzahl 32 Bit in eine 16 Bit integer zu wandeln. Den Befehl von Real auf Integer 32 kenn ich, aber jetzt muß ich noch auf 16 Bit runter kommen. Die Zahlenwerte selbst sind nicht so groß, dass es Probleme mit der Umwandlung gäbe, aber mal positiv und mal negativ vom Vorzeichen.

    Danke für eure Hilfe
    Zitieren Zitieren integer 32Bit in integer 16 Bit wandeln  

  2. #2
    Registriert seit
    28.01.2009
    Ort
    Hamburg
    Beiträge
    199
    Danke
    52
    Erhielt 54 Danke für 34 Beiträge

    Standard

    Es gibt keinen Befehl zur Wandlung von DInt nach Int.
    Man braucht ihn auch nicht,zwischen den Zahlenwerten -32768 bis 32767
    ist die Darstellung der Zahlenformate kompatibel.Ausserhalb der Grenzen
    kann es keine 16 Bit Integer Zahlen geben.

    Viel Grüße Bernard
    Geändert von Bernard (08.11.2009 um 17:59 Uhr)
    Zitieren Zitieren integer 32Bit in integer 16 Bit wandeln  

  3. #3
    Registriert seit
    25.10.2009
    Beiträge
    47
    Danke
    5
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Zitat Zitat von slk230-power Beitrag anzeigen
    Hallo Siemens Freaks,

    kennt von euch einer einen Befehl um eine Realzahl 32 Bit in eine 16 Bit integer zu wandeln. Den Befehl von Real auf Integer 32 kenn ich, aber jetzt muß ich noch auf 16 Bit runter kommen. Die Zahlenwerte selbst sind nicht so groß, dass es Probleme mit der Umwandlung gäbe, aber mal positiv und mal negativ vom Vorzeichen.

    Danke für eure Hilfe

    Hallo

    hast du es schon mit dem Verschieben mit Move versucht.

  4. #4
    Registriert seit
    18.08.2007
    Ort
    Bayern
    Beiträge
    49
    Danke
    11
    Erhielt 2 Danke für 2 Beiträge

    Standard

    mit mov wird es nicht gehen, da mir ja das Vorzeichen fehlt, und bei negativen Zahlen wird ja das 2er Komplement gebildet.

    Wer weiß noch was??

  5. #5
    Registriert seit
    07.03.2004
    Beiträge
    4.369
    Danke
    946
    Erhielt 1.158 Danke für 831 Beiträge

    Standard

    Ich habe gerade keine Sepp7 Kiste am laufen aber bietet SCL nicht von Haus aus ein "REAL_TO_INT" an?
    If you open your Mind too much, your Brain will fall out.

  6. #6
    Registriert seit
    28.01.2009
    Ort
    Hamburg
    Beiträge
    199
    Danke
    52
    Erhielt 54 Danke für 34 Beiträge

    Standard

    Hier mal ein Beispiel:

    Code:
    L 32.9       // Realzahl
    RND          // Zahl 32 Bit Dint
    T MW100   // da die Zahl zwischen -32768 bis 32767 liegt
                   // kann man sie einfach an ein Merkerword übergeben
    Geändert von Bernard (08.11.2009 um 18:20 Uhr)
    Zitieren Zitieren kennt von euch einer einen Befehl um eine Realzahl 32 Bit in eine 16 Bit intege  

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

    slk230-power (09.11.2009)

  8. #7
    Registriert seit
    28.01.2009
    Ort
    Hamburg
    Beiträge
    199
    Danke
    52
    Erhielt 54 Danke für 34 Beiträge

    Standard

    Ja diesen Befehl gibt es in SCL
    Code:
    Unsinn_int:= REAL_TO_INT(unsinn_real);
    Zitieren Zitieren SCL Befehl REAL_to_int  

  9. #8
    Registriert seit
    04.01.2008
    Ort
    Wien
    Beiträge
    773
    Danke
    136
    Erhielt 39 Danke für 35 Beiträge

    Standard

    trunc
    32 od 16 bit sind meiner meinung nach egal, alleine auf den Grössenbreich musst du achten
    irgendetwas ist ja immer...
    ING. Gerald Miedler

  10. Folgender Benutzer sagt Danke zu Gerri für den nützlichen Beitrag:

    slk230-power (09.11.2009)

  11. #9
    Registriert seit
    14.10.2008
    Ort
    Palz
    Beiträge
    89
    Danke
    9
    Erhielt 12 Danke für 9 Beiträge

    Standard

    ich hab mir nen Baustein gebastelt,
    der die Zahl überprüft,
    ob zu groß oder zu klein.
    ist das der Fall, wird der Ausgang ENO=0
    Liegt kein Fehler vor,
    wird der DINT am Eingang
    dem Ausgang als INT zugewiesen

  12. #10
    Registriert seit
    18.08.2007
    Ort
    Bayern
    Beiträge
    49
    Danke
    11
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    @Bernard: Danke für deine Hilfe, habe es probiert und es funktioniert super.

    Danke auch an alle andere!

Ähnliche Themen

  1. Integer in Char Array wandeln ?
    Von Power_Pete im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 28.01.2010, 15:26
  2. Integer in S5Time wandeln
    Von Nethacks im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 07.08.2009, 09:46
  3. Date in 3 mal Integer wandeln
    Von steffen21m im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 21.09.2007, 14:06
  4. Integer in S7 Zeit wandeln
    Von Anwender im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 19.02.2007, 10:47
  5. Umwandlung Integer(32bit) in Integer(16bit)
    Von Kojote im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 18.08.2005, 10:56

Lesezeichen

Berechtigungen

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