Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

pic ile toplama çıkarma

Başlatan fm, 04 Kasım 2014, 22:17:31

fm

Merhaba,

Pic 16F877A kullanarak 4 bitlik iki sayıyı toplama ve çıkarma işlemlerini yapmak istiyorum.
Bu işin mantığı ne olmalı. Bilgi verebilir misiniz? Ne yapılması gerekiyor?

baran123

Tam olarak nerede takıldınız ?
Mantık gayet basit

int a, b, c;

a = 1;
b = 2;

c = a + b;

Bitlerle ilgili bilgi de burada bulabilirsiniz
http://en.wikipedia.org/wiki/Integer_(computer_science)

fm

hocam mesela 1111 1111 sayılarını toplayacağım. Sonuç;

   1111
   1111 sayılarını toplayacağım nasıl olacak kafam durdu yapamadım.

polleme

1111, decimal olarak 15 demektir.

int a=15, b=15, c;

c= a+b;

Bu durumda c sayısı 30 olur. 30 sayısı ikilik düzende 0001 1110'dır. Yani ikilik düzende toplarken onları decimal olarak düşünüp toplama işlemini yapabilirsiniz.


baran123

yani amacınız 4 bitlik  binary sayıları toplamak mı ?

polleme

Anlamadım, ilk mesajda yazdığınız amaç 4 bitlik iki sayıyı toplamak veya çıkarmak değil miydi? Ben de onu açıklamaya çalıştım. Yanlış anladığım bir nokta varsa düzeltin lütfen.

fm

Hocam elimde ödev kağıdı var. soru "4 bitlik iki sayıyı toplayan program yazınız" demiş. logic statelerle sayıları pic e tanıtmış.


sadogan

Resim net deyil anlaşılmıyor. Sanırım sayılar port B den giriyor.
int a,b,c;
a=input_b(); // sayıları okuduk Port B ye ba
b=a>>4;      // B sayısını aldık 
c=a&0b00001111; // C sayısını aldık
a=b+c;                // Sonuc A değişkende


kudretuzuner

Merhaba,
Ben size prensip kodlarını vereyim.Gerisini siz halledersiniz."BASLA.........GOTO BASLA" arası işlem yapar.Videoyu da incelerseniz daha kolay anlaşılır.Kolay gelsin.
https://www.dropbox.com/s/vvk9ux8qpb3jva7/P%C4%B0C_TOPLAMA.rar?dl=0
Amatör