Rrf Ve Rlf Komutları

Salvo

Kayıtlı Üye
RRF VE RLF KOMUTLARI
PIC ile bitleri sağa kaydırma ve sola kaydırma işlemleri

RRF :Rotate Right F through Carry

Bir register içindeki bitlerin pozisyonunu her komut işlenişte bir sağa kaydırır. Kayma işlemi sonunda en sağdaki bit yani sıfır nolu bit CARRY FLAG ‘ (taşma biti) e yazılır.

7 inci bitin değeri => 6 ya
6 ıncı bitin değeri => 5 e
...........
0'ıncı bitin değeri => status yazmacının carry bitine yerleştirilmiş olur. Daha sonra Carry bitindeki değer buradan alınıp f yazmacının 7 inci bitine aktarılır. böylece bitler bozulmadan her biri bir sağa kaydırılmış olur. Yani bir döngü durumu vardır. eğer 0(sıfır) ıncı bite gelindiğinde başa dönmesini ,durmasını yada başka bir etikete aktarılmasını istersek bu durumda status yazmacının 0 ıncı biti kontrol edilerek pic e yönlendirme yapılabilir. (inceleyiniz şekil 2).

RLF :Rotate Left through Carry

Bir register içindeki bitlerin pozisyonunu her komut işlenişte bir sola kaydırır.

0 ıncı bitin değeri => 1 e
1 inci bitin değeri => 2 ye
........................
6 ıncı bitin değeri =>7 ye
7 inci bitin değeri => status yazmacının Carry Bitine yerleştirilir.

Carry Flag içindeki de en sağ bite gider, ve hiç bir bit bozulmadan bitler sola kaymış olur. Yine RRF de olduğu gibi 7 inci bitten sonra başka bir işlem yapmak istersek bunu status yazmacının 0(sıfır)ıncı biti kontrol edilerek bu işlem yapılabilir. (inceleyiniz şekil 1).

Bu durumu aşağıdaki küçük örnek açıklar sanırım.

movlw B'10000000'
movwf portb

tekrar
call gecikme
rrf por tb,f ;port b yi sola kaydır
btfss status, 0 ;carry flag 1 ise atla
goto tekrar ;carry flag 1 değilse tekrara git
end.

Bu program port b bitlerini her defasında bir sağa kaydırır ve işlem en baştaki bit de kaydırıldıktan sonra durur. Yani port b nin 7 nolu bitinde bulunan 1 değeri 0ıncı bite geldikten sonra program durur.
 
bayigram takipçi satın al instagram beğeni satın al instagram takipçi satın al tiktok takipçi satın al Buy Followers bugün haber
vozol
Geri
Üst