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

Ergebnis 1 bis 7 von 7

Thema: Adressregister

  1. #1
    Registriert seit
    14.05.2012
    Beiträge
    157
    Danke
    28
    Erhielt 4 Danke für 4 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich hätte eine Grundlegende frage, die mich wohl als totalen Trottel outet, aber hilft nicht.
    Wie oft kann ich das Adressregister eigentlich benutzen, bzw. wie verändert es sich.

    Folgendes:
    In einem Bestehenden Programm bastelt sich einer einen Pointer und arbeitet damit. L p##XXXX LAR1 usw usw.

    Wenn ich jetzt in einem anderen Baustein auch etwas ins AR1 lade, weil ich mir auch nen Poiner "basteln" will.... was passiert dann? Der bereits bestehende Pointer wird dann nicht mehr funktionieren oder?
    Zitieren Zitieren Adressregister  

  2. #2
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Zitat Zitat von Django2012 Beitrag anzeigen
    Ich hätte eine Grundlegende frage, die mich wohl als totalen Trottel outet, aber hilft nicht.
    Wie oft kann ich das Adressregister eigentlich benutzen, bzw. wie verändert es sich.

    Folgendes:
    In einem Bestehenden Programm bastelt sich einer einen Pointer und arbeitet damit. L p##XXXX LAR1 usw usw.

    Wenn ich jetzt in einem anderen Baustein auch etwas ins AR1 lade, weil ich mir auch nen Poiner "basteln" will.... was passiert dann? Der bereits bestehende Pointer wird dann nicht mehr funktionieren oder?
    Ja so ist es.
    Daher solltest du das Adressregister dort zu erst initialisieren bevor du es verwendest.
    In FC kannst du mit beiden Registern arbeiten, in FB musst du dich zuerst um die Retteung des AR2 kümmern und das später wieder herstellen.


    bike
    "Any fool can write code that a computer can understand.
    Good programmers write code that humans can understand."
    --Martin Fowler

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

    Django2012 (03.06.2012)

  4. #3
    Avatar von Django2012
    Django2012 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2012
    Beiträge
    157
    Danke
    28
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Wie meinst du das jetzt? Also mit dem initialisieren? Das wird ja den bestehenden Pointer wieder verändern?

  5. #4
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Wenn du mit Registern arbeitest, beschreibe die dort, bevor du diese benutzt.
    Wenn notwendig kannst du zuerst das Register sichern und später wieder zurückschreiben.
    Dazu gibt es LARx u8nd TARx

    Was hast du denn vor?


    bike
    "Any fool can write code that a computer can understand.
    Good programmers write code that humans can understand."
    --Martin Fowler

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

    Django2012 (03.06.2012)

  7. #5
    Registriert seit
    23.04.2009
    Ort
    Allgäu
    Beiträge
    3.042
    Danke
    241
    Erhielt 863 Danke für 617 Beiträge

    Standard

    Zitat Zitat von Django2012 Beitrag anzeigen
    Wie meinst du das jetzt? Also mit dem initialisieren?
    Du musst das Adressregister behandeln wie Temporäre Daten.
    Immer erst beschreiben (wie es schon bike schreibt) dann erst abfragen.
    Das AR1 kannst du in FC und FB, das AR2 nur in FC problemlos nutzen.
    Ein FB benutzt das AR2 selber, willst du es zusätzlich nutzen musst du eventuell den ursprünglichen Zustand nach deiner Benutzung wieder herstellen.
    Gruß
    Paule
    ----------------------------------------------------------------------------
    > manchmal verliert man und manchmal gewinnen die anderen <

  8. Folgender Benutzer sagt Danke zu Paule für den nützlichen Beitrag:

    Django2012 (03.06.2012)

  9. #6
    Avatar von Django2012
    Django2012 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2012
    Beiträge
    157
    Danke
    28
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Tja, was habe ich vor.... Ziemlich schwer zu erklären. In nem bestehenden Programm hat der Programmierer die Typverwaltung mit Pointern, nem Haufen DB Struct´s und Tausenden Lade,Transferiere,rechne,Transferiere usw. gelöst. Uferlos da noch durchzusteigen .
    Jezt hat sich an einem Typ was geändert, so dass ein paar Datenwörter 0 sein müssen damit ne Achse richtig fährt. Aus einem nicht erklärbaren Grund steht aber in ein paar von den Wörtern immer wieder mal 27423434 drinn. Den Wert, oder so nen ähnlichen konnte man mal am OP eingeben. Gibt´s jetzt nicht mehr.
    Auf jeden Fall ist es ne wichtige Anlage die immer laufen soll. Gelöst wurde jetzt hald mal so "pofisorisch" über L L#O T DBWXXX wenn der bestimmte Typ angewählt wurde. Jetzt ist aber aufgekommen das es insgesamt 5 Typen sind, in denen Die WErte jetzt 0 sein müssen. Ich hätte mir hald jetzt nen Pointer gebastelt und in die Wörter 0 geschrieben, weil ich gerne mal was mit Pointer gemacht hätte. Wie schon geschrieben, nutzt er das AR1 aber schon. Werd nur nen "Adresspointer" machen, also am schluss dann : T DBW[adresse] und adresse wird Typabhängig.
    Weis nicht ob das jetzt verständlich war, ich verstehs selbst kaum )

  10. #7
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    kind regards
    SoftMachine

Ähnliche Themen

  1. Adressregister retten
    Von Solaris im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 03.06.2012, 23:08
  2. Adressregister konsistenz
    Von FinalMistery im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 24.11.2011, 13:10
  3. Adressregister im FB
    Von moggi im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 02.03.2011, 09:58
  4. Adressregister u Pointer in FB
    Von Gerri im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 30.09.2009, 18:17
  5. Adressregister
    Von Ralle im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 31.08.2004, 10:46

Lesezeichen

Berechtigungen

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