Step 7 Offline Online Unterschied V5.5 SCL

Zuviel Werbung?
-> Hier kostenlos registrieren
Der SCL classic Compiler optimiert nicht (oder nicht nennenswert), der packt ein Makro nach dem anderen stur hintereinander. In dem Kompilat sind sehr oft völlig unnötige Codestücke drin, die nur in ganz wenigen speziellen Fällen Sinn machen. Manche Sachen können auch nicht wegoptimiert werden, damit der Code in Hochsprache/SCL beobachtbar bleibt, so wie er in SCL formuliert wurde.

Harald
 
Also, der Einstellung 'Optimize object code' macht kein Unterschied ?

edit: Ich habe es so verstanden dass um dieselbe SCL Quell code handelt, wegen diese Aussagen. Die Frage ist, wie kommt es zu die Unterschiede und kann Trafalder die letzte Versionsstand verwenden.

Ich habe einen älteren Stand gefunden wo die Problem Bausteine noch übereinstimmen
Ich habe die SCL Quelldateien verglichen, diese sind identisch bis auf die Zeitstempel. Mich wundert es aber das die erzeugten FB´s unterschiedlich groß sind und sich auch beim vergleichen unterscheiden.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Also, der Einstellung 'Optimize object code' macht kein Unterschied ?
Das weiß ich jetzt nicht, müsste ich ausprobieren was genau der Compiler tatsächlich optimieren kann. Meine Erfahrung ist, daß der erzeugte AWL-Code allermeistens völlig unnötig umständlich ist und nicht optimiert aussieht.

Harald
 
Ich Werde nächste Woche mein "aktuelles" (hoffentlich) Projekt einspielen um zu schauen ob alles noch läuft.
Das mache ich aber besser nicht an einem Freitag :D

Vermutlich sind die Bausteine unterschiedlich groß wegen der eigentlich unnötigen Zeilen mit:


Die Rechnung ist in einer Schleife und wiederholt sich dementsprechend oft im AWL code.


Das weiß ich jetzt nicht, müsste ich ausprobieren was genau der Compiler tatsächlich optimieren kann. Meine Erfahrung ist, daß der erzeugte AWL-Code allermeistens völlig unnötig umständlich ist und nicht optimiert aussieht.

Harald
Das habe ich ausprobiert, der Code sieht für mich gleich aus.


Vielen Dank schonmal für eure Unterstützung!!

Gruß.
 
Hier mal ein Ausschnitt, die Sprungmarken heißen unterschiedlich und die Rechnung unterscheidet sich leicht:

Die Sprungmarken gibt es übrigens im MC7 Code auf der Steuerung überhaupt nicht, dort sind nur Sprünge auf Adressweiten. Wenn du komplett ohne Offline-Programm an eine Steuerung gehst und einen AG-Abzug machst, dann fügt der Editor automatisch Sprunglabel nach dem Schema Mnnn ein. Die A7d3 Label sind die von SCL Compiler im AWL Code generierten Sprungmarken. Wenn ein Offline-Programm vorliegt und du mit diesem in die Onlinesicht gehst, dann versucht der Editor die Sprungmarken irgendwie mit dem Offline-Programm in übereinstimmung zu bringen. Wenn das nicht passt, dann gibt es die Mnnn Label.
 
Zurück
Oben