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

Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 31

Thema: NOP 0 im strukturierten Text

  1. #21
    Registriert seit
    19.04.2010
    Beiträge
    26
    Danke
    1
    Erhielt 10 Danke für 7 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Was der Threadersteller möchte lässt sich, meiner Meinung nach, in SCL am einfachsten mit "RETURN" erreichen. Der Baustein wird direkt beendet (wie "BEA" in AWL), und man benötigt keinen Sprung.

    Grüße
    Dominik

  2. #22
    Registriert seit
    12.04.2005
    Ort
    Black Forest
    Beiträge
    1.343
    Danke
    28
    Erhielt 131 Danke für 118 Beiträge

    Standard

    Zitat Zitat von StructuredTrash Beitrag anzeigen
    Mit GOTO hinter das Ende einer Schleife zu springen, um sie einfach und elegant zu verlassen, ist sicher keine Sünde.
    Doch da es schon einmal aussagt, das man sich über den Abbruch und deren Kriterien keine Gedanken gemacht hat.
    Eine Schleif über GOTO (in C, Pascal usw.) zu verlassen stellt ein Sünde dar (schreibt glaube ich Petzold in all seinen Büchern )

    Alleine die Bedingung um das GOTO auszuführen oder dort hin zu kommen, ist schon mal ein Kritterium was man für den Schleifen Abbruch ansetzen kann!

    Somit macht es das ganze leserlicher

  3. #23
    Registriert seit
    02.02.2007
    Beiträge
    104
    Danke
    12
    Erhielt 16 Danke für 13 Beiträge

    Standard

    Zitat Zitat von Boxy Beitrag anzeigen
    Doch da es schon einmal aussagt, das man sich über den Abbruch und deren Kriterien keine Gedanken gemacht hat.
    Eine Schleif über GOTO (in C, Pascal usw.) zu verlassen stellt ein Sünde dar (schreibt glaube ich Petzold in all seinen Büchern )

    Alleine die Bedingung um das GOTO auszuführen oder dort hin zu kommen, ist schon mal ein Kritterium was man für den Schleifen Abbruch ansetzen kann!

    Somit macht es das ganze leserlicher
    Sicherlich sollte man auf Sprünge innerhalb einer Schleife möglichst verzichten. Aber die Leserlichkeit des Codes ist ja nicht immer das einzige Kriterium für eine Anwendung. Manchmal kommt es auch auf die Performance an und dann kann es durchaus sinnvoll sein aus einer Schleife zuspringen.

    Ein generellen Verzicht halte ich für schwachsinn.

  4. #24
    Registriert seit
    25.11.2010
    Ort
    OWL
    Beiträge
    755
    Danke
    27
    Erhielt 166 Danke für 144 Beiträge

    Standard

    Zitat Zitat von Boxy Beitrag anzeigen
    Doch da es schon einmal aussagt, das man sich über den Abbruch und deren Kriterien keine Gedanken gemacht hat.
    Ich mache mir schon Gedanken, bevor ich springe, denn ich versuche, das möglichst zu vermeiden.

    Zitat Zitat von Boxy Beitrag anzeigen
    Eine Schleif über GOTO (in C, Pascal usw.) zu verlassen stellt ein Sünde dar (schreibt glaube ich Petzold in all seinen Büchern )
    Wer ist Petzold? Ein religiöser Fanatiker?

    Zitat Zitat von Boxy Beitrag anzeigen
    Alleine die Bedingung um das GOTO auszuführen oder dort hin zu kommen, ist schon mal ein Kritterium was man für den Schleifen Abbruch ansetzen kann!
    Es geht ja nicht darum, einen Schleifenabbruch vorwegzunehmen, der genausogut bei der normalen Überprüfung der Schleifenbedingung am Anfang bzw. Ende der Schleife stattfinden kann. Sondern darum, dass eine Abbruchbedingung wahr wird und gleichzeitig die weitere Bearbeitung des Schleifencodes verbietet. Da kann man sich, je nachdem wie komplex der Schleifencode ohnehin schon ist, überlegen, ob man ein weiteres IF THEN einfügt oder lieber springt.

  5. #25
    Registriert seit
    03.04.2008
    Beiträge
    6.205
    Danke
    237
    Erhielt 817 Danke für 691 Beiträge

    Standard

    Wir sind doch alle kleine Sünderlein, war immer so, war immer so...

    Wenn jemand schreibt es geht ohne Sprung beim Programmieren, dann hat er vermutlich noch nicht echt programmiert.
    Viel schlimmer und oft tödlicher für die Lesbarkeit und Funktion des Programmes sind in meinen Augen sogenannte "Sprungleisten".
    Aber das ist ein anderes Thema, denke ich


    bike

  6. Folgender Benutzer sagt Danke zu bike für den nützlichen Beitrag:

    00alex (21.06.2013)

  7. #26
    Registriert seit
    09.11.2007
    Ort
    Rhein Main (Darmstadt)
    Beiträge
    663
    Danke
    61
    Erhielt 112 Danke für 80 Beiträge

    Standard

    Zitat Zitat von Dummy Beitrag anzeigen
    Aber die Leserlichkeit des Codes ist ja nicht immer das einzige Kriterium für eine Anwendung. Manchmal kommt es auch auf die Performance an und dann kann es durchaus sinnvoll sein aus einer Schleife zuspringen.

    Ein generellen Verzicht halte ich für schwachsinn.
    Was die Performance betrifft, da irrt der Schreiber. Wenn ich in ST "well bahaved" programmiere, wird es nicht schlechter von der Performance!

    Aus dem gut strukturierten Programm macht der Compiler optimierten Maschinen Code und der ist in der Regel ausgefuchster als alles, was der Anwendungs Programmierer so zuwege bringt.
    Als Freelancer immer auf der Suche nach interessanten Projekten.
    Zitieren Zitieren Maschinencode  

  8. #27
    Registriert seit
    03.04.2008
    Beiträge
    6.205
    Danke
    237
    Erhielt 817 Danke für 691 Beiträge

    Standard

    Zitat Zitat von RobiHerb Beitrag anzeigen
    Aus dem gut strukturierten Programm macht der Compiler optimierten Maschinen Code und der ist in der Regel ausgefuchster als alles, was der Anwendungs Programmierer so zuwege bringt.
    Was zu beweisen wäre.
    Solch einen hyperintelligenten Compiler gibt es nicht.

    Noch ist der Programmierer für das Programm und der Performance verantwortlich.


    bike

  9. #28
    Registriert seit
    12.08.2010
    Beiträge
    240
    Danke
    60
    Erhielt 119 Danke für 58 Beiträge

    Standard

    Zitat Zitat von bike Beitrag anzeigen
    ... Wenn jemand schreibt es geht ohne Sprung beim Programmieren, dann hat er vermutlich noch nicht echt programmiert.
    Viel schlimmer und oft tödlicher für die Lesbarkeit und Funktion des Programmes sind in meinen Augen sogenannte "Sprungleisten".
    Aber das ist ein anderes Thema, denke ich
    bike
    Hallo Bike,

    Die „sogenannte Sprungleiste“ ist eine Möglichkeit in AWL etwas ähnliches wie eine CASE- Anweisung umzusetzen. Ich bin auch immer verunsichert, wenn mir ein Befehl unbekannt ist...
    Zitat Zitat von bike Beitrag anzeigen
    Noch ist der Programmierer für das Programm und der Performance verantwortlich.
    Für das Programm ja, aber welchen Einfluss hast du auf die Performance?
    Mit einer Gurken-CPU bist du gearscht, auch wenn du noch ein paar ms rausleiern kannst.
    Wenn du ein vernünftiges Gerät zur Verfügung hast, kommt es auf etwas umständlichen oder nicht optimalen Code nicht an. Wichtiger fände ich, dass das Programm übersichtlich und gut zu warten ist.
    Na ja, zum Glück gibt es auch noch hyperintelligente Programmierer. Dann kann nichts mehr schiefgehen...

    LG Cassandra

  10. #29
    Registriert seit
    03.04.2008
    Beiträge
    6.205
    Danke
    237
    Erhielt 817 Danke für 691 Beiträge

    Standard

    Zitat Zitat von Cassandra Beitrag anzeigen
    Die „sogenannte Sprungleiste“ ist eine Möglichkeit in AWL etwas ähnliches wie eine CASE- Anweisung umzusetzen. Ich bin auch immer verunsichert, wenn mir ein Befehl unbekannt ist...
    Bin ich verunsichert?
    Nicht wirklich, denn ich weiß was eine Sprungleiste auch was Case ist und nutze es wenn es sinnvoll ist.
    Aber wenn um einen Motor von rechts nach links mit verschieden Geschwindigkeiten zu fahren zwei verschachtelte Sprungleisten programmiert werden ich krieg ich das kotzen.

    Zitat Zitat von Cassandra Beitrag anzeigen
    Für das Programm ja, aber welchen Einfluss hast du auf die Performance?
    Mit einer Gurken-CPU bist du gearscht, auch wenn du noch ein paar ms rausleiern kannst.
    Wenn du ein vernünftiges Gerät zur Verfügung hast, kommt es auf etwas umständlichen oder nicht optimalen Code nicht an. Wichtiger fände ich, dass das Programm übersichtlich und gut zu warten ist.
    Durch den Programmcode kann man die ms finden, die oftmals den Unterschied in der Perfomance zum Mitbewerber ausmachen.
    Was hilft mir ein sauber strukturiertes, gut wartbares Programm, wenn mein Werkzeugwechsler auf einmal 500ms langsamer ist?
    Das bringt mir nur Probleme, daher muss ab und an auch die Lesebarkeit hinten anstehen.


    bike

  11. #30
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.788
    Danke
    398
    Erhielt 2.414 Danke für 2.010 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich glaube nicht, dass das Herauskitzeln von Mikrosekunden heute noch wirklich etwas bringt. Ich würde da ganz grundsätzlich den lesbararen Code immer über 2 oder 3 Anweisungen weniger stellen.

    Und was den Compiler angeht:
    Da habe ich schon solche und solche Überraschungen erlebt - hier speziell bei SCL. Der Compiler abeitet aber in jedem Fall nach den Vorgaben dessen, der ihn programmiert hat - er hat keine eigene Intelligenz und auch nicht wirklich die Fähigkeit der Code-Optimierung.

    Gruß
    Larry

Ähnliche Themen

  1. HMI aus Strukturierten Text beenden
    Von Thomas E. im Forum CODESYS und IEC61131
    Antworten: 8
    Letzter Beitrag: 25.02.2016, 15:35
  2. Array mit strukturierten Element Zur CSV-Datei
    Von ysh032 im Forum CODESYS und IEC61131
    Antworten: 0
    Letzter Beitrag: 14.09.2011, 14:23
  3. Com-text
    Von c.wehn im Forum HMI
    Antworten: 0
    Letzter Beitrag: 26.03.2010, 14:05
  4. Text an PC übergeben
    Von A.Ott im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 29.09.2009, 12:24
  5. COM TEXT
    Von Tappes im Forum Suche - Biete
    Antworten: 6
    Letzter Beitrag: 29.09.2005, 21:15

Stichworte

Lesezeichen

Berechtigungen

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