Ana sayfa | Hakkımda | İletişim | Sosyal platform
PIC CCS C & ASM / Komutlar
PIC ASM: RRF a,b ; sağa öteleme

Bu komut "RLF" komutu gibi iki parametreden oluşur. RLF komutu ile tek farkı RLF; sola, RRF; sağa öteleme işlemi yapar.

RRF A,B ; komutumuz
(Rotate Right File)

A parametresi sağa ötelenecek olan kayıtçıyı simgeler.
B parametresi ise, öteleme işlemi gerçekleştikten sonra son durumun
nereye kayıdedileceğini belirtir.

B parametresi 0 veya 1 değerleri ile kopyalama adresini belirtiriz.

Eğer;

RRF A,1 ; ise öteleme işleminin sonucu "A" kayıtçısına yazılır.
RRF A,0 ; ise öteleme işleminin sonucu "W" kayıtçısına yazılır. "A" kayıtçısı ötelenmedenki halinde kalır.

Örneklerimiz;

MOVLW B'00010101' ; W kayıtçısına 00010101
MOVWF SAGA_KAY ; W kayıtçısına yazdığımız bilgiyi SAGA_KAY etiketine kopyaladık.

RRF SAGA_KAY,1 ; SAGA_KAY etiketindeki bilgiyi 1 bit sola kaydır, kendisine yaz.

MOVF SAGA_KAY,W ; SAGA_KAY etiketindeki bilgiyi W kayıtçısına kopyaladık.
MOVWF PORTB ; W kayıtçısındaki bilgiyi PORTB 'ye kopyala

Yukarıdaki kodlarda yer alan " MOVF SAGA_KAY,W" satırı, bir üst satırda yer alan "RRF SAGA_KAY,0 "
olarak değiştirirsek kullanmamıza gerek kalmaz.

Port B 'nin içeriğini kontrol edersek;

Kaydırmadan önce;
00010101

Kaydırma işleminden sonra;
00101010

4 defa sağa kaydırdığımızı düşünürsek;
01010001 ; son hali bu şekilde olur. En sağdaki bit carry biti ile ilgilidir. Carry bitini merak ediyorsanız, burayı tıklayınız.


 

ELEKTRO ÇAVUŞ
Ana sayfa | Hakkımda | İletişim | Sosyal platform
ELEKTRO ÇAVUŞ2012 | elektrocavus.com