Frage zu ANY Pointer

Pico1184

Level-2
Beiträge
332
Reaktionspunkte
9
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich erstelle mir folgenden ANY Pointer:

Code:
      CALL  "FC_MAKE_ANY_POINTER"
       IN_IN_Typ             :=4
       IN_IN_Anzahl          :=100
       IN_IN_Index           :=0
       IN_IN_DB_Nr           :=202
       IN_IN_Operandenbereich:=4
       IN_DW_Zeiger          :=DW#16#0
       OUT_ANY_Anyzeiger     :=#t_ANY_DataPointer

Nun überge ich diese ANY Pointer an einen anderen Baustein:

Code:
      CALL  "FC_Bitleiste_schieben"
       IN_BO_Takt      :=M110.1
       IO_ANY_Bitleiste:=#t_ANY_DataPointer

In diesem Baustein "FC_Bitleiste_schieben" ist folgende Anweisung die ich nicht ganz verstehe:

Code:
   L P#IO_ANY_DataPointer
   LAR1 

   L     W [AR1,P#2.0]               // Anzahl der WORD der Bitleiste
   SRW   2
   T     #T_IN_Anzahl_Elemente

und zwar soll ja hier die Anzahl aus dem Pointer extrahiert werden. Als Anzahl habe ich 100 WORD angegeben (beim erstellen des Pointers).
Warum wird hier um zwei Stellen nach rechts geschoben"" Dann erhalte ich ja eine Anzahl von 25 Elementen anstatt 100????!!!!

Grüße Pico
 
Zurück
Oben