Step 7 Datenbaustein ansprechen?

spirit

Level-1
Beiträge
961
Reaktionspunkte
23
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi Ihr,

ich hänge mal grad wieder in der Luft... :)

Ich habe in einem DB1 an Adresse +44 den Namen "Wert" eingeschrieben und ihm den Typ "INT" zugewiesen.


Bei dem Typ "WORD" würde man/frau ja schreiben: DB1.DBW44 , bzw. DB1.Wert

Nur wie schreibe ich das jetzt bei INT; bekomme hier nicht den Namen "Wert" nach DB1.XXX ?

Danke!
 
Na genau so. das ist ja nur eine andere Darstellung! wobei word nicht negativ werden kann. Aber probiers doch mal. INT belegt ja genauso 2 Byte, also 1 word.
 
Dank' euch;

also wird eine INT-Variable genauso hingeschrieben wie eine WORD-Variable, richtig?
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja vollmi,

der DB-Name ist klar; wenn er symbolisch ist...

Aber denke ich habe es verstanden; auch der Teil hinter dem Punkt (also nach DB) wird bei einer INT- bzw. WORD-Variablen ganz gleich geschrieben, richtig?
 
auch der Teil hinter dem Punkt (also nach DB) wird bei einer INT- bzw. WORD-Variablen ganz gleich geschrieben, richtig?
Ja, es ist ja die gleiche Datengröße (16bit), nur der Inhalt wird aufgrund des Formats anders interpretiert. Und mit der absoluten Adressierung wird die Größe (BIT, BYTE, WORD oder DWORD) der Daten angegeben.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja, es ist ja die gleiche Datengröße (16bit), nur der Inhalt wird aufgrund des Formats anders interpretiert.

... aber wenn ich beispielsweise die Zahl 7 einmal in eine INT-Variable und einmal in eine WORD-Variable lade, so besteht doch am Inhalt beider Variablen kein Unterschied, oder?
 
.
Richtig, nur die Darstellung ist anders.

INT = "7" = "00000000 00000111"
WORD = "00000000 00000111" = "7"

Kannst dir ja mal deine Variable mit einer
VAT in unterschiedlichen Formaten anschauen.
 
... aber wenn ich beispielsweise die Zahl 7 einmal in eine INT-Variable und einmal in eine WORD-Variable lade, so besteht doch am Inhalt beider Variablen kein Unterschied, oder?
Und der Wert 0 sieht bei DINT, DWORD und REAL gleich aus. Sowas kommt vor.
;)

Für Lese- und Schreibbefehle ist nur die Datengröße wichtig. Der Inhalt interessiert nicht, da nur 1:1 zum bzw. vom Akku übertragen wird. Erst bei der Verarbeitung, z.B. eine Rechenoperation, muss dieser Inhalt richtig interpretiert werden.

Als Beispiel, rechne das mal aus:
Code:
L 2#1000000000000000
L 2#0000000000000111
+
=?
So "sieht" das Ganze die CPU - Strom fließt oder nicht.
Die beiden Werte können transferiert werden, weil dafür nur die zu transferierende Bitanzahl wichtig ist.
Beim Addieren muss man jedoch wissen, wie der Inhalt zu deuten ist.
 
.
Wah ?

nichts anderes als die Vorredner habe ich gesagt.
Mal abgesehen von deinem Titel "Erfahrener Benutzer"
würde ich dir mal Grundlagen nahelegen [LINK]
und daraus lernen. :sb8:

... habe ja nicht geschrieben, dass du etwas anderes als deine Vorredner "gesagt" hast. Aber du hast geschrieben:

"Richtig, nur die Darstellung ist anders."

Aber ich kann in dem, was du geschrieben hast (INT- und WORD-Darstellung) keinen Unterschied feststellen. Daher war meine Frage, ob ich etwas übersehe?

Den Titel 'Erfahrener Benutzer' habe nicht ich mir gegeben... hätte kein Problem damit, wenn hier stattdessen 'Anfängerin' stehen würde!

@hucki:

Bin mir nicht ganz sicher, aber ich würde sagen, dass bei der Addition -7 herauskommt?

Lieben Dank...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@hucki:

Bin mir nicht ganz sicher, aber ich würde sagen, dass bei der Addition -7 herauskommt?
Das kann man eben nicht sagen, ohne dass man das Format der beiden Werte kennt (mal davon abgesehen, dass -7 so oder so nicht stimmt ;)).

Handelt es sich um INT-Werte oder genauer gesagt Signed INT wäre das Ergebnis -32768 + 7 = -32761.
Ist es aber um WORD bzw. Unsigned INT dann lautet das Ergebnis dagegen 32768 + 7 = 32775.
Wie Du siehst, gleicher Inhalt - andere Interpretation. Das Format bestimmt, ob hier die Wertigkeit von 32768 der Stelle 2^15 vom Gesamtwert abgezogen oder dazugerechnet wird.
Für das Transferieren der beiden Werte ist das aber völlig unerheblich.


Wenn Du ein bißchen zwischen den Formaten hin- und herkopieren möchtest, um mal zu sehen, wie unterschiedlich die Ergebnisse bei gleicher Datengröße sein können, gibt es hier eine nette Seite im Netz.
 
Zuletzt bearbeitet:
du hast geschrieben:

"Richtig, nur die Darstellung ist anders."

Aber ich kann in dem, was du geschrieben hast (INT- und WORD-Darstellung) keinen Unterschied feststellen. Daher war meine Frage, ob ich etwas übersehe?
Softmaschine wollte sicher ausdrücken,
das bei einem INT-Wert für den Anwender die dezimale Darstellung Vorrang hat,
während es bei einem WORD die binäre bzw. hexadezimale Darstellung ist.
Auch wenn der binäre Inhalt genau der Gleiche ist.
 
Den Titel 'Erfahrener Benutzer' habe nicht ich mir gegeben... hätte kein Problem damit, wenn hier stattdessen 'Anfängerin' stehen würde!
Lieben Dank...

Ist das ein Schreibfehler oder bist du denn nun wirklich weiblich ?

Wenn du dich also hier in unserer Branche tummeln willst, dann
erstmal "Respekt" und viel Glück! :grin:

Gruss
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das kann man eben nicht sagen, ohne dass man das Format der beiden Werte kennt (mal davon abgesehen, dass -7 so oder so nicht stimmt ;)).

Wenn Du ein bißchen zwischen den Formaten hin- und herkopieren möchtest, um mal zu sehen, wie unterschiedlich die Ergebnisse bei gleicher Datengröße sein können, gibt es hier eine nette Seite im Netz.

Och, schade... dachte das Bit ganz links gibt immer nur das Vorzeichen an.

Danke für den Link!
 
Ist das ein Schreibfehler oder bist du denn nun wirklich weiblich ?

Wenn du dich also hier in unserer Branche tummeln willst, dann
erstmal "Respekt" und viel Glück! :grin:

Gruss

Nein, kein Schreibfehler!

Und ich kam zu dieser SPS-Geschichte quasi so wie die Jungfrau zum Kinde... war nicht ganz freiwillig. Macht mir aber mehr und mehr Spaß; allerdings fehlen mir sehr viele Grundlagen wie ihr an meinen Posts (auch in der Vergangenheit) sehen könnt.

Aber es ist ja noch keine Meisterin vom Himmel gefallen! :p
 
.

@ spirit

Wenn es dir also auch noch Spass macht, dann los !

Übrigens, mein Link aus Beitrag #12 wird dir schon
mal einige Grundlagen vermitteln.
Weitere Links kannst du bei Bedarf auch noch erhalten.

Gruss
 
Zurück
Oben