Awl Wert laden

chup

Level-2
Beiträge
31
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hey leute habe mal ne kleine wahrscheinlich auch total peinliche frage.
Ich bearbeite grad ein programm wo alle weite die ins akku reingeladen werden so geschrieben sind:
bsp.: L L#6
warum steht das L# noch vor der 6?
Danke im Vorraus
Lg Chup
 
... die Zahl wird als Doppelwort bzw. als LongInteger geladen.
Das ist eigentlich für die Zahlen unter 32767 ohne Relevanz.

Gruß
Larry
 
Noch eine Info als Ergänzung:

In AWL ist das tatsächlich nicht relevant.

In FUP/KOP erwartet der Compiler das "L#", wenn per MOVE-Befehl auf eine 32-Bit Variable geschrieben wird. Auch wenn die Zahl kleiner 32767 ist.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
:cool: ... stimmt - da hast du Recht. Ich hatte mich jetzt zu sehr an der Fragestellung orientiert.

Also :
Es ist für den Zahlenraum von 0 bis 32767 ohne Relevanz - darüber und darunter wird eine Zahl entsprechend anders verarbeitet / betrachtet.

Gruß
Larry
 
...
Es ist für den Zahlenraum von 0 bis 32767 ohne Relevanz ...
Kann man doch so auch nicht sagen, oder?
Wenn ich die Zahl als Long deklariere, wird doch das High-Word mit Nullen gefüllt. Ansonsten wird der Wert nur als Int/Word geschrieben und damit hab' ich u.U. noch Reste von vorigen Werten im High-Wort. Wenn ich dann den Inhalt als DW transferiere, könnte evtl. nicht das gewünschte rauskommen.
Das bedeutet, wenn ich mit Speicher im Doppelwort-Format arbeite, sollte ich bei AWL Werte kleiner 32768 auch immer als L(ong) kennzeichnen.

Oder hab' ich das falsch in Erinnerung?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
:cool: ... stimmt - da hast du Recht. Ich hatte mich jetzt zu sehr an der Fragestellung orientiert.

Also :
Es ist für den Zahlenraum von 0 bis 32767 ohne Relevanz - darüber und darunter wird eine Zahl entsprechend anders verarbeitet / betrachtet.

Gruß
Larry


also ich meine man kann da auch negative zahlen bis -32768 laden.
 
also es ging hier ja um den L# - was eine zahl als dint kennzeichnet. bei einem dint ist das bit 31 das vorzeichen. bei einem int ist bit 15 das vorzeichen. wenn das nicht so wäre, könnte man keinen negativen int laden. der ginge dann aber auch bis 65536. was mit den bits 16-31 beim laden passiert, ist mir eigentlich wurst.
wenn das jetzt alles falsch ist, gehe ich nochmal zur schule, vorher schaue ich mir aber mal alle prg's durch die ich so geschrieben habe, denn die dürften dann auch falsch sein.
 
@Repök:
mit der negativen INT-Zahl hast du schon Recht - wir sprachen aber von den positiven INT-Werten, bei denen es gleich ist - bei den negativen Zahlen ist es schon bei -1 ein Unterschied von INT zu DINT (wie du es selber so schön ausführst).
Ich würde nicht noch mal zur Schule gehen wollen - auch nicht wegen der INT's ... ;)

Gruß
Larry
 
Zurück
Oben