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

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 22

Thema: dword

  1. #1
    Registriert seit
    04.01.2006
    Beiträge
    133
    Danke
    16
    Erhielt 2 Danke für 2 Beiträge

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute, hab ein kleines Problem (für euch sicher keines)! Was ist eigentlich der Unterschied zwischen einem DWORD und einem Dint, bzw. einem Word und einem Int? Oder ist das das gleiche? Bitte helft einem Anfänger!
    Zitieren Zitieren Allgemeine Frage  

  2. #2
    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 1schilcher Beitrag anzeigen
    Hallo Leute, hab ein kleines Problem (für euch sicher keines)! Was ist eigentlich der Unterschied zwischen einem DWORD und einem Dint, bzw. einem Word und einem Int? Oder ist das das gleiche? Bitte helft einem Anfänger!

    WORD wird Dargestellt und interpretiert OHNE Vorzeichen
    INT wird Dargestellt und interpretiert MIT Vorzeichen

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

    Standard

    word ist 16 bit, dword 32 bit

    byte (8 bit) word (16 bit) und dword (32 bit) sind werte ohne vorzeichen und steggenommen auch keine zahlen zum rechnen es sind einfach bitwerte.

    int ist 16 bit mit vorzeichen weil sint (short integer) eine 8bit zahl mit vorzeichen ist und Dint eine doppelt genaue int zahl mit 32 bit und vorzeichen ist.

    desweiteren gibt es noch die USINT mit 8 bit (unsigned short integer) eine zahl ohne vorzeichen. Uint und UDint sind auch zahlen ohne vorzeichen mit 16 und 32 bit.

  4. #4
    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 hugo Beitrag anzeigen
    int ist 16 bit mit vorzeichen weil sint (short integer) eine 8bit zahl mit vorzeichen ist und Dint eine doppelt genaue int zahl mit 32 bit und vorzeichen ist.
    SINT gibts in der S7 Welt nicht, da gibts nur BYTE (Ohne Vorzeichen)

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

    Standard

    sorry sint ist iec61131-3 standard aber ich gebe den siemens leuten durchaus recht byte erfüllt den gleichen zweck

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

    Idee

    Hallo,

    Zitat Zitat von hugo
    int ist 16 bit mit vorzeichen
    Das ist manchmal richtig und leider auch manchmal falsch. Ob ein Datentyp z.B. "Int" einen Typ als 16-Bitbreiten oder 32-Bitbreiten Datentyp (aber immer mit Signum) interpretiert wird, hängt immer von der eigenen Datentypdefinition des Compilers ab (egal ob SPS oder Hochsprache). Wenn der Compiler bestimmt, dass "Int" 16-Bitbreit ist, dann ist das so. Wenn der Compiler der Meinung ist, der Datentyp "Int" ist 32-Bitbreit oder gar 64-Bitbreit, dann musst Du dich auch danach richten. Enscheidend ist hier nur, wie der Compiler den entsprechenden Datentyp definiert. Also kurz gefasst und zur allgemeinen Aufklärung, der Compiler bestimmt den Datentyp und Du richtest Dich danach (mehr oder weniger unbewusst).

    Gruss

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Wie breit ist ein Integer ???  

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

    Daumen runter

    Hallo,

    Zitat Zitat von hugo
    byte (8 bit) word (16 bit) und dword (32 bit) sind werte ohne vorzeichen und steggenommen auch keine zahlen zum rechnen es sind einfach bitwerte.
    Keine Zahlen zum Rechnen ???
    War eNDe etwa Dein Ausbilder ???

    Kannst Du mir jetzt mal ganz einfach begründen, warum man damit nicht rechnen kann ? 1+1 = 2, das klappt mit Datentyp "Byte", "Word", "DWord" bei mir ganz gut. Berichte doch mal über Dein Problem ...

    Gruss

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Wo hasse dat denn her ????  

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

    Standard

    ich habe kein problem wie ich eben schreibe strenggenommen
    das heisst auf deutsch die spec schreibt es so vor jedoch gehts in allen mir bekannten compilern also erst lesen dann antworten
    unter strenggenommen meineich streng nach der iec61131-3 norm.
    die norm definiert bitfolge datentypen (byte, word, dword und lword)
    sowie die verschiedenen int und real datentypen.
    nicht alle funktionen sind für alle datentypen definiert, und das ist durchaus implementierungsabhängig.
    versuch mal bcd_to_int und dann bcd_to_word dann siehst du schnell den unterschied.
    das eine ist eben eine zahl und das andere eine bitfolge.
    als lektuere hierzu empfehlenswert:
    hüthing verlag jens von aspen sps software entwicklung mit iec61131
    oder
    sringer verlag john / tiegelkamp sps programmierung mit iec61131-3

    übrigens schreibt die iec611 vor das int 16 bit und lint 64 bit usw ist im gegensatz zu anderen compilern.
    ob sich jeder hersteller dran hält ist natürlich was anderes

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

    Standard

    @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.
    Das es bei Setp7 keine kein UINT gibt ist ja nun keine Allgemeinbildungs Sache sondern ein Fachwissen was sich auf Siemens bezieht.
    Bei µC Programmierung gibt es auch oft die Diskusion welchen Datentyp man für was benutzt. Oft gibt es für den gleichen Datentyp eben verschiedene Namen.
    Das was QM mit dem INT erwähnt hat (das es je nach Controllertyp mal 16Bit oder 32Bit sein können) stimmt zwar bei vielen Programmiersprachen bei CoDeSys nicht so da gibt es INT (UINT) = 16Bit und DINT (UDINT) = 32Bit.
    If you open your Mind too much, your Brain will fall out.

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Question_mark Beitrag anzeigen
    Hallo,


    Keine Zahlen zum Rechnen ???
    War eNDe etwa Dein Ausbilder ???

    Kannst Du mir jetzt mal ganz einfach begründen, warum man damit nicht rechnen kann ? 1+1 = 2, das klappt mit Datentyp "Byte", "Word", "DWord" bei mir ganz gut. Berichte doch mal über Dein Problem ...

    Gruss

    Question_mark

    Hugo hat IMHO recht.

    Allein schon wegen der Darstellung im Status.
    Ich rechne mit INT, DINT und REAL, aber doch nicht mit BYTE, WORD, DWORD, machst du das etwa?

    Und was den Ausbilder angeht, der weis doch garnicht, was ein Byte ist, der kennt nur Bits und 0-Abfragen.

    @Zotos:
    Wenn ich STRENG werde, sieht das anders aus !

Ä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
  •