Mantıksal işlemler

Posted: 04 Kasım 2007 in Elektronik

 

Pic programlama – MANTIKSAL İŞLEMLER 2
 
IORLW IORWF,XORLW,XORWF KOMUTLARI
 
OR:

iki bit arasında VEYA işlemini yapar.

elektronik bilgilerimizden de hatırlayacağınız gibi VEYA kapısında karşılaştırılan bitlerden en az birisi 1 ise sonuç 1 olur. eğer işlem gören bitlerden her ikiside "0" ise Sonuç Sıfır olur.

Or mantığı paralel devre mantığıdır.

A

B

A OR B

0

0

0

0

1

1

1

0

1

1

1

1

pic de OR işlemi için IOR kullanılır,

IORLW= Write register içeriğini istenen bir sabit veri ile OR işlemi uygular ve sonucu W registere yazar.

IORWF = Bir file register içeriği ile write register içeriğine OR işlemi uygular ve sonucu F veya W içine yazar.

 

Bitler

7

6

5

4

3

2

1

0

A

1

0

1

0

0

0

1

0

B

1

1

1

1

0

0

0

1

 

 

 

 

 

 

 

 

 

A IORLW B

1

1

1

1

0

0

1

1

Bu komut ile 0 olan bitleri 1 yapabiliriz.

örneğin;

bitler

7

6

5

4

3

2

1

0

A

1

0

1

0

0

0

1

0

B

1

1

1

1

1

1

1

1

 

 

 

 

 

 

 

 

 

A IORLW B

1

1

1

1

1

1

1

1

 

IORLW için örnek:

 

 

 

MOVLW

B’01010101’

;Binary 01010101 sayısını W registere ata

IORLW

B’10101010’

;Write registerdeki sayı ile binary 10101010 sayısını OR la

MOVWF

PORTB

;Sonucu PORTB’ ye gönder.

sonuç olarak PORTB çıkışlarının hepsi 1 olacaktır. ledler bağlı ise tüm ledler yanacaktır.

Byte içeriği 0 mı ?

Write register içindeki bir byte lık bir bilginin 0 olup olmadığını anlamak için=> 0 sabit verisi ile IORLW işlemi uygulanabilir

yada File register içindeki bilginin 0 olup olmadığını anlamak için=> W registere 0 atanır ve IORWF işlemi uygulanır..

Sonuc 0 sa Z flag 1 olur.

_______________________________________________________________

XOR (Exclusive OR gate = Özel veya Kapısı)

XOR işlemi elektronik bilgilerden biraz hatırlayacak olursak, Or işleminin biraz değişiği olup kısaca şöyle tarif edebiliriz:

XOR da 2 bit karşılaştırılır ve bit değerleri farklı ise sonuç 1 aynı ise sobyç sıfırdır.

1 bitlik XOR işlemi sonuçları aşağıdaki gibidir.

A

B

A XOR B

Açıklama

0

0

0

a ve b aynı sonuç sıfır

0

1

1

a ve b farklı sonuç 1

1

0

1

a ve b farklı sonuç 1

1

1

0

a ve b aynı sonuç sıfır

XORLW= Write register içeriği ile bir sabite XOR işlemi uyguar ve sonucu write register içine yazar.

XORWF= File register ile Write register içeriğini XOR lar ve sonucu F veya W ‘a yazar

8 bitlik XOR işlemi

 

7

6

5

4

3

2

1

0

A

1

0

1

0

0

0

1

0

B

1

1

1

1

0

0

0

1

 

 

 

 

 

 

 

 

 

A XOR B

0

1

0

1

0

0

1

1

XOR işlemi ayrıca bitleri ters çevirmek için de kullanılır.

örneğin,

A=10100010 ise ve biz A daki 0 ları 1 ve 1 leri de sıfır yapmak istersek.

B=11111111 ile A yı XOR işlemine tabi tutarız.

aşağıdaki gibi,

Bitler

7

6

5

4

3

2

1

0

A

1

0

1

0

0

0

1

0

B

1

1

1

1

1

1

1

1

 

 

 

 

 

 

 

 

 

A XOR B

0

1

0

1

1

1

0

1

XOR ile karşılaştırılan W register – Sabit / File Register içerikleri birbiri ile aynı ise XOR işlemi sonunda Z flag set edilir.

 

ANDLW,ANDWF,IORLW,IORWF,XORLW,XORWF işlemleri 1 saat çevrimi sürede işlenir.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s