S7-PCI315:Befehlsvorrat: Unterschied zwischen den Versionen

Aus IBHsoftec Wiki
Wechseln zu: Navigation, Suche
 
(11 dazwischenliegende Versionen des gleichen Benutzers werden nicht angezeigt)
Zeile 10: Zeile 10:
 
! Operation !! Operand !! Funktionsbeschreibung
 
! Operation !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| U ||style="width: 5em"|  ||style="width: 20em"| UND mit Abfrage auf ,,1“
+
|style="width: 5em"| U ||style="width: 5em"|  ||style="width: 22em"| UND mit Abfrage auf ,,1“
 
|-
 
|-
 
| UN ||  || UND mit Abfrage auf ,,0“
 
| UN ||  || UND mit Abfrage auf ,,0“
Zeile 58: Zeile 58:
 
| BIE ||  || Binärergebnis
 
| BIE ||  || Binärergebnis
 
|}
 
|}
 
 
  
 
== Sonstige Verknüpfungen ==
 
== Sonstige Verknüpfungen ==
Zeile 68: Zeile 66:
 
! Operation !! Operand !! Funktionsbeschreibung
 
! Operation !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| U( ||style="width: 5em"|  ||style="width: 20em"| UND Klammer auf
+
|style="width: 5em"| U( ||style="width: 5em"|  ||style="width: 22em"| UND Klammer auf
 
|-
 
|-
 
| UN( ||  || UND-NICHT Klammer auf
 
| UN( ||  || UND-NICHT Klammer auf
Zeile 93: Zeile 91:
 
|-
 
|-
 
|}
 
|}
 
  
 
{| class="wikitable"
 
{| class="wikitable"
Zeile 99: Zeile 96:
 
! Operation  !! Operand !! Funktionsbeschreibung
 
! Operation  !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| = ||style="width: 5em"|  ||style="width: 20em"| Zuweisung
+
|style="width: 5em"| = ||style="width: 5em"|  ||style="width: 22em"| Zuweisung
 
|-
 
|-
 
| S ||  || Setze
 
| S ||  || Setze
Zeile 121: Zeile 118:
 
|  || DIX || eines Instanz-Datenbits
 
|  || DIX || eines Instanz-Datenbits
 
|}
 
|}
 
 
  
 
== Master Control Relay ==
 
== Master Control Relay ==
Zeile 130: Zeile 125:
 
! Operation  !! Operand !! Funktionsbeschreibung
 
! Operation  !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| MCRA ||style="width: 5em"|  ||style="width: 20em"| MCR-Bereich aktivieren
+
|style="width: 5em"| MCRA ||style="width: 5em"|  ||style="width: 22em"| MCR-Bereich aktivieren
 
|-
 
|-
 
| MCRD ||  || MCR-Bereich deaktivieren
 
| MCRD ||  || MCR-Bereich deaktivieren
Zeile 138: Zeile 133:
 
| )MCR ||  || MCR-Zone schließen
 
| )MCR ||  || MCR-Zone schließen
 
|}
 
|}
 
 
  
 
== Lade / Transferoperationen ==
 
== Lade / Transferoperationen ==
Zeile 147: Zeile 140:
 
! Operation  !! Operand !! Funktionsbeschreibung
 
! Operation  !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| L ||style="width: 5em"|  ||style="width: 20em"| Operand laden
+
|style="width: 5em"| L ||style="width: 5em"|  ||style="width: 22em"| Operand laden
 
|-
 
|-
 
| T ||  || Operand transferieren
 
| T ||  || Operand transferieren
Zeile 159: Zeile 152:
 
|  || AB || Ausgangsbyte
 
|  || AB || Ausgangsbyte
 
|-
 
|-
|  || AW || Ausgangsdoppelwort
+
|  || AW || Ausgangswort
 
|-
 
|-
 
|  || AD || Ausgangsdoppelwort
 
|  || AD || Ausgangsdoppelwort
Zeile 209: Zeile 202:
 
| L || DILG || Lade Datenbausteinlänge (Instanz-DB)
 
| L || DILG || Lade Datenbausteinlänge (Instanz-DB)
 
|}
 
|}
 
 
  
 
== Peripheriezugriffe ==
 
== Peripheriezugriffe ==
Zeile 218: Zeile 209:
 
! Operation  !! Operand !! Funktionsbeschreibung
 
! Operation  !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| L ||style="width: 5em"| PEB ||style="width: 20em"| Peripherieeingangsbyte
+
|style="width: 5em"| L ||style="width: 5em"| PEB ||style="width: 22em"| Peripherieeingangsbyte
 
|-
 
|-
 
| L || PEW || Peripherieeingangswort
 
| L || PEW || Peripherieeingangswort
Zeile 230: Zeile 221:
 
| T || PAD || Peripherieausgangsdoppelwort
 
| T || PAD || Peripherieausgangsdoppelwort
 
|}
 
|}
 
 
  
 
== Akkumulatorbefehle ==
 
== Akkumulatorbefehle ==
Zeile 239: Zeile 228:
 
! Operation  !! Operand !! Funktionsbeschreibung
 
! Operation  !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| PUSH ||style="width: 5em"|  ||style="width: 20em"| Akkus ,,nach oben“ schieben
+
|style="width: 5em"| PUSH ||style="width: 5em"|  ||style="width: 22em"| Akkus ,,nach oben“ schieben
 
|-
 
|-
 
| POP ||  || Akkus ,,nach unten“ schieben
 
| POP ||  || Akkus ,,nach unten“ schieben
Zeile 253: Zeile 242:
 
| TAD ||  || Akku 1 alle Bytes tauschen
 
| TAD ||  || Akku 1 alle Bytes tauschen
 
|}
 
|}
 
 
  
 
== Schiebe- und Rotieroperationen ==
 
== Schiebe- und Rotieroperationen ==
Zeile 262: Zeile 249:
 
! Operation  !! Operand !! Funktionsbeschreibung
 
! Operation  !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| SLW ||style="width: 5em"|  ||style="width: 20em"| Schieben links wortweise
+
|style="width: 5em"| SLW ||style="width: 5em"|  ||style="width: 22em"| Schieben links wortweise
 
|-
 
|-
 
| SLD ||  || Schieben links doppelwortweise
 
| SLD ||  || Schieben links doppelwortweise
Zeile 286: Zeile 273:
 
|  ||  || Schiebezahl im Akku 2
 
|  ||  || Schiebezahl im Akku 2
 
|}
 
|}
 
 
  
 
== Zeitoperationen ==
 
== Zeitoperationen ==
Zeile 295: Zeile 280:
 
! Operation  !! Operand !! Funktionsbeschreibung
 
! Operation  !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| SI ||style="width: 5em"| T ||style="width: 20em"| Starten als Impuls
+
|style="width: 5em"| SI ||style="width: 5em"| T ||style="width: 22em"| Starten als Impuls
 
|-
 
|-
 
| SV || T || Starten als verlängerter Impuls
 
| SV || T || Starten als verlängerter Impuls
Zeile 309: Zeile 294:
 
| FR || T || Zeitfunktion freigeben
 
| FR || T || Zeitfunktion freigeben
 
|}
 
|}
 
 
  
 
== Zähloperationen ==
 
== Zähloperationen ==
Zeile 319: Zeile 302:
 
! Operation  !! Operand !! Funktionsbeschreibung
 
! Operation  !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| ZV ||style="width: 5em"| Z ||style="width: 20em"| Zählfunktion vorwärtszählen
+
|style="width: 5em"| ZV ||style="width: 5em"| Z ||style="width: 22em"| Zählfunktion vorwärtszählen
 
|-
 
|-
 
| ZR || Z || Zählfunktion rückwärtszählen
 
| ZR || Z || Zählfunktion rückwärtszählen
Zeile 329: Zeile 312:
 
| FR || Z || Zählfunktion freigeben
 
| FR || Z || Zählfunktion freigeben
 
|}
 
|}
 
 
 
  
 
== Wortoperationen ==
 
== Wortoperationen ==
Zeile 339: Zeile 319:
 
! Operation  !! Operand !! Funktionsbeschreibung
 
! Operation  !! Operand !! Funktionsbeschreibung
 
|-
 
|-
|style="width: 5em"| UW ||style="width: 5em"|  ||style="width: 20em"| UND wortweise
+
|style="width: 5em"| UW ||style="width: 5em"|  ||style="width: 22em"| UND wortweise
 
|-
 
|-
 
| UD ||  || UND doppelwortweise
 
| UD ||  || UND doppelwortweise
Zeile 356: Zeile 336:
 
|}
 
|}
  
 +
== Arithmetische Operationen ==
  
=== Arithmetische Operationen ===
+
{| class="wikitable"
 +
|-
 +
! Operation  !! Operand !! Funktionsbeschreibung
 +
|-
 +
|style="width: 5em"| ==I ||style="width: 5em"|  ||style="width: 22em"| Integervergleich GLEICH
 +
|-
 +
| <>I ||  || Integervergleich UNGLEICH
 +
|-
 +
| >I ||  || Integervergleich GRÖSSER
 +
|-
 +
| >=I ||  || Integervergleich GRÖSSER GLEICH
 +
|-
 +
| <I ||  || Integervergleich KLEINER
 +
|-
 +
| <=I ||  || Integervergleich KLEINER GLEICH
 +
|-
 +
| ==D ||  || Doppel-Integervergleich GLEICH
 +
|-
 +
| <>D ||  || Doppel-Integervergleich UNGLEICH
 +
|-
 +
| >D ||  || Doppel-Integervergleich GRÖSSER
 +
|-
 +
| >=D ||  || Doppel-Integervergleich GRÖSSER GLEICH
 +
|-
 +
| <D ||  || Doppel-Integervergleich KLEINER
 +
|-
 +
| <=D ||  || Doppel-Integervergleich KLEINER GLEICH
 +
|-
 +
| ==R ||  || REAL-Zahl Vergleich GLEICH
 +
|-
 +
| <>R ||  || REAL-Zahl Vergleich UNGLEICH
 +
|-
 +
| >R ||  || REAL-Zahl Vergleich GRÖSSER
 +
|-
 +
| >=R ||  || REAL-Zahl Vergleich GRÖSSER GLEICH
 +
|-
 +
| <R ||  || REAL-Zahl Vergleich KLEINER
 +
|-
 +
| <=R ||  || REAL-Zahl Vergleich KLEINER GLEICH
 +
|-
 +
| SIN ||  || Sinus
 +
|-
 +
| COS ||  || Cosinus
 +
|-
 +
| TAN ||  || Tangens
 +
|-
 +
| ASIN ||  || Arcussinus
 +
|-
 +
| ACOS ||  || Arcuscosinus
 +
|-
 +
| ATAN ||  || Arcustangens
 +
|-
 +
| SQR ||  || Quadrieren
 +
|-
 +
| SQRT ||  || Wurzel (Radizieren)
 +
|-
 +
| EXP ||  || Exponent zur Basis e
 +
|-
 +
| LN ||  || Natürlicher Logarithmus
 +
|-
 +
| +I ||  || Integer Addition
 +
|-
 +
| -I ||  || Integer Subtraktion
 +
|-
 +
| *I ||  || Integer Multiplikation
 +
|-
 +
| /I ||  || Integer Division
 +
|-
 +
| +D ||  || Doppel-Integer Addition
 +
|-
 +
| -D ||  || Doppel-Integer Subtraktion
 +
|-
 +
| *D ||  || Doppel-Integer Multiplikation
 +
|-
 +
| /D ||  || Doppel-Integer Division
 +
|-
 +
| +R ||  || Realzahl Addition
 +
|-
 +
| -R ||  || Realzahl Subtraktion
 +
|-
 +
| *R ||  || Realzahl Multiplikation
 +
|-
 +
| /R ||  || Realzahl Division
 +
|-
 +
| MOD ||  || Doppel-Integer Division (Rest)
 +
|-
 +
| + || konst || Addieren einer Konstante
 +
|-
 +
| +P# || konst || Addieren eines Zeigers
 +
|-
 +
| DEC ||  || Dekrementieren
 +
|-
 +
| INC ||  || Inkrementieren
 +
|}
  
 +
== Umwandlungsfunktionen ==
  
 +
{| class="wikitable"
 +
|-
 +
! Operation  !! Operand !! Funktionsbeschreibung
 +
|-
 +
|style="width: 5em"| ITD ||style="width: 5em"|  ||style="width: 22em"| Wandlung INT nach DINT
 +
|-
 +
| ITB ||  || Wandlung INT nach BCD
 +
|-
 +
| DTB ||  || Wandlung DINT nach BCD
 +
|-
 +
| DTR ||  || Wandlung DINT nach REAL
 +
|-
 +
| BTI ||  || Wandlung BCD nach INT
 +
|-
 +
| BTD ||  || Wandlung BCD nach DINT
 +
|-
 +
| RND ||  || Rundung zur nächsten ganzen Zahl
 +
|-
 +
| RND+ ||  || Rundung zur nächstgrößeren Zahl
 +
|-
 +
| RND- ||  || Rundung zur nächstkleineren Zahl
 +
|-
 +
| TRUNC ||  || ohne Rundung
 +
|-
 +
| INVI ||  || INT-Einerkomplement
 +
|-
 +
| INVD ||  || DINT-Einerkomplement
 +
|-
 +
| NEGI ||  || INT-Negation
 +
|-
 +
| NEGD ||  || DINT-Negation
 +
|-
 +
| NEGR ||  || REAL-Negation
 +
|-
 +
| ABS ||  || REAL-Betragsbildung
 +
|}
  
  
 +
== Sprungoperationen ==
  
Operation
+
{| class="wikitable"
 +
|-
 +
! Operation !! Operand !! Funktionsbeschreibung
 +
|-
 +
|style="width: 5em"| SPA ||style="width: 5em"| Ziel ||style="width: 22em"| Sprung absolut (unbedingt)
 +
|-
 +
| SPB || Ziel || Sprung wenn VKE = 1
 +
|-
 +
| SPBB || Ziel || Sprung wenn VKE = 1 (VKE speichern)
 +
|-
 +
| SPBN || Ziel || Sprung wenn VKE = 0
 +
|-
 +
| SPBNB || Ziel || Sprung wenn VKE = 0 (VKE speichern)
 +
|-
 +
| SPBI || Ziel || Sprung wenn BIE = 1
 +
|-
 +
| SPBIN || Ziel || Sprung wenn BIE = 0
 +
|-
 +
| SPZ || Ziel || Sprung bei Vergleichsergebnis = 0
 +
|-
 +
| SPN || Ziel || Sprung bei Vergleichsergebnis ≠ 0
 +
|-
 +
| SPP || Ziel || Sprung bei Vergleichsergebnis > 0
 +
|-
 +
| SPPZ || Ziel || Sprung bei Vergleichsergebnis >= 0
 +
|-
 +
| SPM || Ziel || Sprung bei Vergleichsergebnis < 0
 +
|-
 +
| SPMZ || Ziel || Sprung bei Vergleichsergebnis <= 0
 +
|-
 +
| SPU || Ziel || Sprung bei Vergleichsergebnis ungültig
 +
|-
 +
| SPO || Ziel || Sprung bei Overflow
 +
|-
 +
| SPS || Ziel || Sprung bei speicherndem Overflow
 +
|-
 +
| SPL || Ziel || Sprungverteiler
 +
|-
 +
| LOOP || Ziel || Schleife
 +
|}
  
Operand
+
== Aufruf-Operationen ==
  
Funktionsbeschreibung
+
{| class="wikitable"
 +
|-
 +
! Operation  !! Operand !! Funktionsbeschreibung
 +
|-
 +
|style="width: 5em"| CALL FB ||style="width: 5em"|  ||style="width: 22em"| Sprung zum Funktionsbaustein
 +
|-
 +
| CALL FC ||  || Sprung zur Funktion
 +
|-
 +
| CALL SFB ||  || Sprung zum System-Funktionsbaustein
 +
|-
 +
| CALL SFC ||  || Sprung zur System-Funktion
 +
|-
 +
| UC FB ||  || Funktionsbaustein absolut aufrufen
 +
|-
 +
| CC FB ||  || Funktionsbaustein bedingt aufrufen
 +
|-
 +
| UC FC ||  || Funktion absolut aufrufen
 +
|-
 +
| CC FC ||  || Funktion bedingt aufrufen
 +
|-
 +
| BEA ||  || Bausteinende absolut
 +
|-
 +
| BEB ||  || Bausteinende bedingt
 +
|-
 +
| BE ||  || Bausteinende
 +
|-
 +
| AUF || DB || Datenbaustein öffnen
 +
|-
 +
|  || DI || Instanz-Datenbaustein öffnen
 +
|-
 +
| TDB ||  || Datenbausteinregister tauschen
 +
|}
  
==I
+
== Indirekte Adressierung ==
  
 
 
  
Integervergleich GLEICH
+
{| class="wikitable"
 +
|-
 +
! Operation  !! Operand !! Funktionsbeschreibung
 +
|-
 +
|style="width: 5em"| LAR1 ||style="width: 5em"|  ||style="width: 22em"| AR1 laden
 +
|-
 +
| LAR2 ||  || AR2 laden
 +
|-
 +
|  || MD || mit Merkerdoppelwort
 +
|-
 +
|  || LD || mit Lokaldatendoppelwort
 +
|-
 +
|  || DBD || mit Datenbausteindoppelwort
 +
|-
 +
|  || DID || mit Instanz-Datenbausteindoppelwort
 +
|-
 +
| LAR1 ||  || AR1 laden mit Inhalt aus Akku1
 +
|-
 +
| LAR2 ||  || AR2 laden mit Inhalt aus Akku1
 +
|-
 +
| LAR1 || AR2 || AR1 laden mit Inhalt aus A2
 +
|-
 +
| LAR1 || P# || AR1 laden mit Zeiger
 +
|-
 +
| LAR2 || P# || AR2 laden mit Zeiger
 +
|-
 +
| TAR1 ||  || Schreibe AR1
 +
|-
 +
| TAR2 ||  || Schreibe AR2
 +
|-
 +
|  || MD || in Merkerdoppelwort
 +
|-
 +
|  || LD || in Lokaldatendoppelwort
 +
|-
 +
|  || DBD || in Datenbausteindoppelwort
 +
|-
 +
|  || DID || in Instanz-Datenbausteindoppelwort
 +
|-
 +
| TAR1 ||  || Schreibe AR1 in Akku1
 +
|-
 +
| TAR2 ||  || Schreibe AR2 in Akku1
 +
|-
 +
| TAR1 || AR2 || AR1 nach AR2 transferieren
 +
|-
 +
| TAR ||  || AR1 mit AR2 tauschen
 +
|-
 +
| +AR1 ||  || Addiere Akku1 zu AR1
 +
|-
 +
| +AR2 ||  || Addiere Akku1 zu AR2
 +
|-
 +
| +AR1 || P# || Addiere Pointer zu AR1
 +
|-
 +
| +AR2 || P# || Addiere Pointer zu AR2
 +
|}
  
&lt;&gt;I
+
== Sonstige Operationen ==
  
 
+
{| class="wikitable"
 
+
|-
Integervergleich UNGLEICH
+
! Operation !! Operand !! Funktionsbeschreibung
 
+
|-
&gt;I
+
|style="width: 5em"| NOP ||style="width: 5em"| 0 ||style="width: 22em"| Nulloperation
 
+
|-
 
+
| NOP || 1 || Nulloperation
 
+
|-
Integervergleich GRÖSSER
+
| BLD || konst || Bildaufbau
 
+
|}
&gt;=I
+
 
+
 
+
 
+
Integervergleich GRÖSSER GLEICH
+
 
+
&lt;I
+
 
+
 
+
 
+
Integervergleich KLEINER&lt;
+
 
+
&lt;=I
+
 
+
 
+
 
+
Integervergleich KLEINER GLEICH
+
 
+
==D
+
 
+
 
+
 
+
Doppel-Integervergleich GLEICH
+
 
+
&lt;&gt;D
+
 
+
 
+
 
+
Doppel-Integervergleich UNGLEICH
+
 
+
&gt;D
+
 
+
 
+
 
+
Doppel-Integervergleich GRÖSSER
+
 
+
&gt;=D
+
 
+
 
+
 
+
Doppel-Integervergleich GRÖSSER GLEICH
+
 
+
&lt;D
+
 
+
 
+
 
+
Doppel-Integervergleich KLEINER
+
 
+
&lt;=D
+
 
+
 
+
 
+
Doppel-Integervergleich KLEINER GLEICH
+
 
+
==R
+
 
+
 
+
 
+
REAL-Zahl Vergleich GLEICH
+
 
+
&lt;&gt;R
+
 
+
 
+
 
+
REAL-Zahl Vergleich UNGLEICH
+
 
+
&gt;R
+
 
+
 
+
 
+
REAL-Zahl Vergleich GRÖSSER
+
 
+
&gt;=R
+
 
+
 
+
 
+
REAL-Zahl Vergleich GRÖSSER GLEICH
+
 
+
&lt;R
+
 
+
 
+
 
+
REAL-Zahl Vergleich KLEINER
+
 
+
&lt;=R
+
 
+
 
+
 
+
REAL-Zahl Vergleich KLEINER GLEICH
+
 
+
SIN
+
 
+
 
+
 
+
Sinus
+
 
+
COS
+
 
+
 
+
 
+
Cosinus
+
 
+
TAN
+
 
+
 
+
 
+
Tangens
+
 
+
ASIN
+
 
+
 
+
 
+
Arcussinus
+
 
+
ACOS
+
 
+
 
+
 
+
Arcuscosinus
+
 
+
ATAN
+
 
+
 
+
 
+
Arcustangens
+
 
+
SQR
+
 
+
 
+
 
+
Quadrieren
+
 
+
SQRT
+
 
+
 
+
 
+
Wurzel (Radizieren)
+
 
+
EXP
+
 
+
 
+
 
+
Exponent zur Basis e
+
 
+
LN
+
 
+
 
+
 
+
Natürlicher Logarithmus
+
 
+
+I
+
 
+
 
+
 
+
Integer Addition
+
 
+
-I
+
 
+
 
+
 
+
Integer Subtraktion
+
 
+
*I
+
 
+
 
+
 
+
Integer Multiplikation
+
 
+
/I
+
 
+
 
+
 
+
Integer Division
+
 
+
+D
+
 
+
 
+
 
+
Doppel-Integer Addition
+
 
+
-D
+
 
+
 
+
 
+
Doppel-Integer Subtraktion
+
 
+
*D
+
 
+
 
+
 
+
Doppel-Integer Multiplikation
+
 
+
/D
+
 
+
 
+
 
+
Doppel-Integer Division
+
 
+
+R
+
 
+
 
+
 
+
Realzahl Addition
+
 
+
-R
+
 
+
 
+
 
+
Realzahl Subtraktion
+
 
+
*R
+
 
+
 
+
 
+
Realzahl Multiplikation
+
 
+
/R
+
 
+
 
+
 
+
Realzahl Division
+
 
+
MOD
+
 
+
 
+
 
+
Doppel-Integer Division (Rest)
+
 
+
+
+
 
+
konst
+
 
+
Addieren einer Konstante
+
 
+
+P#
+
 
+
konst
+
 
+
Addieren eines Zeigers
+
 
+
DEC
+
 
+
 
+
 
+
Dekrementieren
+
 
+
INC
+
 
+
 
+
 
+
Inkrementieren
+
 
+
=== Umwandlungsfunktionen ===
+
 
+
Operation
+
 
+
Operand
+
 
+
Funktionsbeschreibung
+
 
+
ITD
+
 
+
 
+
 
+
Wandlung INT nach DINT
+
 
+
ITB
+
 
+
 
+
 
+
Wandlung INT nach BCD
+
 
+
DTB
+
 
+
 
+
 
+
Wandlung DINT nach BCD
+
 
+
DTR
+
 
+
 
+
 
+
Wandlung DINT nach REAL
+
 
+
BTI
+
 
+
 
+
 
+
Wandlung BCD nach INT
+
 
+
BTD
+
 
+
 
+
 
+
Wandlung BCD nach DINT
+
 
+
RND
+
 
+
 
+
 
+
Rundung zur nächsten ganzen Zahl
+
 
+
RND+
+
 
+
 
+
 
+
Rundung zur nächstgrößeren Zahl
+
 
+
RND-
+
 
+
 
+
 
+
Rundung zur nächstkleineren Zahl
+
 
+
TRUNC
+
 
+
 
+
 
+
ohne Rundung
+
 
+
INVI
+
 
+
 
+
 
+
INT-Einerkomplement
+
 
+
INVD
+
 
+
 
+
 
+
DINT-Einerkomplement
+
 
+
NEGI
+
 
+
 
+
 
+
INT-Negation
+
 
+
NEGD
+
 
+
 
+
 
+
DINT-Negation
+
 
+
NEGR
+
 
+
 
+
 
+
REAL-Negation
+
 
+
ABS
+
 
+
 
+
 
+
REAL-Betragsbildung
+
 
+
=== Sprungoperationen ===
+
 
+
Operation
+
 
+
Operand
+
 
+
Funktionsbeschreibung
+
 
+
SPA
+
 
+
Ziel
+
 
+
Sprung absolut (unbedingt)
+
 
+
SPB
+
 
+
Ziel
+
 
+
Sprung wenn VKE = 1
+
 
+
SPBB
+
 
+
Ziel
+
 
+
Sprung wenn VKE = 1 (VKE speichern)
+
 
+
SPBN
+
 
+
Ziel
+
 
+
Sprung wenn VKE = 0
+
 
+
SPBNB
+
 
+
Ziel
+
 
+
Sprung wenn VKE = 0 (VKE speichern)
+
 
+
SPBI
+
 
+
Ziel
+
 
+
Sprung wenn BIE = 1
+
 
+
SPBIN
+
 
+
Ziel
+
 
+
Sprung wenn BIE = 0
+
 
+
SPZ
+
 
+
Ziel
+
 
+
Sprung bei Vergleichsergebnis = 0
+
 
+
SPN
+
 
+
Ziel
+
 
+
Sprung bei Vergleichsergebnis ≠ 0
+
 
+
SPP
+
 
+
Ziel
+
 
+
Sprung bei Vergleichsergebnis &gt; 0
+
 
+
SPPZ
+
 
+
Ziel
+
 
+
Sprung bei Vergleichsergebnis &gt;= 0
+
 
+
SPM
+
 
+
Ziel
+
 
+
Sprung bei Vergleichsergebnis &lt; 0
+
 
+
SPMZ
+
 
+
Ziel
+
 
+
Sprung bei Vergleichsergebnis &lt;= 0
+
 
+
SPU
+
 
+
Ziel
+
 
+
Sprung bei Vergleichsergebnis ungültig
+
 
+
SPO
+
 
+
Ziel
+
 
+
Sprung bei Overflow
+
 
+
SPS
+
 
+
Ziel
+
 
+
Sprung bei speicherndem Overflow
+
 
+
SPL
+
 
+
Ziel
+
 
+
Sprungverteiler
+
 
+
LOOP
+
 
+
Ziel
+
 
+
Schleife
+
 
+
=== Aufruf-Operationen ===
+
 
+
Operation
+
 
+
Operand
+
 
+
Funktionsbeschreibung
+
 
+
CALL FB
+
 
+
 
+
 
+
Sprung zum Funktionsbaustein
+
 
+
CALL FC
+
 
+
 
+
 
+
Sprung zur Funktion
+
 
+
CALL SFB
+
 
+
 
+
 
+
Sprung zum System-Funktionsbaustein
+
 
+
CALL SFC
+
 
+
 
+
 
+
Sprung zur System-Funktion
+
 
+
UC FB
+
 
+
 
+
 
+
Funktionsbaustein absolut aufrufen
+
 
+
CC FB
+
 
+
 
+
 
+
Funktionsbaustein bedingt aufrufen
+
 
+
UC FC
+
 
+
 
+
 
+
Funktion absolut aufrufen
+
 
+
CC FC
+
 
+
 
+
 
+
Funktion bedingt aufrufen
+
 
+
BEA
+
 
+
 
+
 
+
Bausteinende absolut
+
 
+
BEB
+
 
+
 
+
 
+
Bausteinende bedingt
+
 
+
BE
+
 
+
 
+
 
+
Bausteinende
+
 
+
AUF
+
 
+
DB
+
 
+
Datenbaustein öffnen
+
 
+
 
+
 
+
DI
+
 
+
Instanz-Datenbaustein öffnen
+
 
+
TDB
+
 
+
 
+
 
+
Datenbausteinregister tauschen
+
 
+
=== Indirekte Adressierung ===
+
 
+
Operation
+
 
+
Operand
+
 
+
Funktionsbeschreibung
+
 
+
LAR1
+
 
+
 
+
 
+
AR1 laden
+
 
+
LAR2
+
 
+
 
+
 
+
AR2 laden
+
 
+
 
+
 
+
MD
+
 
+
mit Merkerdoppelwort
+
 
+
 
+
 
+
LD
+
 
+
mit Lokaldatendoppelwort
+
 
+
 
+
 
+
DBD
+
 
+
mit Datenbausteindoppelwort
+
 
+
 
+
 
+
DID
+
 
+
mit Instanz-Datenbausteindoppelwort
+
 
+
LAR1
+
 
+
 
+
 
+
AR1 laden mit Inhalt aus Akku1
+
 
+
LAR2
+
 
+
 
+
 
+
AR2 laden mit Inhalt aus Akku1
+
 
+
LAR1
+
 
+
AR2
+
 
+
AR1 laden mit Inhalt aus A2
+
 
+
LAR1
+
 
+
P#
+
 
+
AR1 laden mit Zeiger
+
 
+
LAR2
+
 
+
P#
+
 
+
AR2 laden mit Zeiger
+
 
+
TAR1
+
 
+
 
+
 
+
Schreibe AR1
+
 
+
TAR2
+
 
+
 
+
 
+
Schreibe AR2
+
 
+
 
+
 
+
MD
+
 
+
in Merkerdoppelwort
+
 
+
 
+
 
+
LD
+
 
+
in Lokaldatendoppelwort
+
 
+
 
+
 
+
DBD
+
 
+
in Datenbausteindoppelwort
+
 
+
 
+
 
+
DID
+
 
+
in Instanz-Datenbausteindoppelwort
+
 
+
TAR1
+
 
+
 
+
 
+
Schreibe AR1 in Akku1
+
 
+
TAR2
+
 
+
 
+
 
+
Schreibe AR2 in Akku1
+
 
+
TAR1
+
 
+
AR2
+
 
+
AR1 nach AR2 transferieren
+
 
+
TAR
+
 
+
 
+
 
+
AR1 mit AR2 tauschen
+
 
+
+AR1
+
 
+
 
+
 
+
Addiere Akku1 zu AR1
+
 
+
+AR2
+
 
+
 
+
 
+
Addiere Akku1 zu AR2
+
 
+
+AR1
+
 
+
P#
+
 
+
Addiere Pointer zu AR1
+
 
+
+AR2
+
 
+
P#
+
 
+
Addiere Pointer zu AR2
+
 
+
=== Sonstige Operationen ===
+
 
+
Operation
+
 
+
Operand
+
 
+
Funktionsbeschreibung
+
 
+
NOP
+
 
+
0
+
 
+
Nulloperation
+
 
+
NOP
+
 
+
1
+
 
+
Nulloperation
+
 
+
BLD
+
 
+
konst
+
 
+
Bildaufbau
+

Aktuelle Version vom 2. August 2012, 09:00 Uhr

Operationsvorrat

Die S7-PCI315 besitzt den kompletten Befehlsvorrat der SIMATIC® S7-315 CPU.

Binäre Verknüpfungsoperationen

Operation Operand Funktionsbeschreibung
U UND mit Abfrage auf ,,1“
UN UND mit Abfrage auf ,,0“
O ODER mit Abfrage auf ,,1“
ON ODER mit Abfrage auf ,,0“
X Exklusiv-ODER mit Abfrage auf ,,1“
XN Exklusiv-ODER mit Abfrage auf ,,0“
E eines Eingangs
A eines Ausgangs
M eines Merkers
L eines Lokaldatenbits
T einer Zeitfunktion
Z einer Zählfunktion
DBX eines Globaldatenbits
DIX eines Instanzdatenbits
==0 Ergebnis gleich Null
<>0 Ergebnis ungleich Null
>0 Ergebnis größer Null
>=0 Ergebnis größer-gleich Null
<0 Ergebnis kleiner Null
<=0 Ergebnis kleiner-gleich Null
UO ungültiges Ergebnis
OV Overflow
OS Überlauf (speichernd)
BIE Binärergebnis

Sonstige Verknüpfungen

Operation Operand Funktionsbeschreibung
U( UND Klammer auf
UN( UND-NICHT Klammer auf
O( ODER Klammer auf
ON( ODER-NICHT Klammer auf
X( Exklusiv-ODER Klammer auf
XN( Exklusiv-ODER-NICHT Klammer auf
) Klammer zu
O ODER-Verknüpfung von UND
NOT VKE negieren
SET VKE setzen
CLR VKE rücksetzen
SAVE VKE ins BIE retten
Operation Operand Funktionsbeschreibung
= Zuweisung
S Setze
R Rücksetze
FP Positive Flanke
FN Negative Flanke
E eines Eingangsbits
A eines Ausgangsbits
M eines Merkerbits
L eines Lokaldatenbits
DBX eines Datenbits
DIX eines Instanz-Datenbits

Master Control Relay

Operation Operand Funktionsbeschreibung
MCRA MCR-Bereich aktivieren
MCRD MCR-Bereich deaktivieren
MCR( MCR-Zone öffnen
)MCR MCR-Zone schließen

Lade / Transferoperationen

Operation Operand Funktionsbeschreibung
L Operand laden
T Operand transferieren
EB Eingangsbyte
EW Eingangswort
ED Eingangsdoppelwort
AB Ausgangsbyte
AW Ausgangswort
AD Ausgangsdoppelwort
MB Merkerbyte
MW Merkerwort
MD Merkerdoppelwort
LB Lokaldatenbyte
LW Lokaldatenwort
LD Lokaldatendoppelwort
DBB Datenbausteinbyte
DBW Datenbausteinwort
DBD Datenbausteindoppelwort
DIB Instanz-Datenbausteinbyte
DIW Instanz-Datenbausteinwort
DID Instanz-Datenbausteindoppelwort
STW Statuswort
L konst Laden einer Konstanten
L #Pointer Laden eines Zeigers
L T Zeitwert
LC T Zeitwert (BCD codiert)
L Z Zähler
LC C Zähler (BCD codiert)
L DBNO Lade Datenbausteinnummer
L DBLG Lade Datenbausteinlänge
L DINO Lade Datenbausteinnummer (Instanz-DB)
L DILG Lade Datenbausteinlänge (Instanz-DB)

Peripheriezugriffe

Operation Operand Funktionsbeschreibung
L PEB Peripherieeingangsbyte
L PEW Peripherieeingangswort
L PED Peripherieeingangsdoppelwort
T PAB Peripherieausgangsbyte
T PAW Peripherieausgangswort
T PAD Peripherieausgangsdoppelwort

Akkumulatorbefehle

Operation Operand Funktionsbeschreibung
PUSH Akkus ,,nach oben“ schieben
POP Akkus ,,nach unten“ schieben
ENT Akkus schieben (ohne Al) A2->A3, A3->A4
LEAVE Akkus schieben (ohne Al) A4->A3, A3->A2
TAK Akku 1 und Akku 2 tauschen
TAW Akku 1 Bytes 0 und 1 tauschen
TAD Akku 1 alle Bytes tauschen

Schiebe- und Rotieroperationen

Operation Operand Funktionsbeschreibung
SLW Schieben links wortweise
SLD Schieben links doppelwortweise
SRW Schieben rechts wortweise
SRD Schieben rechts doppelwortweise
SSI Schieben mit Vorzeichen wortweise
SSD Schieben mit Vorzeichen doppelwortweise
RLD Rotieren links doppelwortweise
RLDA Rotieren links durch Al
RRDA Rotieren rechts durch Al
RRD Rotieren rechts doppelwort­weise
konst um feste Anzahl von Bits
Schiebezahl im Akku 2

Zeitoperationen

Operation Operand Funktionsbeschreibung
SI T Starten als Impuls
SV T Starten als verlängerter Impuls
SE T Starten als Einschaltverzögerung
SS T Starten als speichernde Einschaltverzögerung
SA T Starten als Ausschaltverzögerung
R T Zeitfunktion rücksetzen
FR T Zeitfunktion freigeben

Zähloperationen

Operation Operand Funktionsbeschreibung
ZV Z Zählfunktion vorwärtszählen
ZR Z Zählfunktion rückwärtszählen
S Z Zählfunktion setzen
R Z Zählfunktion rücksetzen
FR Z Zählfunktion freigeben

Wortoperationen

Operation Operand Funktionsbeschreibung
UW UND wortweise
UD UND doppelwortweise
OW ODER wortweise
OD ODER doppelwortweise
XOW Exklusiv-ODER wortweise
XOD Exklusiv-ODER doppelwortweise
konst Mit einer Wort- bzw. Doppelwortkonstanten
mit dem Inhalt von Akku 2

Arithmetische Operationen

Operation Operand Funktionsbeschreibung
==I Integervergleich GLEICH
<>I Integervergleich UNGLEICH
>I Integervergleich GRÖSSER
>=I Integervergleich GRÖSSER GLEICH
<I Integervergleich KLEINER
<=I Integervergleich KLEINER GLEICH
==D Doppel-Integervergleich GLEICH
<>D Doppel-Integervergleich UNGLEICH
>D Doppel-Integervergleich GRÖSSER
>=D Doppel-Integervergleich GRÖSSER GLEICH
<D Doppel-Integervergleich KLEINER
<=D Doppel-Integervergleich KLEINER GLEICH
==R REAL-Zahl Vergleich GLEICH
<>R REAL-Zahl Vergleich UNGLEICH
>R REAL-Zahl Vergleich GRÖSSER
>=R REAL-Zahl Vergleich GRÖSSER GLEICH
<R REAL-Zahl Vergleich KLEINER
<=R REAL-Zahl Vergleich KLEINER GLEICH
SIN Sinus
COS Cosinus
TAN Tangens
ASIN Arcussinus
ACOS Arcuscosinus
ATAN Arcustangens
SQR Quadrieren
SQRT Wurzel (Radizieren)
EXP Exponent zur Basis e
LN Natürlicher Logarithmus
+I Integer Addition
-I Integer Subtraktion
*I Integer Multiplikation
/I Integer Division
+D Doppel-Integer Addition
-D Doppel-Integer Subtraktion
*D Doppel-Integer Multiplikation
/D Doppel-Integer Division
+R Realzahl Addition
-R Realzahl Subtraktion
*R Realzahl Multiplikation
/R Realzahl Division
MOD Doppel-Integer Division (Rest)
+ konst Addieren einer Konstante
+P# konst Addieren eines Zeigers
DEC Dekrementieren
INC Inkrementieren

Umwandlungsfunktionen

Operation Operand Funktionsbeschreibung
ITD Wandlung INT nach DINT
ITB Wandlung INT nach BCD
DTB Wandlung DINT nach BCD
DTR Wandlung DINT nach REAL
BTI Wandlung BCD nach INT
BTD Wandlung BCD nach DINT
RND Rundung zur nächsten ganzen Zahl
RND+ Rundung zur nächstgrößeren Zahl
RND- Rundung zur nächstkleineren Zahl
TRUNC ohne Rundung
INVI INT-Einerkomplement
INVD DINT-Einerkomplement
NEGI INT-Negation
NEGD DINT-Negation
NEGR REAL-Negation
ABS REAL-Betragsbildung


Sprungoperationen

Operation Operand Funktionsbeschreibung
SPA Ziel Sprung absolut (unbedingt)
SPB Ziel Sprung wenn VKE = 1
SPBB Ziel Sprung wenn VKE = 1 (VKE speichern)
SPBN Ziel Sprung wenn VKE = 0
SPBNB Ziel Sprung wenn VKE = 0 (VKE speichern)
SPBI Ziel Sprung wenn BIE = 1
SPBIN Ziel Sprung wenn BIE = 0
SPZ Ziel Sprung bei Vergleichsergebnis = 0
SPN Ziel Sprung bei Vergleichsergebnis ≠ 0
SPP Ziel Sprung bei Vergleichsergebnis > 0
SPPZ Ziel Sprung bei Vergleichsergebnis >= 0
SPM Ziel Sprung bei Vergleichsergebnis < 0
SPMZ Ziel Sprung bei Vergleichsergebnis <= 0
SPU Ziel Sprung bei Vergleichsergebnis ungültig
SPO Ziel Sprung bei Overflow
SPS Ziel Sprung bei speicherndem Overflow
SPL Ziel Sprungverteiler
LOOP Ziel Schleife

Aufruf-Operationen

Operation Operand Funktionsbeschreibung
CALL FB Sprung zum Funktionsbaustein
CALL FC Sprung zur Funktion
CALL SFB Sprung zum System-Funktionsbaustein
CALL SFC Sprung zur System-Funktion
UC FB Funktionsbaustein absolut aufrufen
CC FB Funktionsbaustein bedingt aufrufen
UC FC Funktion absolut aufrufen
CC FC Funktion bedingt aufrufen
BEA Bausteinende absolut
BEB Bausteinende bedingt
BE Bausteinende
AUF DB Datenbaustein öffnen
DI Instanz-Datenbaustein öffnen
TDB Datenbausteinregister tauschen

Indirekte Adressierung

Operation Operand Funktionsbeschreibung
LAR1 AR1 laden
LAR2 AR2 laden
MD mit Merkerdoppelwort
LD mit Lokaldatendoppelwort
DBD mit Datenbausteindoppelwort
DID mit Instanz-Datenbausteindoppelwort
LAR1 AR1 laden mit Inhalt aus Akku1
LAR2 AR2 laden mit Inhalt aus Akku1
LAR1 AR2 AR1 laden mit Inhalt aus A2
LAR1 P# AR1 laden mit Zeiger
LAR2 P# AR2 laden mit Zeiger
TAR1 Schreibe AR1
TAR2 Schreibe AR2
MD in Merkerdoppelwort
LD in Lokaldatendoppelwort
DBD in Datenbausteindoppelwort
DID in Instanz-Datenbausteindoppelwort
TAR1 Schreibe AR1 in Akku1
TAR2 Schreibe AR2 in Akku1
TAR1 AR2 AR1 nach AR2 transferieren
TAR AR1 mit AR2 tauschen
+AR1 Addiere Akku1 zu AR1
+AR2 Addiere Akku1 zu AR2
+AR1 P# Addiere Pointer zu AR1
+AR2 P# Addiere Pointer zu AR2

Sonstige Operationen

Operation Operand Funktionsbeschreibung
NOP 0 Nulloperation
NOP 1 Nulloperation
BLD konst Bildaufbau