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

Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 22

Thema: dword

  1. #11
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Daumen runter


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Zotos,

    Zitat Zitat von Zotos
    @UG, QM: Ihr habt mit eueren Aussagen ja recht aber ich finde das ihr mit hugo zu streng seit. Er hat schon mehrfach erwähnt das er kein Setp7 einsetzt. Und wenn man sich streng an die IEC61131-3 hält hat er recht.
    Mir ist eigentlich sche....egal, was hugo nun letztendlich einsetzt. In meinem Beitrag habe ich (glaube ich jedenfalls) deutlich ausgedrückt, dass alle Datentypen und deren Bitbreite letztendlich vom Compiler bestimmt werden. Und das eben als ganz globale Ausage, gültig für SPS oder Hochsprachen. Der Compiler kann sich da an Normen orientieren und diese berücksichtigen. Oder eben eigene Typen definieren.

    Zitat Zitat von Hugo
    streng nach der iec61131-3 norm
    Ich habe allgemein von Datentypen gesprochen, wieso willst Du das mit Erwähnung von IEC61131 bezweifeln ?

    Zitat Zitat von UG
    SINT gibts in der S7 Welt nicht, da gibts nur BYTE (Ohne Vorzeichen)
    Nein, gibt es bei S7 wirklich nicht. In anderen Programmiersprachen aber, mal als SmallInt oder ShortInt mit 8 oder 16 Bit, je nach Compiler....
    Jetzt klar, was ich gemeint habe und hier irgendwie nach Belieben verdreht und auf CodeSys (kenn ich nur vom Namen) umgelegt wurde ?

    Lest mal die Frage des Threaderstellers durch, der hatte nur allgemein gefragt und nicht nach CodeSys, oder ?
    Ich mag es einfach nicht, wenn man mir die Worte im Mund herumdreht ...

    Gruss

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Wie war noch mal die Frage ???  

  2. #12
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Beitrag

    Hugo,

    sorry sint ist iec61131-3 standard aber ich gebe den siemens leuten durchaus recht byte erfüllt den gleichen zweck
    Wobei BYTE in der S7 Welt eben kein Signum hat. sint aus iec61131 hat aber wahrscheinlich ein Signum (behaupte ich jetzt mal, aus der Ableitung des Namens "sint"). Ob es dann den gleichen Zweck erfüllt, na ja...
    Im Prinzip ja, nur der Interpreter des Datentyps wird sich wahrscheinlich an den Unterschieden leicht verschlucken.

    Gruss

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Datentypen mal global gesehen  

  3. #13
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Lächeln

    Hallo UG,

    Zitat Zitat von UG
    INT wird Dargestellt und interpretiert MIT Vorzeichen
    Nur solange der Interpreter auch weiss, ob der Datentyp "INT" 8- , 16-, 32- oder 64-BitBreit ist. Ansonsten kann es schon mal zu Fehlinterpretationen kommen ...
    Besonders lustig, wenn man im Netzwerk mit anderen Steuerungen kommuniziert.

    Gruss

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Jetzt endlich kapiert ???  

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

    Standard

    Zitat Zitat von Question_mark Beitrag anzeigen
    ...
    Lest mal die Frage des Threaderstellers durch, der hatte nur allgemein gefragt und nicht nach CodeSys, oder ?
    Ich mag es einfach nicht, wenn man mir die Worte im Mund herumdreht ...

    Gruss

    Question_mark
    Code:
    Allgemein := IEC61131_3;  (* Normung *)
    
    IF (Siemens = IEC61131_3) THEN
      Siemens :=  Allgemein;
    ELSE
      Siemens :=  NOT Allgemein;
    END_IF


    Wo hab ich Dir die Worte im Mund vedreht? Also das war keine Absicht.
    Geändert von zotos (08.02.2007 um 08:43 Uhr)
    If you open your Mind too much, your Brain will fall out.

  5. #15
    Registriert seit
    29.01.2007
    Ort
    Sandkrug
    Beiträge
    147
    Danke
    7
    Erhielt 36 Danke für 25 Beiträge

    Standard

    Hallo 1schilcher,
    wenn es im Forum UG und Question_mark nicht gäbe, dann hätten wir eine heile Welt. Du stellst eine konkrete Frage und die beiden machen (wie immer) nur Wortklauberei, können dir den Sachverhalt aber nicht "rüber bringen". Es ist eben nicht einfach, eine Frage verständlich zu beantworten. Geh mal davon aus, dass meine Antwort die beiden wieder mit ihren unqualifizierten Meinungen auf den Plan rufen wird.
    Hier aber mal meine Erklärung (nur dargestellt am "WORD").
    Der Begriff Word meint zunächst mal nur 16 einzelne Bit. Wenn man z.B. an die ersten 16 Eingänge einer SPS irgendwelche Taster anschließt, kann man diese 16 Eingänge mit dem Befehl L EW0 auf einen Schlag einlesen und weiterverarbeiten. Es handelt sich also lediglich um 16 Bit, die miteinander nichts zu tun haben.
    Fall 1:
    Nun stellen wir uns aber mal ein "Schaltbrett" vor, auf dem diese 16 Eingänge nebeneinander angeordnet sind. Mit diesen Schaltern möchten wir nun eine Zahl im Dualcode eingeben. Da wir Zahlen von rechts nach links lesen liegt es auf der Hand, den rechtesten Schalter mit der kleinsten Wertigkeit 1(=2hoch0), den links davon mit der nächsten Wertigkeit 2(=2hoch1), dann 4=2hoch2, 8=2hoch3, 16=2hoch4 usw. bis zum linkesten Schalter mit der Wertigkeit 32768(=2hoch15) zu belegen. Sind alle Schalter eingeschaltet (1-Signal), dann werden die Wertigkeiten alle addiert, es kommt 65535 heraus. (Es gibt also insgesamt 65536 mögliche Schaltungskombinationen). Damit interpretieren wir diese 16 Bit als vorzeichenlose Zahl und mit dieser können wir natürlich auch rechnen. Wie diese interpretierte Kombination letzten Endes heisst, ist belanglos, man könnte also UINT sagen, heisst vorzeichenlose Zahl (obwhl sie ja eigentlich positiv ist).
    Fall 2:
    Jetzt ordnen wir dem linkesten Schalter nicht mehr eine Wertigkeit zu sondern ein Vorzeichen. Dann trägt er natürlich nicht mehr zur Gesamtwertigkeit bei. Mit seiner Hilfe können wir dafür positive und negative Zahlen darstellen. Der Zahlenbereich geht jetzt von -32768 ... +32767 (die 0 zählt zum Bereich der positiven Zahlen). Diese Interpretation, also linkestes Bit ist das Vorzeichen-Bit, wird meistens als INT-Format bezeichnet. Die Darstellung der negativen Zahlen ist hierbei etwas schwieriger zu verstehen. Natürlich kann man mit diesem Zahlenformat schon komfortabler rechnen.
    Fall 3:
    Jetzt ordnen wir unsere 16 Schalter von rechts nach links 4 Vierergruppen zu. Innerhalb jeder Gruppe arbeiten wir wieder von rechts nach links mit den Wertigkeiten 1, 2, 4, 8. Beschränken wir uns bei der Eingabe der einzelnen Ziffern zusätzlich auf die Werte von 0...9, dann kann die größte Zahl nur 9999 lauten.
    Fazit (und das gilt für DWORD, BYTE ... auch):
    WORD, DWORD usw. sind nur Begriffe für eine Zusammenfassung einer (definierten) Anzahl Bit. Damit kann man grundsätzlich nicht rechnen.
    Begriffe wie INT, UINT, BCD, ... kennzeichnen eine (definierte) Interpretation der Bitfolge. Damit kann man dann aber mehr oder weniger gut rechnen. (Z.B.kenne ich keinen Befehl, um direkt mit BCD-Zahlen zu rechnen). Problem: Man muss darauf achten, dass bei einer Rechnung der zulässige Zahlenbereich (auch mittendrin) nicht überschritten wird. Also, passendes Zahlenformat wählen!
    Hoffe, dass die Frage damit verständlicher (wenn auch nicht umfassend) beantwortet ist.

  6. #16
    Registriert seit
    28.06.2006
    Ort
    Königreich Neuseeland
    Beiträge
    2.027
    Danke
    133
    Erhielt 96 Danke für 76 Beiträge

    Standard

    Zitat Zitat von eNDe Beitrag anzeigen
    Fall 2:
    Jetzt ordnen wir dem linkesten Schalter nicht mehr eine Wertigkeit zu sondern ein Vorzeichen. Dann trägt er natürlich nicht mehr zur Gesamtwertigkeit bei. Mit seiner Hilfe können wir dafür positive und negative Zahlen darstellen. Der Zahlenbereich geht jetzt von -32768 ... +32767 (die 0 zählt zum Bereich der positiven Zahlen). Diese Interpretation, also linkestes Bit ist das Vorzeichen-Bit, wird meistens als INT-Format bezeichnet. Die Darstellung der negativen Zahlen ist hierbei etwas schwieriger zu verstehen. Natürlich kann man mit diesem Zahlenformat schon komfortabler rechnen.
    Wieder mal falsch erklärt.
    Ich weis nicht, was ich an dir mehr verabscheue, deine Arroganz oder deine Ignoranz. Wahrscheinlich beides.

    INTEGER:
    =======

    Darstellung Zahl +1:
    00000000 00000001

    Darstellung Zahl -1:
    11111111 11111111



    Soviel zu "das linke Bit ist das Vorzeichen"

    Schon mal was vom 2er - Komplement gehört ?

    @Markus:
    Dieser eNDe bringt mit seinem Halbwissen noch das Forum in Verruf !
    Selbst einfache, selbstverständliche Dinge erklärt er falsch und beschimpft dabei noch Leute, die es besser wissen als er.

    Ich beantrage, den eNDe zu sperren !

    Ende mit lustig.
    Zitieren Zitieren Sperrantrag.  

  7. #17
    Registriert seit
    29.08.2006
    Beiträge
    195
    Danke
    0
    Erhielt 35 Danke für 21 Beiträge

    Standard

    ich empfehle allen beteiligten erst einmal zu lesen:
    und bitte bedenkt wir sprechen bei sps von einem internationalen standard nach iec 61131 und nicht von irgendeinem hersteller wie codesys oder siemens. oder ist dies kein sps forum?????

    http://www.fen-net.de/karlheinz.john...eutschV1.2.pdf
    seite 347 definition der std datentypen

    auch ein studium des standards selbst waere vielleicht ganz angebracht:
    hier dcer auszug data types
    Table 10 - Elementary data types
    No.
    Keyword
    Data type
    N a
    1
    BOOL
    Boolean
    1 h
    2
    SINT
    Short integer
    8 c
    3
    INT
    Integer
    16 c
    4
    DINT
    Double integer
    32 c
    5
    LINT
    Long integer
    64 c
    6
    USINT
    Unsigned short integer
    8 d
    7
    UINT
    Unsigned integer
    16 d
    8
    UDINT
    Unsigned double integer
    32 d
    9
    ULINT
    Unsigned long integer
    64 d
    10
    REAL
    Real numbers
    32 e
    11
    LREAL
    Long reals
    64 f
    12
    TIME
    Duration
    -- b
    13
    DATE
    Date (only)
    -- b
    14
    TIME_OF_DAY or TOD
    Time of day (only)
    -- b
    15
    DATE_AND_TIME or DT
    Date and time of Day
    -- b
    16
    STRING
    Variable-length single-byte character string
    8 i,g
    17
    BYTE
    Bit string of length 8
    8 j,g
    18
    WORD
    Bit string of length 16
    16 j,g
    19
    DWORD
    Bit string of length 32
    32 j,g
    20
    LWORD
    Bit string of length 64
    64 j,g
    21
    WSTRING
    Variable-length double-byte character string
    16 i,g
    a Entries in this column shall be interpreted as specified in the footnotes.
    b The range of values and precision of representation in these data types is implementation-dependent.
    c The range of values for variables of this data type is from -(2N-1) to (2N-1)-1.
    d The range of values for variables of this data type is from 0 to (2N)-1.
    e The range of values for variables of this data type shall be as defined in IEC 559 for the basic single width floating-point format.
    f The range of values for variables of this data type shall be as defined in IEC 559 for the basic double width floating-point format.
    g A numeric range of values does not apply to this data type.
    h The possible values of variables of this data type shall be 0 and 1, corresponding to the keywords FALSE and TRUE, respectively.
    i The value of N indicates the number of bits/character for this data type.
    j The value of N indicates the number of bits in the bit string for this data type.

  8. #18
    Registriert seit
    29.08.2006
    Beiträge
    195
    Danke
    0
    Erhielt 35 Danke für 21 Beiträge

    Standard

    sorry leider kann ich keine tabelle hochladen

  9. #19
    Registriert seit
    29.08.2006
    Beiträge
    195
    Danke
    0
    Erhielt 35 Danke für 21 Beiträge

    Standard

    einen einblick in den standard findet ihr hier

    http://alice.stup.ac.ru/~dvn/fb61499...1131/index.htm

  10. #20
    Registriert seit
    07.05.2004
    Ort
    Campbelltown
    Beiträge
    2.437
    Danke
    131
    Erhielt 276 Danke für 86 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Wenn ich das hier überfliege, würde ich vorschlagen, alles hinter dem 5. Beitrag zu löschen.
    Gegen Schwachsinn, Schwachköpfe und armselige Trittbrettfahrer kann man nicht argumentieren.

    Gott sieht alles, auch Signaturen in Geheimschrift,,... aber er petzt nicht.

Ähnliche Themen

  1. SCL Bit in Dword
    Von enter im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 25.08.2010, 00:08
  2. Dword vergleichen
    Von mitchih im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 27.08.2009, 21:58
  3. DWORD to Byte
    Von hank12 im Forum Simatic
    Antworten: 19
    Letzter Beitrag: 05.05.2009, 07:44
  4. Zugriff auf DWORD in FB
    Von hank12 im Forum Simatic
    Antworten: 17
    Letzter Beitrag: 02.05.2009, 22:30

Lesezeichen

Berechtigungen

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