Step 7 DB Adresse Berechnen

B

BlackDice

Guest
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin zusammen,
ich versuche grade eine Variable Adresse zu berechnen und dann in diese Adresse einen Wert rein zu schreiben. Ich denke dass der obere Teil funktioniert nur bleibt mein Programm in der Zeile "L DBD [AR1,P#0.0]" stehen.

Code:
      L     14      
      LAR1  

      L     #Pos1
      L     4
      *I    

      +AR1  


      U     "S1F"
      U     #1
      FP    M      4.0
      SPBNB _005
      L     "S1E"
      L     DBD [AR1,P#0.0]
      +R    
      T     DBD [AR1,P#0.0]
_005: NOP   0


BlackDice
 
Zuletzt bearbeitet:
- Wo öffnest Du den DB auf den sich Dein "L DBD..." bezieht?
- Adressen sind Bitadressen. Zur Adressierung von Byte/Word/DWord muß die Byte/Word/DWord-Nummer mit 8 multipliziert werden.
- Beginnt Deine Tabelle bei DBB14? Dann mußt Du P#14.0 addieren oder zunächst alles in Byte-Adresse berechnen und dann mit 8 multiplizieren.

Code:
      L     #PosSilo1
      L     4          //Größe Tabelleneinträge: REAL (DBD) ist 4 Bytes
      *I
      L     14         //Anfang der Tabelle: DBD14
      +D
      SLD   3          //(entspricht *8) Byte-Adresse-->Bitadresse P#xx.0
      LAR1

      U     "S1F"
      U     #Silo1
      FP    M      4.0
      SPBNB _005
      L     "S1E"
      AUF   "MeinDB"
      L     DBD [AR1,P#0.0]
      +R    
      T     DBD [AR1,P#0.0]
_005: NOP   0

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke das klappt.

Code:
      L     MW    45
      L     4
      *I    

      L     14
      +D    
      SLD   3
      LAR1  

      U     "S1F"
      U     #S1
      FP    M      4.0

      SPBNB _005
      L     "S1E"
      AUF   DB     1
      L     DBD [AR1,P#0.0]
      +R    
      T     DBD [AR1,P#0.0]
_005: NOP   0
 
Zuletzt bearbeitet:
Zurück
Oben