Aus RN-Wissen.de
(→Ausführliche Beschreibung zu den Befehlen) |
(→Ausführliche Beschreibung zu den Befehlen) |
||
Zeile 112: | Zeile 112: | ||
movwf Register1 ;bewegt das W-Register in das Register1 | movwf Register1 ;bewegt das W-Register in das Register1 | ||
movlw d'10' ;schreibt 10 in das W-Register | movlw d'10' ;schreibt 10 in das W-Register | ||
− | + | SUBWF Register1,F ;schreibt Register1(20)-W(10) in Register1 | |
+ | </dd></dl><!-- zum einrücken da--> | ||
+ | |||
+ | ;SWAPF R,d | ||
+ | :Es es werden die ersten 4 bit mit den letzten 4 bit vertauscht und entweder in das W-Register ('''d'''=<tt>W</tt>=<tt>0</tt>) oder in R gespeichert ('''d'''=<tt>F</tt>=<tt>1</tt>). | ||
+ | :Beispiel: | ||
+ | <dl><dd><!-- zum einrücken da--> | ||
+ | movlw b'00001111' ;schreibe b'00001111' in das W-Register | ||
+ | movwf Register1 ;bewegt das W-Register in das Register1 | ||
+ | SWAPF Register1,W ;vertauscht die ersten 4 bit mit den letzen | ||
+ | ;4 bit in Register 1 und schreibt es in das W-Register | ||
+ | ;im W-Register steht nun b'11110000' | ||
</dd></dl><!-- zum einrücken da--> | </dd></dl><!-- zum einrücken da--> | ||
Version vom 25. März 2007, 13:19 Uhr
Hier soll nach einiger Zeit eine vollständige Hilfe zu den PIC Assembler Befehlen entstehen.
Inhaltsverzeichnis
Midrange
Kurzübersicht Assembler Befehle
|
|
Ausführliche Beschreibung zu den Befehlen
Erklärungen zu den Verwendeten Platzhaltern:
- k stellt einen fest definierten Wert da. z.B. 0x20, d'42' oder b'00101010'
- W steht für das W-Register.
- d steht für destination. Im code wird d durch ein w (der Wert wird in das W-Register gespeichert ) oder f (der Wert wird in das davor definierte Register gespeichert)
- R steht für ein Register
- fett geschrieben Bedeutet, dass es ein Platzhalter ist und im Quellcode ersetzt werden muss
- Schreibmaschinenstil bedeutet, dass es so im Quellcode geschrieben werden kann.
- SUBLW k
- Es wird die Rechenoperation [math]k-W[/math] ausgeführt und in das W-Register gespeichert. Dieser Befehl beeinflusst das STATUS-Register. Siehe hierzu Überprüfung von Rechenergebnissen mit Hilfe des STATUS-Register
- SUBWF R,d
- Es wird die Rechenoperation [math]R-W[/math] ausgeführt und entweder in das W-Register (d=W=0) oder in R gespeichert (d=F=1). Dieser Befehl beeinflusst das STATUS-Register. Siehe hierzu Überprüfung von Rechenergebnissen mit Hilfe des STATUS-Register
- Beispiel:
- movlw d'20' ;schreibe 20 in das W-Register movwf Register1 ;bewegt das W-Register in das Register1 movlw d'10' ;schreibt 10 in das W-Register SUBWF Register1,F ;schreibt Register1(20)-W(10) in Register1
- SWAPF R,d
- Es es werden die ersten 4 bit mit den letzten 4 bit vertauscht und entweder in das W-Register (d=W=0) oder in R gespeichert (d=F=1).
- Beispiel:
- movlw b'00001111' ;schreibe b'00001111' in das W-Register movwf Register1 ;bewegt das W-Register in das Register1 SWAPF Register1,W ;vertauscht die ersten 4 bit mit den letzen ;4 bit in Register 1 und schreibt es in das W-Register ;im W-Register steht nun b'11110000'
- XORLW k
- Es wird die Rechenoperation [math]W\ xor\ k[/math] ausgeführt und in das W-Register gespeichert. Dieser Befehl setzt das Z bit des STATUS-Register, falls das Ergebnis 0 ist.
- Zur Verdeutlichung der Rechenoperation:
- 0011 1010 ---- xor 1001
- XORWF R,d
- Es wird die Rechenoperation [math]W\ xor\ R[/math] ausgeführt und entweder in das W-Register (d=W=0) oder in R gespeichert (d=F=1). Vergleiche XORLW
Überprüfung von Rechenergebnissen mit Hilfe des STATUS-Register
|
|