MİKROİŞLEMCİ LABORATUARI UYGULAMA ÖRNEKLERİ

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "MİKROİŞLEMCİ LABORATUARI UYGULAMA ÖRNEKLERİ"

Transkript

1 MİKROİŞLEMCİ LABORATUARI UYGULAMA ÖRNEKLERİ UYGULAMA 1 Bu uygulamada DIP anahtar konumunu P1 den okuyup, bu konumların LED lerde görüntülenmesi için P2 de yazacağız. Bu uygulamaya ait assembly program parçası aşağıda verilmektedir. ;********************************************************** ;***** 3m LED DIP anahtar kullanılarak Giriş/Çıkış ******* ;***** deneyinin gerçekleştirilmesi ******* basla org 08000h ;baslangıç adresi, reset vektörü ljmp led_1 org 08100h led_1: mov a,p1 cpl A mov P2,a ;P1'deki,DIP anahtar konumlarını oku ;A nın tersini al ;bu değeri Port 4'e yaz nop ; sjmp led_1 ;led_1 satırından devam et end UYGULAMA 2 Bu uygulamada sizlere program yazarken ihtiyacını duyduğumuz gecikme altyordamlarının ne işe yaradığını, sürelerin ne şekilde hesaplandığını örneklerle gösterelim. Kısa süreli beklemeler için tek döngülü altyordam kullanırız. Bunun için aşağıdaki örneğimizi inceleyelim. bekle: mov r7,#0ffh ;2byte,12periyod bekle1: djnz r7,bekle1 ret ;2byte,24periyod ;1byte,24periyod Programımızda r7 kayıtçısına(register) 0FFh(255) sayısı yüklenerek bir öndeğer atanmış olur. Sonraki adımda bu kayıtçı içeriği sıfır olana kadar birer birer azaltılır. Bu azaltma işlemi bizim kurguladığımız döngüyü oluşturmaktadır. Kayıtçı r7 sıfıra ulaşınca djnz kıyaslama sonucunda program bir sonraki satır 1

2 ret ile devam etmektedir. Bu satırın işlenmesi sonucunda da program kontrolü bu altyordamın çağrıldığı yere aktarılmaktadır. Bu altyordamın çağrıldığı satırın hemen altından devam etmektedir. Bu gecikme altyoramında gecikme süresi hesabını komutların programda kaç osilatör periyodu olduğuna bakarak yaparız. Bunun için 8051 komut tablosunda her komutun kaç osilatör periyodu ile işletildiği ve kaç byte gerektiği verilmektedir. Bu tablodan bizim altyordamın 12+24*r7+ 24 = 12+24* = 6156 periyod süresi olduğu hesaplanmaktadır. Eğitim setimizin kalbi yani mikrodenetleyicinin kristali 1 saniyede priyod vermektedir. Buna göre süreyi saniye cinsine çevirmek için 6156/ işlemini yaparsak 0,56msn olduğunu buluruz. Eğer bu süre bizim ihtiyacımıza cevap vermiyorsa döngü içine NOP komutu ekleyerek süreyi uzatabiliriz. Eğer daha uzun gecikmelere ihtiyaç duyulursa o zaman iç içe iki döngü kurularak istenilen süre elde edilir. Bunun için hazırladığımız örnek altyordamı inceleyelim. ; Gecikme 1ms*r7 bekle_ms: mov r6,#250 ;2byte,12periyod bekle_ms1: nop nop djnz r6,bekle_ms1 djnz r7,bekle_ms ret ;1byte,12periyod ;1byte,12periyod ;2byte,24periyod ;2byte,24periyod ;1byte,24periyod Yukarıdaki programda iki döngü kullanılmaktadır. İç döngü 1msn lik bir gecikme sağlamakta, dış döngü ise bunun katları kadar bir gecikme olmasını sağlamaktadır. Eğer altyordam çağrılmadan önce r7 kayıtçısına 5 değeri yüklenmiş ise bu durumda 5*1 = 5milisaniyelik bir gecikme elde edilir. Daha önceki gecikmede öğrendiğimiz gibi hesaplama işlemini yapalım. (12+( )*r6+ 24)*r7+24 = (12+48*250+24)*r7 +24= r7=1 için periyod olduğunu buluruz Bunun yaklaşık 1.09 ms ettğini 12060/ işlemi sonucunda görürüz. Tam 1ms için r6 kayıtçısına hangi sayıyı yüklemeliyiz? 2

3 UYGULAMA 3 Gecikme ile ilgili öğrendiğimiz bilgileri kullanmak için ilk programımızı biraz değiştirelim. Şimdi DIP anahtardan okuduğumuz sayısal bilgi bizim ms cinsinden gecikme bilgisi olsun. En soldaki LED imizi yakalım ve bunu sürekli sağa kaydıralım. Son LED yakıldığında tekrar baştan başlasın. ;******* 3m LED DIP anahtar kullanılarak Giriş/Çıkış ********* basla org 08000h ;baslangıç adresi, reset vektörü ljmp led_2 org 08100h mov b,#80h ;en soldaki ledin yakılması mov P2,b led_2: mov a,p1 cpl a mov r7,a ;P1'deki,DIP anahtar konumlarını oku ;tersini al ;sayacı yükle acall bekle_ms mov a,b rr a jnz led_21 mov a,#80h led_21 mov P2,a ;yeniden başlat ;bu değeri Port 4'e yaz mov b,a ; sjmp led_2 ;led_1 satırından devam et ;********* Gecikme altyordamı 1ms*r7 *********************** bekle_ms: mov r6,#229 bekle_ms1: nop nop djnz r6,bekle_ms1 djnz r7,bekle_ms ret end 3

4 UYGULAMA internal data memory 30H adresinde pozitif sayılardan oluşan 25d byte uzunluğunda bir X dizisi bulunmaktadır. Y= Toplam(20 x X + 7) bağıntısı ile tanımlı sonucu hesaplayan ve bellekte 50H adresine kaydeden program. R0,#30H R1,#25 R2,#0 TEKRAR: B,#20 A,@R0 MUL AB ;SIRADAKI ELEMAN 20 ILE CARPILDI CLR C ;CARRY TEMIZLENDI ADD A,#7 ;SIRADAKI ELEMAN 7 ILE TOPLANDI JNC DEVAM1 CLR C INC B JNC DEVAM1 INC R2 DEVAM1: CLR C ADD A,50H 50H,A JNC DEVAM2 CLR C INC 51H JNC DEVAM2 CLR C INC 52H DEVAM2: CLR C A,B ADD A,51H 51H,A JNC DEVAM3 CLR C INC 52H DEVAM3: CLR C A,R2 ADD A,52H 52H,A INC R0 CJNE R0,#49H,TEKRAR END 4

5 UYGULAMA 5 P1 Portuna bağlı ortak katot 7 segment displayi sürekli 0'dan 9'a kadar saydıran program: 50H,# B ;0 51H,# B ;1 52H,# B ;2 53H,# B ;3 54H,# B ;4 55H,# B ;5 56H,# B ;6 57H,# B ;7 58H,# B ;8 59H,# B ;9 TEKRAR: INC LCALL CJNE JMP BEKLE: TEKRARB: DJNZ DJNZ R0,#4FH R0 P1,@R0 BEKLE R0,#59H,TEKRAR R0,#4FH TEKRAR R2,#0FFH R1,#0FFH R1,TEKRARB R2,TEKRARB 5

6 UYGULAMA 6 P1 Portuna bağlı bir ortak katot display, P2,0 portuna bağlı bir butona basıldıkça ondalık olarak saydırılacaktır. P2,1 portuna bağlı olan butonla da sıfırlanacaktır. Çözümü: 50H,# B ;0 51H,# B ;1 52H,# B ;2 53H,# B ;3 54H,# B ;4 55H,# B ;5 56H,# B ;6 57H,# B ;7 58H,# B ;8 59H,# B ;9 P1,# B ;0 R0,#50H TEKRAR: A,P2 ANL A,# B CJNE A,#1,RESET? CJNE R0,#59H,DEVAM JMP RESET? DEVAM: INC R0 P1,@R0 LCALL BEKLE JMP TEKRAR RESET?: A,P2 ANL A,# B CJNE A,#2,TEKRAR R0,#50H P1,@R0 LCALL BEKLE JMP TEKRAR BEKLE: TEKRARB: DJNZ DJNZ R2,#0FFH R1,#0FFH R1,TEKRARB R2,TEKRARB 6

7 UYGULAMA 7 30H adresinde 25D uzunluğundaki bir dizi yer almaktadır. Y= (X^2)-5 bağıntısı ile tanımlı Y dizisini 50H adresinden itibaren oluşturunuz: TEKRAR: INC MUL CLR SUBB JNC DEC DEVAM1: INC INC CJNE END R0,#2FH R1,#50H R0 A,@R0 B,A A,@R0 AB C A,#5 DEVAM1 R1 R0,#49H,TEKRAR UYGULAMA 8 P2.0 a basınca tek, P2.1 set olunca da çift sayan program: TEKRAR: JC JC JMP TEK: JMP CIFT: DEVAM: C DPTR,#0700H R5,#0 C,P2.0 TEK C,P2.1 CIFT DEVAM R3,#1 DEVAM R3,#0 A,R5 A,@A+DPTR P1,A 7

8 LCALL INC INC CJNE DEVAM2: JC SIFIRLA: JMP BEKLE: TEKRARB: DJNZ DJNZ BEKLE R5 R5 R5,#0AH,DEVAM2 TEKRAR A,R3 R5,A TEKRAR R2,#0FFH R1,#0FFH R1,TEKRARB R2,TEKRARB org 700h DB B ;0 DB B ;1 DB B ;2 DB B ;3 DB B ;4 DB B ;5 DB B ;6 DB B ;7 DB B ;8 DB B ;9 8

9 UYGULAMA 9 P2 portuna bağlı 8 adet ledi sağa ve sola kaydıran program: SOLA: LCALL CJNE LJMP SOLA2: RL LJMP SAGA: LCALL CJNE LJMP SAGA2: RR LJMP BEKLE: D2: D1: DJNZ DJNZ A,#01H P2,A BEKLE A,#128,SOLA2 SAGA A P2,A SOLA BEKLE A,#1,SAGA2 SOLA A P2,A SAGA R4,#0FFH R5,#0FFH R5,D1 R4,D2 9

10 UYGULAMA 10 ÜÇ BYTE LIK DEĞİŞKENİN TOPLAMINI HESAPLAYAN PROGRAM ;SORU: 3'er byte lık iki değişkenin toplanarak ;sonucun 4 bytelık bir değişken içine atandığı bir program yazınız ;İlk sayı(ilk_sayi_0/1/2) 06DH-06FH adres aralığına, ;ikinci sayı(ikinci_sayi_0/1/2) 06AH-06CH adres aralığına ;sonuc (SONUC_0/1/2/3) 066H-069H adres aralığına yerleştirilmiştir. ILK_SAYI_0 DATA 6FH ILK_SAYI_1 DATA 6EH ;ilk sayının değer ;değişkenleri ILK_SAYI_2 DATA 6DH IKINCI_SAYI_0 DATA 6CH IKINCI_SAYI_1 DATA 6BH ;ikinci sayının değer ;değişkenleri IKINCI_SAYI_2 DATA 6AH SONUC_0 DATA 69H SONUC_1 DATA 68H ;sonucun değer ;değişkenleri SONUC_2 DATA 67H SONUC_3 DATA 66H ; ;basit toplamada olduğu gibi iki sayının en küçük ;kısımları toplanır A,ILK_SAYI_0 ADD A,IKINCI_SAYI_0 JNC TPL_DVM0 INC SONUC_1 10

11 TPL_DVM0: SONUC_0,A ; ;en kucuk ikinci kısımlar toplanıyor A,ILK_SAYI_1 ADD A,IKINCI_SAYI_1 JNC TPL_DVM1 INC SONUC_2 TPL_DVM1: ADD A,SONUC_1 JNC TPL_DVM2 INC SONUC_2 TPL_DVM2: SONUC_1,A ; ;büyük kısımlar toplanıyor A,ILK_SAYI_2 ADD A,IKINCI_sAYI_2 JNC TPL_DVM3 INC SONUC_3 TPL_DVM3: ADD A,SONUC_2 JNC TPL_DVM4 INC SONUC_3 SONUC_2,A 11

12 UYGULAMA 11 N ADET BİR BYTE LIK DEĞİŞKENİN TOPLAMINI HESAPLAYAN PROGRAM ; N adet bir byte lık değişkenin toplamını iki bytelık ;bir değişken içine atayan program ;NOT:BU PROGRAM 101 ADET BİR BYTELIK SAYIYI ;TOPLAYABİLİR N_TOPLA: ;Sayılar 40h adresinden başlasın SAYAC DATA 6FH SONUC_L DATA 6EH SONUC_H DATA 6DH R0,#40H SAYAC,"n" ; N_TPL_DONGUSU: ADD A,@R0 JNC N_TPL_DVM INC SONUC_H N_TPL_DVM: INC R0 DJNZ SAYAC,N_TPL_DONGUSU ; SONUC_L,A 12

13 UYGULAMA 12 İKİ BYTE LIK DEĞİŞKENLER ÜZERİNDE ÇIKARTMA İŞLEMİ PROGRAMI ;31H ve 30H adreslerindeki 2 byte lık sayıdan ;41H ve 40H adreslerindeki sayı çıkarılıp sonuç ;51H ve 50H adreslerinde saklanmaktadır. 16BIT_CIKARMA: A,30H SUBB A,40H 50H,A JNC DEVAM ; çıkarma işleminde elde ödünç alınıyorsa 31H i azalt DEC 31H DEVAM: A,31H SUBB A,41H 51H,A 13

14 UYGULAMA 13 İKİ BYTE LIK İKİ DEĞİŞKENİN ÇARPIMINI HESAPLAYAN PROGRAM D1_H DATA 078H ;Sayıların yüksek ve düşük bytelarının atanması D1_L DATA 079H D2_H DATA 07AH D2_L DATA 07BH S1 DATA 07CH ;sonuc bytelarının yazılacağıadreslarin atanması S2 DATA 07DH S3 DATA 07EH S4 DATA 07FH ELDE1 DATA 077H ;not:lütfen işlemden önce içeriklerini sıfırlayınız. ;yığından eldelerin çekilebilmesi için kullanılacak olan değişkenler ELDE2 DATA 076H ;Iki_16bitlik_Sayiyinin_Carpimi: ;BIRINCI BASAMAKLARIN ÇARPIMI A,D1_L B,D2_L MUL AB S1,A R1,B ;Sonucun birinci byteını ata ;birinci çarpımın yüksek byteını elde için R1 de sakla ;IKINCI SAYININ BIR,BIRINCI SAYININ IKINCI BASAMAK CARPIMI A,D2_L B,D1_H MUL AB R2,A ;ikinci carpımın düşük byteını elde için R2 ye ata 14

15 PUSH B ;ikinci çarpımın yüksek byteını elde için yığına gönder ;IKINCI SAYININ IKI BIRINCI SAYININ BIRINCI BASAMAK CARPIMI A,D1_L B,D2_H MUL AB PUSH B ;Carpımın yüksek byteını elde için yığına gönder ;IKINCI BYTE ın ELDELERININ TOPLANMASI ADD A,R1 JNC DVM INC S3 ;yeni elde kontrolü ;elde durumundaki arttırma DVM: ADD A,R2 JNC DVM2 INC S3 ;yeni elde kontrolü ;elde durumundaki arttırma DVM2: S2,A ;toplamda gelen veriyi sonucun ikinci byteına ata ;IKINCI BASAMAKLARIN CARPIMI A,D2_H B,D1_H MUL AB ;UCUNCU BYTE ın ELDELERİNİN TOPLANMASI POP ELDE1 R1,ELDE1 ;ilk eldeyi yığından çek ;ve R1 e ata 15

16 POP ELDE2 R2,ELDE2 ADD A,R1 JNC DVM3 INC S4 ;ikinci eldeyi yığından çek ;ve R2 ye ata ;Birinci eldeyi ekle ;yeni elde kontrolü ;elde durumundaki arttırma DVM3: ADD A,R2 JNC DVM4 INC S4 ;yeni elde kontrolü ;elde durumundaki arttırma DVM4: ADD A,S3 JNC DVM5 INC S4 ;yeni elde kontrolü ;elde durumundaki arttırma DVM5: S3,A ;sonucun ücüncü byteını ata A,B ;DORDUNCU BYTEın ELDELERİNİN TOPLANMASI ADD A,S4 S4,A ;Sonucun dorduncu byteını ata 16

17 UYGULAMA 14 BİR BYTE LIK BİR DEĞİŞKENİN İÇERİĞİNİ DİGİTLERE (HANE DEĞERLERİNE) AYIRAN PROGRAM ;SORU:Bir baytlık bir sayı değişkenin yüzler onlar ve birler basamakları olarak ayır BASAMAKLARA_AYIRMA: BIRLER DATA 30h ONLAR DATA 31h YUZLER DATA 32h ;BIRLER basamağının tutulacağı yer ;ONLAR basamağının tutulacağı yer ;YUZLER basamağının tutulacağı yer A,#k B,#100 DIV AB ;Ayıklanıacak sayıyı A ya ata ;B ye 100 ata ;A yı B ye böl ;Not:Bu işlemin özelliğinde sonuç A ya kalan Byte yazılır YUZLER,A A,B B,#10 DIV AB ONLAR,A BIRLER,B ;Sonuc olarak gelen yüzler basamağını yaz ;Geri kalan onlar ve birler basamaklarını A ya yaz ;B ye 10 ata ;A yı B ye böl ;Onlar basamağını yaz ;Birler basamağını yaz 17

18 UYGULAMA ADET BİR BYTE LIK DEĞİŞKENİN ARİTMETİK ORTALAMASINI HESAPLAYAN PROGRAM Bu alt programda 16 sayının ortalamasını alan bir alt program örneği verilmiştir. 30H den 3FH e kadar olan 16 sayının ortalaması alınarak 61H adresinde saklanmaktadır. Ayrıca kalan 60H adresine yazılmaktadır. Öncelikle 16 sayı toplanmakta ve ardından bu toplam 16 ya bölünmektedir. Bilindiği herhangi bir tabandaki sayıyı o tabana bölmek o sayıyı sağa bir basamak kaydırmak demektir. Örneğin onluk tabanda bir sayıyı 10 a bölmek için sayıyı bir sağa kaydırmak ve dolayısıyla varsa virgülü sola kaydırmak demektir. Burada da toplanan sayıyı 16 ya bölme işlemi için toplam sayısı bir nibble sağa kaydırılmaktadır. Oluşan toplam en fazla üç nibble dan oluşabileceğinden üç defa kaydırma işlemi yapılmaktadır ORTALAMA: R0,#30H A,30H CLR C ; ilk adres ;ilk değeri yükle ; sonraki işlemler için eldeyi temizle DONGU: INC R0 ADD JNC DEVAM INC 41H CLR C ; bir sonraki adres ; değerleri topla ; elde oluşuyorsa ; bir üst dijiti bir arttır ; sonraki işlem için eldeyi temizle DEVAM: CJNE R0,#3FH,DONGU ; 15 kez toplama işlemi yap 40H,A BOLME: A,40H ANL A,#0FH ; 40H adresindeki düşük nibble ı kalan olarak ; 60H adresine yaz 60H,A A,40H ANL A,#0F0H SWAP A ; 40H adresindeki yüksek nibble ı 61 adresinin ; düşük nibble ı olarak yaz ; nibble ları yer değiştir 61H,A A,41H SWAP A ; 41H adresindeki düşük nibble ı yükle ; düşük nibble ı yüksek nibble yap 18

19 ADD A,61H 61H,A ; 61H deki düşük nibble ı yükle ; akümülatördeki yüksek nibble ile topla ve kaydet UYGULAMA 16 N BYTELIK SAYININ İŞA DEĞİŞİMİ İşaretli sayılarla direk işlem yapılamadığı zaman yada işaret değişimi yapmak gerektiğinde bu alt programla kolayca bu işlem gerçekleştirilebilmektedir. Bilindiği gibi işaretli sayıların en yüksek ağırlıklı byte ındaki en yüksek ağırlıklı biti 0 ise sayı pozitif, 1 ise sayı negatiftir. Pozitif bir sayının negatif karşılığı bulunmak için öncelikle sayının bütün bitlerinin eşleniği ( complement ) alınır. Bu işlemin ardından sayıya 1 eklenerek istenen negatif sayı bulunur. Negatif bir sayının pozitif karşılığı da aynı şekilde bulunur. Bu yöntem sayesinde mikroişlemci sistemlerde kolaylıkla işaret dönüşümü yapılabilmektedir. Aşağıda verilen örnekte 20H den 2FH e kadar olan adreslerde tutulan maximum 16 byte uzunluğundaki sayının işaret değişimi yapılmaktadır. Ancak istenirse bu uzunluk daha da arttırılabilir. Bu alt programda önce sayının uzunluğu bulunmakta sonra bu sayının işaret değişimi yapılmaktadır. SAYAC DATA 070H ELDE DATA 071H ; sayının byte sayısı (N değeri). ;işlemde oluşan eldenin tutulacağı alan ISA_DEGISIMI: R0,#020H SAYAC,#10H ;sayının LSB kısmının basladıgı adres ;sayının kac byte oldugu bilgisi A,@R0 CPL A ADD A,#01 JNC ELDE_YOK_0 ELDE,#01 ;R0 ın gösterdiği adresteki ilk byte (LSB) A ya yazılır. ;Complementi alınır. ;Sayıya 1 eklenir. ;Carry yoksa diğer byte gec. ;Carry varsa elde buffer ına yazılır. ELDE_YOK_0: INC R0 DEC SAYAC ;Carry yoksa elde bufferı temizlenir. ;Diğer byte A ya alınır ;Adres değeri 1 arttırılır. ;Byte sayısı 1 azaltılır. 19

20 A,SAYAC JZ SON TOP: CPL A ADD A,ELDE JNC ELDE_YOK ELDE,#01 ELDE_YOK: INC R0 DJNZ SAYAC,TOP ;byte sayısı kontrol için A ya alınır. ;sayı bitmişse(tek byte ise)son a git ;ilk byte tan sonraki byte ler dongu içinde tümleyenleri alınır. ;Diğer byte A ya alınır ;Tümleyeni alınır. ;ELDE buffer ındaki değer eklenir. ;Carry yoksa ELDE_YOK Label ına git. ;Carry varsa ELDE buffer ına 1 yaz. ;Carry olmaması durumunda ;ELDE buffer ı temizlenir. ;Byte yeni haliyle tekrar yazılır. ;adres değeri arttırılır. ;SAYAC 0 değilse TOP a git. SON: UYGULAMA 17 ;Belli bir k boyutlu adres aralığından oluşan bir tablodaki bölümlerde bulunan değerler arasında ; a)en küçük sayıyı bul ; b)tek sayıların adedini bul ; c)çift sayıların adedini bul ; d)en büyük sayıyı bul ;A) EN_KUCUK_DEGER: EN_KUCUK DATA 31h SAYAC DATA 30h ;Sonucun saklanacağı yeri belirle ;Sayac değerinin saklanacağı yeri belirle 20

21 R0,#TUT R1,#TUT+1 SAYAC,#k ;İlk tutulacak sayının adresine yaz ;İlk karşılaştırılacak sayının adresi ;Sayacın değerini ata CIKAR: ;Bu bölümde R0 da gösterdiğimiz sayıdan R1 de gösterdiğimiz sayıyı ;çıkararak SUBB JNC DEGIS ;elde oluşup oluşmadığına göre daha küçük olan sayı belirlenir ;Elde durumuna göre atlama veya devam etme(elde yoksa atla) DEGISME: INC R1 EN_KUCUK,R0 DJNZ SAYAC,CIKAR ;Bir dahaki sayı için R1 i arttır ;En küçük sayı adresine R0 ı ata ;Bir dahaki sayıyı deneme işlemine geç ;Alt işlemi bitir DEGIS: A,R1 R0,A INC R1 EN_KUCUK,R0 DJNZ SAYAC,CIKAR ;A yardımı ile R1 içeriğini al ;A yı R0 içine yaz ;Bir dahaki sayı için R1 i arttır ;En küçük sayı adresine R0 ı ata ;Bir dahaki sayıyı deneme işlemine geç ;Alt işlemi bitir ;B) TEK_SAYI_ADEDI: ADET DATA 30h SAYAC DATA 31h ;Tek sayı adedinin tutulacağı bölüm ;Sayacın tutulacağı bölüm 21

22 ADET,00h R0,#BASAdrr ;Adet içeriğini sıfırla ;R0 a ilk adresi ata SORGU: A,# b ANL A,@R0 ;Sorgu işlemi Sayının b sayısıyla AND ;Kapısı kullanılarak yapılır ve ANL komutunun özelliğinden ;sonuc 1 veya 0 olarak A içeriğine yazılır JNZ TEK INC R0 DJNZ SAYAC,SORGU ;A nın içeriği 0 değil ise TEK etiketine atla ;A nın içeriği 0 ise R0 ı arttır ;Yeni sayıyı sorgulamak için başa dön TEK: INC ADET INC R0 DJNZ SAYAC,SORGU ;Tek sayı ise ;ADET içeriğini arttır ;R0 ı arttır ;Yeni sayıyı sorgulamak için başa dön ;C) Çift sayı adedini bulma ;Bu alt programda 30H den 40H kadar olan adresteki sayılar içinden çift sayı adedi bulunmakta ve ;50H adresinde kaç tane olduğu gösterilmektedir. Elde ile birlikte döndürme komutu kullanılarak son ;bitin 0 veya 1 olmasına göre çift yada tek olmasına bakılır. R0,#30H CIFT: INC R0 RRC A JC DEVAM INC 50H DEVAM: 22

23 CJNE R0,40H,CIFT ;D) EN_BUYUK_DEGER: EN_BUYUK DATA 31h SAYAC DATA 30h R0,#TUT R1,#TUT+1 SAYAC,#k CIKAR: SUBB JC DEGIS ;Sonucun saklanacağı yeri belirle ;Sayac değerinin saklanacağı yeri belirle ;İlk tutulacak sayının adresini yaz ;İlk karşılaştırılacak sayının adresi ;Sayacın değerini ata ;Bu bölümde R0 da gösterdiğimiz sayıdan R1 de gösterdiğimiz sayıyı çıkararak ;elde oluşup oluşmadığına göre daha büyük olan sayı belirlenir ;Elde durumuna göre atlama veya devam etme(elde varsa atla) DEGISME: INC R1 EN_BUYUK,R0 DJNZ SAYAC,CIKAR ;Bir dahaki sayı için R1 i arttır ;En büyük sayı adresine R0 ı ata ;Bir dahaki sayıyı deneme işlemine geç ;Alt işlemi bitir DEGIS: A,R1 R0,A INC R1 EN_BUYUK,R0 DJNZ SAYAC,CIKAR ;A yardımı ile R1 içeriğini al ;A yı R0 içine yaz ;Bir dahaki sayı için R1 i arttır ;En büyük sayı adresine R0 ı ata ;Bir dahaki sayıyı deneme işlemine geç ;Alt işlemi bitir 23

24 UYGULAMA 18 Binary BCD dönüşümleri Burada binary sayılardan BCD ( Binary Coded Decimal ) sayılara ve BCD sayılardan binary sayılara dönüşüm işlemi için iki alt program yazılmıştır. BCD sayılarla işlem bildiğimiz 10 tabanında yapılan işlemlerin 16 tabanındaki mikrodenetleyici sistemlerle yapılan işlemler arasında dönüşüm için kullanılır. Binaryden BCD ye dönüşüm yapan alt programda 30H de bulunan sayı dönüşüm işleminden sonra onlar ve birler basamağı 40H de yüzler basamağı ise 41H de saklanmaktadır. BCD den binary e dönüşüm işleminde 30H adresindeki sayı dönüşüm işlemi ardından 40H adresinde saklanmaktadır. BINARY2BCD: A,30H B,#0AH DIV AB 40H,B ; birler basamağını 40h adresine yaz B,#0AH DIV AB ; 41H,A A,B SWAP A ADD A,40H 40H,A ; yüzler basamağını 41H adresine yaz ; onlar basamağını akümülatöre yaz ; onlar basamağı olarak değiştir ; onlar basamağını birler basamağıyla ; topla ve sonucu 40H adresine yaz ; BCD2BINARY: A,30H ANL A,#0F0H SWAP A ;alt nibble ını sil ;nibble ları değiştir 24

25 B,#0AH MUL AB A,B 32H,A ;A daki sayı geçici olarak 32H yaz A,30H ANL A,#0FH ADD A,32H 40H,A ;üst nibble ını sil ;geçici değerle topla ; sonucu yaz UYGULAMA 19 BINARY VE ASCII DÖNÜŞÜMLERİ Haberleşme sistemlerinde ve değişik uygulamalarda sıklıkla kullanılan binary ve ASCII dönüşümleri için kullanılan iki alt program yazılmıştır. Bilindiği gibi ASCII tablosu 256 karakterden oluşmaktadır. Bunlardan 30H ve 39H arasındaki semboller 0-9 sayılarıdır. Hexadecimal sistemde kullanılan A-F ise 41H ve 46H arasında bulunmaktadır. Ayrıca a-f küçük harfleri de 61H ve 66H arasında bulunmaktadır. Binaryden ASCII ye dönüşüm işleminde önce R0 alınan binary değerin sayı mı harf mi olduğuna bakılmakta ardından buna göre sayı ise o sayıya 30H, harf ise 61H eklenmektedir. Bu kontrol işlemi o akümülatördeki değerden 10 çıkarılmaktadır. Eğer sayı ise çıkarma işleminde çıkarılan sayı çıkan sayıdan büyük olacaktır ve elde bayrağı set edilmeyecektir, çıkarılan sayı çıkan sayıdan küçük ise elde bayrağı set edilerek o değere 41H değeri eklenecektir. Burada A-F arasındaki harf değerlerine 41H eklenerek ASCII tablosundaki büyük harfler kullanılmıştır. Gerektiğinde bu değerlere 61H yerine 41H eklenerek harflerin ASCII tablosundaki küçük harf karşılıkları da bulunabilir. ASCII den binary e dönüşümde ise yukarda anlatılanların tam tersi yapılmaktadır. Ancak burada ek olarak harf ASCII karakterlerin büyük ve küçük olması durumları için ek bir kontrol daha yapılmaktadır. İki alt programda da girilen değer R0 a çıkan sonuç ise akümülatörde saklanmaktadır. BINARY2ASCII: A,R0 CLR C SUBB A,#0AH ;R0 daki değeri akümülatöre yükle ;sonraki işlemler için elde bayrağınıtemizle ;sayı mı harf mi olduğunu bulmak için 10 çıkar JNC SAYI ;elde set edilmemişse sayı işlemine geç 25

26 ADD A,#41H JMP SON ;elde set edilmişse 41H ekle ;işlemi bitir SAYI: A,R0 ADD A,#30H ;elde set edilmemişse sayı işlemi ;değeri akümülatöre yükle ;sayı için 30H ekle SON: ;bitir ;alt programdan geri dön ASCII2BINARY: A,R0 CLR C SUBB A,#41H JNC SAYI2 ADD A,#0AH JMP SON2 ;R0 daki değeri akümülatöre yükle ;sonraki işlemler için elde bayrağını temizle ;sayı mı büyük harf mi olduğunu bulmak için 41H çıkar ;elde set edilmemişse sayı2 işlemine geç ;büyük harf için çıkan değere 10 ekle ;işlemi bitir A,R0 SUBB A,#61H ADD A,#0AH JNC SAYI2 ;R0 daki değeri akümülatöre yükle ;sayı mı küçük harf mi olduğunu bulmak için 61H çıkar ;küçük harf için çıkan değere 10 ekle ;işlemi bitir SAYI2: A,R0 SUBB A,#30H ;elde set edilmişse sayı işlemi ;R0 daki değeri akümülatöre yükle ;sayı değeri için 30H ekle SON2: ;bitir ;geri dön 26

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı MIKRODENETLEYICILER Ege Üniversitesi Ege MYO Mekatronik Programı BÖLÜM 3 MSC-51 Ailesi Mikrodenetleyicilerin Komut Kümesi Mikroişlemci Programlama Mikroişlemci ikilik komutlar kabul eder ve sonuçlarını

Detaylı

Mikroişlemcili Sistemler ve Laboratuvarı 8.Hafta

Mikroişlemcili Sistemler ve Laboratuvarı 8.Hafta SAKARYA ÜNİVERSİTESİ Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemcili Sistemler ve Laboratuvarı 8.Hafta Doç.Dr. Ahmet Turan ÖZCERİT Doç.Dr. Cüneyt BAYILMIŞ Yrd.Doç.Dr.

Detaylı

KOMUT TABLOSU İLE İLGİLİ AÇIKLAMALAR:

KOMUT TABLOSU İLE İLGİLİ AÇIKLAMALAR: KOMUT TABLOSU İLE İLGİLİ AÇIKLAMALAR: 1) Etkilenen Bayraklar (E.B.) : Bazı komutlar koşturulurken PSW saklayacısındaki bayrakların değeri değişebilir. Herbir komut için etkilenen bayraklar belirtilmiştir.

Detaylı

Mikrobilgisayar Mimarisi ve Programlama

Mikrobilgisayar Mimarisi ve Programlama Mikrobilgisayar Mimarisi ve Programlama 2. Hafta Bellek Birimleri ve Programlamaya Giriş Doç. Dr. Akif KUTLU Ders web sitesi: http://www.8051turk.com/ http://microlab.sdu.edu.tr Bellekler Bellekler 0 veya

Detaylı

SAUEEE.ORG. Önce C 00 Sonrası C 00

SAUEEE.ORG. Önce C 00 Sonrası C 00 ) Aşağıdaki program kodunun çalışması durumunda A, PSW, SP kaydedicilerinde ve de olan tüm değişiklikleri ve ilgili hücrelerin son değerlerini gösteriniz. Açıklama: Çözüm için aşağıdaki şablon şekilleri

Detaylı

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı MIKRODENETLEYICILER Ege Üniversitesi Ege MYO Mekatronik Programı BÖLÜM 3 Assembler Programlama ve Program Geliştirme Program Geliştirme Problem Tanımlama Bağlantı Şekli Algoritma Akış Diyagramı Kaynak

Detaylı

ASSEMBLY DİLİNDE PROGRAMLAMA

ASSEMBLY DİLİNDE PROGRAMLAMA ASSEMBLY DİLİNDE PROGRAMLAMA Bu bölümde 8051 Assembly dilinde program yazabilmek için gerekli bilgiler yer almaktadır. Bu dilde yer alan temel komut türleri ayrıntılı olarak anlatılmış, basit programlama

Detaylı

Sayı sistemleri iki ana gruba ayrılır. 1. Sabit Noktalı Sayı Sistemleri. 2. Kayan Noktalı Sayı Sistemleri

Sayı sistemleri iki ana gruba ayrılır. 1. Sabit Noktalı Sayı Sistemleri. 2. Kayan Noktalı Sayı Sistemleri 2. SAYI SİSTEMLERİ VE KODLAR Sayı sistemleri iki ana gruba ayrılır. 1. Sabit Noktalı Sayı Sistemleri 2. Kayan Noktalı Sayı Sistemleri 2.1. Sabit Noktalı Sayı Sistemleri 2.1.1. Ondalık Sayı Sistemi Günlük

Detaylı

Ayhan Yüksel. (Son güncelleme: 06.03.2013 Berat Doğan) Tıbbi Enstrumantasyon Tasarım & Uygulamaları (06.03.2013)

Ayhan Yüksel. (Son güncelleme: 06.03.2013 Berat Doğan) Tıbbi Enstrumantasyon Tasarım & Uygulamaları (06.03.2013) ADuC 841 μ-denetleyicisi Ayhan Yüksel (Son güncelleme: 06.03.2013 Berat Doğan) Tıbbi Enstrumantasyon Tasarım & Uygulamaları (06.03.2013) 1 Sunum Planı Mikrodenetleyici ADuC841 mikrodenetleyicisi ADuC 841

Detaylı

Elektronik sistemlerde dört farklı sayı sistemi kullanılır. Bunlar;

Elektronik sistemlerde dört farklı sayı sistemi kullanılır. Bunlar; I. SAYI SİSTEMLERİ Elektronik sistemlerde dört farklı sayı sistemi kullanılır. Bunlar; i) İkili(Binary) Sayı Sistemi ii) Onlu(Decimal) Sayı Sistemi iii) Onaltılı(Heksadecimal) Sayı Sistemi iv) Sekizli(Oktal)

Detaylı

SAYISAL ELEKTRONİK. Ege Ü. Ege MYO Mekatronik Programı

SAYISAL ELEKTRONİK. Ege Ü. Ege MYO Mekatronik Programı SAYISAL ELEKTRONİK Ege Ü. Ege MYO Mekatronik Programı BÖLÜM 2 Sayı Sistemleri İkilik, Onaltılık ve İKO Sayılar İkilik Sayı Sistemi 3 Çoğu dijital sistemler 8, 16, 32, ve 64 bit gibi, 2 nin çift kuvvetleri

Detaylı

3.3. İki Tabanlı Sayı Sisteminde Dört İşlem

3.3. İki Tabanlı Sayı Sisteminde Dört İşlem 3.3. İki Tabanlı Sayı Sisteminde Dört İşlem A + B = 2 0 2 1 (Elde) A * B = Sonuç A B = 2 0 2 1 (Borç) A / B = Sonuç 0 + 0 = 0 0 0 * 0 = 0 0 0 = 0 0 0 / 0 = 0 0 + 1 = 1 0 0 * 1 = 0 0 1 = 1 1 0 / 1 = 0 1

Detaylı

BÖLÜM 7 Kesmeler.

BÖLÜM 7 Kesmeler. C ile 8051 Mikrodenetleyici Uygulamaları BÖLÜM 7 Kesmeler www.8051turk.com Amaçlar Kesme tanımını ve önemini kavramak 8051 mikrodenetleyicisinin kesme yapısını öğrenmek 8051 de kullanılan kesme türlerini

Detaylı

BÖLÜM 6 Seri Port Đşlemleri

BÖLÜM 6 Seri Port Đşlemleri C ile 8051 Mikrodenetleyici Uygulamaları BÖLÜM 6 Seri Port Đşlemleri Amaçlar Seri haberleşmenin önemini kavramak 8051 seri port kontrol saklayıcılarını öğrenmek Seri port çalışma modları hakkında bilgi

Detaylı

BIL 362 Mikroilemciler Dersi Arasınav Cevapları 3 Temmuz 2007

BIL 362 Mikroilemciler Dersi Arasınav Cevapları 3 Temmuz 2007 1. mov [0100h],'1' mov [0101h],'4' mov [0102h],'2' mov [0103h],'8' mov [0104h],'7' mov [0105h],'3' mov [0106h],'5' mov [0107h],'9' mov [0108h],'2' mov [0109h],'6' call ekranayazdir ; baslangic durumunu

Detaylı

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUARI İKİLİ TABANDA ÇOK BAYTLI ÇARPMA

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUARI İKİLİ TABANDA ÇOK BAYTLI ÇARPMA İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUARI İKİLİ TABANDA ÇOK BAYTLI ÇARPMA Aritmetik işlemler onlu sayı sisteminde yapılabileceği gibi diğer sayı sistemleri

Detaylı

BÖLÜM 4. Dahili veri hafıza transfer komutlarının genel yapısı, mov <hedef>, <kaynak> şeklindedir

BÖLÜM 4. Dahili veri hafıza transfer komutlarının genel yapısı, mov <hedef>, <kaynak> şeklindedir BÖLÜM 4 4. 8051 KOMUT KÜMESİ Farklı uzunlukta (1, 2 ve 3 Byte) ve farklı koşturma sürelerine (1,2,3 ve 4 makine çevrimi) sahip 255 komuttan oluşan ve Ek-1 de detaylı açıklamaları ile birlikte verilen 8051

Detaylı

Mikrobilgisayar Mimarisi ve Programlama

Mikrobilgisayar Mimarisi ve Programlama Mikrobilgisayar Mimarisi ve Programlama 8085 Adresleme ve Komutlar Doç.Dr. Cüneyt BAYILMIŞ Doç.Dr. Murat ÇAKIROĞLU Prof.Dr. Hüseyin EKİZ Assembly Formatı Assembly komut satırı biçimi Etiket İşlem Kodu

Detaylı

2. SAYI SİSTEMLERİ. M.İLKUÇAR - imuammer@yahoo.com

2. SAYI SİSTEMLERİ. M.İLKUÇAR - imuammer@yahoo.com Sayı Sistemleri İşlemci elektrik sinyalleri ile çalışır, bu elektrik sinyallerini 1/0 şeklinde yorumlayarak işlemcide olup bitenler anlaşılabilir hale getirilir. Böylece gerçek hayattaki bilgileri 1/0

Detaylı

Sayı sistemleri iki ana gruba ayrılır. 1. Sabit Noktalı Sayı Sistemleri. 2. Kayan Noktalı Sayı Sistemleri 2. SAYI SĐSTEMLERĐ VE KODLAR

Sayı sistemleri iki ana gruba ayrılır. 1. Sabit Noktalı Sayı Sistemleri. 2. Kayan Noktalı Sayı Sistemleri 2. SAYI SĐSTEMLERĐ VE KODLAR .1. Sabit Noktalı Sayı Sistemleri. SAYI SĐSTEMLERĐ VE KODLAR Sayı sistemleri iki ana gruba ayrılır. 1. Sabit Noktalı Sayı Sistemleri. Kayan Noktalı Sayı Sistemleri.1.1. Sayı Sistemi Günlük yaşantımızda

Detaylı

JZ TEST3 (7/3) 1 makine çevrimi süresi

JZ TEST3 (7/3) 1 makine çevrimi süresi Bu programda DC motorun devir sayısı hesabı motor diski ile birlikte çalışan optokuplör yardımıyla bulunuyor.motordan geribildirim sinyali optik alıcı ve verici arasına yerleştirilmiş diskin çıkışından

Detaylı

DENEY II RAPORU MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI

DENEY II RAPORU MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI DENEY II RAPORU Hazırlayan : Beycan Kahraman No (Beycan) : 040020337 Grup Arkadaşı : Hani İsmail No ( Hani ) : 040020925 Grup No : 3 Deney Adı : G/Ç (PIA) Uygulamaları

Detaylı

2. SAYI SİSTEMLERİ VE KODLAR

2. SAYI SİSTEMLERİ VE KODLAR 2. SAYI SİSTEMLERİ VE KODLAR 2.1. Sabit Noktalı Sayı Sistemleri 2.1.1. Ondalık Sayı Sistemi Günlük yaşantımızda kullandığımız sayı sistemi ondalık (decimal) sayı sistemidir. Ayrıca 10 tabanlı sistem olarak

Detaylı

1. Bölüm Sayı Sistemleri

1. Bölüm Sayı Sistemleri 1. Bölüm Sayı Sistemleri Algoritma ve Programlamaya Giriş Dr. Serkan DİŞLİTAŞ 1.1. Sayı Sistemleri Sayı sistemleri; saymak, ölçmek gibi genel anlamda büyüklüklerin ifade edilmesi amacıyla kullanılan sistemler

Detaylı

8086 Mikroişlemcisi Komut Seti

8086 Mikroişlemcisi Komut Seti 8086 Mikroişlemcisi Komut Seti X86 tabanlı mikroişlemcilerin icra ettiği makine kodları sabit olmasına rağmen, programlama dillerinin komut ve ifadeleri farklı olabilir. Assembly programlama dilininde

Detaylı

Mikrobilgisayarda Aritmetik

Mikrobilgisayarda Aritmetik 14 Mikrobilgisayarda Aritmetik SAYITLAMA DİZGELERİ Sayıları göstermek (temsil etmek) için tarih boyunca türlü simgeler kullanılmıştır. Konumuz bu tarihi gelişimi incelemek değildir. Kullanılan sayıtlama

Detaylı

SAYI SİSTEMLERİ. 1. Sayı Sistemleri. Sayı Sistemlerinde Rakamlar

SAYI SİSTEMLERİ. 1. Sayı Sistemleri. Sayı Sistemlerinde Rakamlar SAYI SİSTEMLERİ 1. Sayı Sistemleri Sayı sistemleri; saymak, ölçmek gibi genel anlamda büyüklüklerin ifade edilmesi amacıyla kullanılan sistemler olarak tanımlanmaktadır. Temel olarak 4 sayı sistemi mevcuttur:

Detaylı

Fatih University- Faculty of Engineering- Electric and Electronic Dept.

Fatih University- Faculty of Engineering- Electric and Electronic Dept. SAYISAL DEVRE TASARIMI EEM122 Ref. Morris MANO & Michael D. CILETTI SAYISAL TASARIM 4. Baskı Fatih University- Faculty of Engineering- Electric and Electronic Dept. SAYISAL DEVRE NEDİR? Mühendisler, elektronik

Detaylı

BLM221 MANTIK DEVRELERİ

BLM221 MANTIK DEVRELERİ 2. HAFTA BLM221 MANTIK DEVRELERİ Prof. Dr. Mehmet Akbaba mehmetakbaba@karabük.edu.tr KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi Temel Kavramlar Tümleyen Aritmetiği r Tümleyeni

Detaylı

2. Sayı Sistemleri. En küçük bellek birimi sadece 0 ve 1 değerlerini alabilen ikili sayı sisteminde bir basamağa denk gelen Bit tir.

2. Sayı Sistemleri. En küçük bellek birimi sadece 0 ve 1 değerlerini alabilen ikili sayı sisteminde bir basamağa denk gelen Bit tir. 2. Sayı Sistemleri Bilgisayar elektronik bir cihaz olduğu için elektrik akımının geçirilmesi (1) yada geçirilmemesi (0) durumlarını işleyebilir. Bu nedenle ikili sayı sistemini temel alarak veri işler

Detaylı

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı MIKRODENETLEYICILER Ege Üniversitesi Ege MYO Mekatronik Programı BÖLÜM 5 Zamanlayıcılar Zamanlayıcı/Sayıcı 3 Zamanlayıcı/Sayıcı Zamanlayıcı: Zaman geciktirici olarak kullanıldığında verilen isim. Sayıcı:

Detaylı

MTM 305 MİKROİŞLEMCİLER

MTM 305 MİKROİŞLEMCİLER KARABÜK ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ BÖLÜMÜ MTM 305 MİKROİŞLEMCİLER Arş. Gör. Emel SOYLU Arş. Gör. Kadriye ÖZ Basit Giriş/Çıkış Teknikleri IN ve OUT komutları X86 komut kümesi

Detaylı

2. SAYI SİSTEMLERİ 2. SAYI SİSTEMLERİ

2. SAYI SİSTEMLERİ 2. SAYI SİSTEMLERİ Decimal ( Onlu 0,,,3,4,5,6,7,8,9 On adet digit). D ile gösterilir. Binary ( İkili 0, iki adet digit ). B ile gösterilir. Oktal ( Sekizli 0,,,3,4,5,6,7 sekiz adet digit ). O ile gösterilir. Hexadecimal

Detaylı

Her bir kapının girişine sinyal verilmesi zamanı ile çıkışın alınması zamanı arasında çok kısa da olsa fark bulunmaktadır -> kapı gecikmesi

Her bir kapının girişine sinyal verilmesi zamanı ile çıkışın alınması zamanı arasında çok kısa da olsa fark bulunmaktadır -> kapı gecikmesi Kapılardaki gecikme Her bir kapının girişine sinyal verilmesi zamanı ile çıkışın alınması zamanı arasında çok kısa da olsa fark bulunmaktadır -> kapı gecikmesi Kapılardaki gecikme miktarının hesaplanması

Detaylı

Bir işaretli büyüklük sayısında en soldaki basamak bir işaret içerir. Diğer basamaklarda ise sayısal değerin büyüklüğü (mutlak değeri) gösterilir.

Bir işaretli büyüklük sayısında en soldaki basamak bir işaret içerir. Diğer basamaklarda ise sayısal değerin büyüklüğü (mutlak değeri) gösterilir. İşaretli Tamsayı Gösterimi 1. İşaretli Büyüklük Bir işaretli büyüklük sayısında en soldaki basamak bir işaret içerir. Diğer basamaklarda ise sayısal değerin büyüklüğü (mutlak değeri) gösterilir. Örnek

Detaylı

Giriş MİKROİŞLEMCİ SİSTEMLERİ. Elektronik Öncesi Kuşak. Bilgisayar Tarihi. Elektronik Kuşak. Elektronik Kuşak. Bilgisayar teknolojisindeki gelişme

Giriş MİKROİŞLEMCİ SİSTEMLERİ. Elektronik Öncesi Kuşak. Bilgisayar Tarihi. Elektronik Kuşak. Elektronik Kuşak. Bilgisayar teknolojisindeki gelişme Giriş MİKROİŞLEMCİ SİSTEMLERİ Bilgisayar teknolojisindeki gelişme Elektronik öncesi kuşak Elektronik kuşak Mikroişlemci kuşağı Yrd. Doç. Dr. Şule Gündüz Öğüdücü 1 Bilgisayar Tarihi Elektronik Öncesi Kuşak

Detaylı

İLERI MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

İLERI MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı İLERI MIKRODENETLEYICILER Ege Üniversitesi Ege MYO Mekatronik Programı BÖLÜM 3 LCD Gösterge Kullanımı +5 LCD Modülün Bağlantısı 8K2 1K +5 10 P0.5 P0.6 P0.7 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 1 2 3

Detaylı

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar Algoritma ve Programlamaya Giriş mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar İçerik Algoritma Akış Diyagramları Programlamada İşlemler o o o Matematiksel Karşılaştırma Mantıksal Programlama

Detaylı

MTM 305 MĠKROĠġLEMCĠLER

MTM 305 MĠKROĠġLEMCĠLER KARABÜK ÜNĠVERSĠTESĠ TEKNOLOJĠ FAKÜLTESĠ MEKATRONĠK MÜHENDĠSLĠĞĠ BÖLÜMÜ MTM 305 MĠKROĠġLEMCĠLER ArĢ. Gör. Emel SOYLU ArĢ. Gör. Kadriye ÖZ Mantıksal Komutlar AND OR XOR NOT TEST And Komutu Yapı olarak AND

Detaylı

BILGISAYAR ARITMETIGI

BILGISAYAR ARITMETIGI 1 BILGISAYAR ARITMETIGI Sayısal bilgisayarlarda hesaplama problemlerinin sonuçlandırılması için verileri işleyen aritmetik buyruklar vardır. Bu buyruklar aritmetik hesaplamaları yaparlar ve bilgisayar

Detaylı

2. Sayı Sistemleri. En küçük bellek birimi sadece 0 ve 1 değerlerini alabilen ikili sayı sisteminde bir basamağa denk gelen Bit tir.

2. Sayı Sistemleri. En küçük bellek birimi sadece 0 ve 1 değerlerini alabilen ikili sayı sisteminde bir basamağa denk gelen Bit tir. 2. Sayı Sistemleri Bilgisayar elektronik bir cihaz olduğu için elektrik akımının geçirilmesi (1) yada geçirilmemesi (0) durumlarını işleyebilir. Bu nedenle ikili sayı sistemini temel alarak veri işler

Detaylı

DENEY III RAPORU MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI

DENEY III RAPORU MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI DENEY III RAPORU Hazırlayan : Beycan Kahraman No (Beycan) : 040020337 Grup Arkadaşı : Hani İsmail No ( Hani ) : 040020925 Grup No : 3 Deney Adı : G/Ç (PIA) Uygulamaları

Detaylı

8086 Mikroişlemcisi Komut Seti

8086 Mikroişlemcisi Komut Seti 8086 Mikroişlemcisi Komut Seti SUB ve SBB komutları: SUB (Subtract) yani çıkartma SBB ise borç ile çıkart (SuBtract with Borrow) anlamına gelir. Her iki çıkartma işlemi bir çıkartma sonucu üretmenin yanında

Detaylı

Mikroişlemcili Sistemler ve Laboratuvarı

Mikroişlemcili Sistemler ve Laboratuvarı SAKARYA ÜNİVERSİTESİ Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemcili Sistemler ve Laboratuvarı Zamanlayıcılar ve Sayıcılar Doç.Dr. Ahmet Turan ÖZCERİT Doç.Dr. Cüneyt

Detaylı

MTM 305 MĠKROĠġLEMCĠLER

MTM 305 MĠKROĠġLEMCĠLER KARABÜK ÜNĠVERSĠTESĠ TEKNOLOJĠ FAKÜLTESĠ MEKATRONĠK MÜHENDĠSLĠĞĠ BÖLÜMÜ MTM 305 MĠKROĠġLEMCĠLER ArĢ. Gör. Emel SOYLU ArĢ. Gör. Kadriye ÖZ KONTROL KOMUTLARI Program Kontrol Komutları Program akıģını bir

Detaylı

Algoritma ve Programlamaya Giriş

Algoritma ve Programlamaya Giriş Algoritma ve Programlamaya Giriş Algoritma Bir sorunu çözebilmek için gerekli olan sıralı ve mantıksal adımların tümüne Algoritma denir. Doğal dil ile yazılabilir. Fazlaca formal değildir. Bir algoritmada

Detaylı

n. basamak... 4. basamak 3. basamak 2. basamak 1. basamak Üstel değer 10 n-1... 10 3 10 2 10 1 10 0 Ağırlık 10 n-1...

n. basamak... 4. basamak 3. basamak 2. basamak 1. basamak Üstel değer 10 n-1... 10 3 10 2 10 1 10 0 Ağırlık 10 n-1... KAYNAK : http://osmanemrekandemir.wordpress.com/ SAYI SISTEMLERI Decimal(Onlu) Sayı sistemi günlük hayatta kullandığım ız 0,1,2,3,4,5,6,7,8,9 rakamlarından oluşur. Decimal(Onlu) Sayı sisteminde her sayı

Detaylı

Sayı sistemleri-hesaplamalar. Sakarya Üniversitesi

Sayı sistemleri-hesaplamalar. Sakarya Üniversitesi Sayı sistemleri-hesaplamalar Sakarya Üniversitesi Sayı Sistemleri - Hesaplamalar Tüm sayı sistemlerinde sayılarda işaret kullanılabilir. Yani pozitif ve negatif sayılarla hesaplama yapılabilir. Bu gerçek

Detaylı

Adresleme Modları. Mikroişlemciler ve Mikrobilgisayarlar

Adresleme Modları. Mikroişlemciler ve Mikrobilgisayarlar Adresleme Modları 1 Adresleme Modları İşlenenin nerede olacağını belirtmek için kullanılırlar. Kod çözme aşamasında adresleme yöntemi belirlenir ve işlenenin nerede bulunacağı hesaplanır. Mikroişlemcide

Detaylı

B.Ç. / E.B. MİKROİŞLEMCİLER

B.Ç. / E.B. MİKROİŞLEMCİLER 1 MİKROİŞLEMCİLER RESET Girişi ve DEVRESİ Program herhangi bir nedenle kilitlenirse ya da program yeniden (baştan) çalıştırılmak istenirse dışarıdan PIC i reset yapmak gerekir. Aslında PIC in içinde besleme

Detaylı

1. PORTB ye bağlı 8 adet LED i ikili sayı sisteminde yukarı saydıracak programı

1. PORTB ye bağlı 8 adet LED i ikili sayı sisteminde yukarı saydıracak programı 1. PORTB ye bağlı 8 adet LED i ikili sayı sisteminde yukarı saydıracak programı yazınız. SAYAC1 EQU 0X20 devam movlw B'00000000' call DELAY incf PORTB,f ;Akü ye 0' sabit değerini yaz. ;Aküdeki değer PORTB

Detaylı

8051 MİMARİSİ. Temel mimari yapısı Şekil 3.1 de görülmekte olan 8051 mikrodenetleyici ailesinin başlıca özellikleri aşağıda verilmiştir.

8051 MİMARİSİ. Temel mimari yapısı Şekil 3.1 de görülmekte olan 8051 mikrodenetleyici ailesinin başlıca özellikleri aşağıda verilmiştir. 8051 MİMARİSİ Temel mimari yapısı Şekil 3.1 de görülmekte olan 8051 mikrodenetleyici ailesinin başlıca özellikleri aşağıda verilmiştir. Kontrol uygulamaları için optimize edilmiş 8 bitlik CPU Genişletilmiş

Detaylı

d) x TABAN ARĐTMETĐĞĐ

d) x TABAN ARĐTMETĐĞĐ YILLAR 00 00 00 00 00 007 008 009 010 011 ÖSS-YGS - 1 1 - - - - - - - TABAN ARĐTMETĐĞĐ Genel olarak 10 luk sayı sistemini kullanırız fakat başka sayı sistemlerine de ihtiyaç duyarız Örneğin bilgisayarın

Detaylı

KASIRGA -4 Buyruk Tasarımı Belgesi. 30.04.2008 Ankara

KASIRGA -4 Buyruk Tasarımı Belgesi. 30.04.2008 Ankara KASIRGA -4 Buyruk Tasarımı Belgesi 30.04.2008 Ankara 1 İŞLEMLER 00000000 SYSCALL 00000001 HLT 00000010 DEBUG 00000011 CONTINUE S-TİPİ 00000100 NOP 00000101 IN 00000110 OUT 00000111 BRET 00001000 ADD 00001001

Detaylı

# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak #PIC enerjilendiğinde PORTA içeriğinin tersini PORTB de karşılık gelen biti 0 olacak

# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak #PIC enerjilendiğinde PORTA içeriğinin tersini PORTB de karşılık gelen biti 0 olacak # PIC enerjilendiğinde PORTB nin 0. biti 1 olacak - LIST=16F84 - PORTB yi temizle - BANK1 e geç - PORTB nin uçlarını çıkış olarak yönlendir - BANK 0 a geç - PORT B nin 0. bitini 1 yap - SON ;pic tanıtması

Detaylı

Sayılar Teorisi SAYILAR TEORİSİ VE SAYILAR

Sayılar Teorisi SAYILAR TEORİSİ VE SAYILAR Sayılar Teorisi SAYILAR TEORİSİ VE SAYILAR Sayılar; insanların ilk çağlardan beri ihtiyaç duyduğu bir gereksinim olmuştur; sayılar teorisi de matematiğin en eski alanlarından birisidir. Sayılar teorisi,

Detaylı

Sayı Sistemleri. Onluk, İkilik, Sekizlik ve Onaltılık sistemler Dönüşümler Tümleyen aritmetiği

Sayı Sistemleri. Onluk, İkilik, Sekizlik ve Onaltılık sistemler Dönüşümler Tümleyen aritmetiği Sayı Sistemleri Onluk, İkilik, Sekizlik ve Onaltılık sistemler Dönüşümler Tümleyen aritmetiği Giriş Bilgisayar ış ünyaan verileri sayılar aracılığı ile kabul eer. Günümüz teknolojisine bu işlem ikilik

Detaylı

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA 6. HAFTA EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA Öğr. Gör. S. M. Fatih APAYDIN apaydin@beun.edu.tr EMYO Bülent Ecevit Üniversitesi Kdz. Ereğli Meslek Yüksekokulu ALGORİTMA ÖRNEK1: İki sayının toplamı

Detaylı

DENEY-2. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

DENEY-2. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ DENEY-2 SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ 31 DENEY 2-1: YEDİ SEGMENT GÖSTERGE ÜZERİNDE VERİ GÖRÜNTÜLEME AMAÇ: Mikrodenetleyicinin portuna

Detaylı

SAYILAR DOĞAL VE TAM SAYILAR

SAYILAR DOĞAL VE TAM SAYILAR 1 SAYILAR DOĞAL VE TAM SAYILAR RAKAM: Sayıları ifade etmek için kullandığımız 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 sembollerinden her birine rakam denir. Soru: a ve b farklı rakamlar olmak üzere a + b nin alabileceği

Detaylı

14. MİKROİŞLEMCİ PROGRAMLAMA TEKNİKLERİ

14. MİKROİŞLEMCİ PROGRAMLAMA TEKNİKLERİ 221 14. MİKROİŞLEMCİ PROGRAMLAMA TEKNİKLERİ 14.1. Programlamaya Giriş Örnek Pr. 14-1 0040h bellek adresindeki 8-bit veriyi 0041h adresine transfer eden programõ yazõnõz. 0040H adresindeki veriyi A yazmacõna

Detaylı

EGE ÜNİVERSİTESİ EGE MYO MEKATRONİK PROGRAMI

EGE ÜNİVERSİTESİ EGE MYO MEKATRONİK PROGRAMI EGE ÜNİVERSİTESİ EGE MYO MEKATRONİK PROGRAMI 23.02.2015 Yrd.Doç.Dr. Dilşad Engin PLC Ders Notları 2 PROGRAMLANABİLİR DENETLEYİCİLER NÜMERİK İŞLEME 23.02.2015 Yrd.Doç.Dr. Dilşad Engin PLC Ders Notları 3

Detaylı

MTM 305 MİKROİŞLEMCİLER

MTM 305 MİKROİŞLEMCİLER KARABÜK ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ BÖLÜMÜ MTM 305 MİKROİŞLEMCİLER Arş. Gör. Emel SOYLU Arş. Gör. Kadriye ÖZ Ekran ve Klavye İşlemleri EKRAN İŞLEMLERİ Ekrana yazdırma işlemleri

Detaylı

Özet DERS 5. Şu ana kadar bilmeniz gerekenler... İşaretsiz Çarpma. Bayraklardaki Durumlar. İşaretli Çarpma

Özet DERS 5. Şu ana kadar bilmeniz gerekenler... İşaretsiz Çarpma. Bayraklardaki Durumlar. İşaretli Çarpma Özet DERS 5 Çarpma, Bölme ve Dallanmalar Öğr. Gör. Eren ERENER AİBÜ/DMYO Neredeyiz Çarpma Bölme Karşılaştırma Jump komutları Şu ana kadar bilmeniz gerekenler... İşaretsiz Çarpma Kaydediciler ve bellek

Detaylı

Sayıtlama Dizgeleri. (a n a n-1 a n1 a n0. b 1 b 2 b m )r. simgesi şu sayıyı temsil eder.

Sayıtlama Dizgeleri. (a n a n-1 a n1 a n0. b 1 b 2 b m )r. simgesi şu sayıyı temsil eder. 1 Sayıtlama Dizgeleri Hint-Arap Sayıtlama Dizgesi Sayıları göstermek (temsil etmek) için tarih boyunca türlü simgeler kullanılmıştır. Sümerlerin, Mısırlıların, Romalıların ve diğer uygarlıkların kullandıkları

Detaylı

16F84 ü tanıt, PORTB çıkış MOVLW h FF MOWF PORTB

16F84 ü tanıt, PORTB çıkış MOVLW h FF MOWF PORTB MİKROİŞLEMCİLER VE MİKRODENETLEYİCİLER 1 - DERS NOTLARI (Kısım 3) Doç. Dr. Hakan Ündil Program Örneği 9 : Gecikme altprogramı kullanarak Port B ye bağlı tüm LED leri yakıp söndüren bir program için akış

Detaylı

T.C. KOCAELİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ

T.C. KOCAELİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ T.C. KOCAELİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ Yrd. Doç. Dr. Mustafa Hikmet Bilgehan UÇAR 1 MANTIK DEVRELERİ Yrd. Doç. Dr. Mustafa Hikmet Bilgehan UÇAR Digital Electronics

Detaylı

DERS 7 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü

DERS 7 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü DERS 7 PIC 16F84 PROGRAMLAMA İÇERİK PIC 16F84 örnek programlar Dallanma komutları Sonsuz döngü Ders 7, Slayt 2 1 PROGRAM 1 RAM bellekte 0x0C ve 0x0D hücrelerinde tutulan iki 8-bit sayının toplamını hesaplayıp

Detaylı

BILGISAYAR ARITMETIGI

BILGISAYAR ARITMETIGI 1 BILGISAYAR ARITMETIGI BÖLME ALGORİTMALARI Bölme işlemi aşağıdaki şekilde sayısal olarak gösterilmektedir. Bölen B 5 bit, bölünen A 10 bittir. Bölünenin önemli 5 biti bölenle karşılaştırılır. Bu 5 bit

Detaylı

Algoritmalar ve Programlama. DERS - 2 Yrd. Doç. Dr. Ahmet SERBES

Algoritmalar ve Programlama. DERS - 2 Yrd. Doç. Dr. Ahmet SERBES Algoritmalar ve Programlama DERS - 2 Yrd. Doç. Dr. Ahmet SERBES Programlama Bilgisayara ne yapması gerektiğini, yani onunla konuşmamızı sağlayan dil. Tüm yazılımlar programlama dilleri ile yazılır. 1.

Detaylı

ALGORİTMA (ALGORITHM) M.İLKUÇAR -

ALGORİTMA (ALGORITHM) M.İLKUÇAR - ALGORİTMA (ALGORITHM) DÖNGÜLER (LOOPS) Döngü : Koşul sağlandığı sürece (true), işlem yada işlemlerin tekrarlanması. Örneğin; ekrana 100 adet * yazdırılması, x! v.b. gibi işlemlerde döngüler kullanılır.

Detaylı

SAYI VE KODLAMA SİSTEMLERİ. Teknoloji Fakültesi/Bilgisayar Mühendisliği

SAYI VE KODLAMA SİSTEMLERİ. Teknoloji Fakültesi/Bilgisayar Mühendisliği SAYI VE KODLAMA SİSTEMLERİ Teknoloji Fakültesi/Bilgisayar Mühendisliği Neler Var? Sayısal Kodlar BCD Kodu (Binary Coded Decimal Code) - 8421 Kodu Gray Kodu Artı 3 (Excess 3) Kodu 5 de 2 Kodu Eşitlik (Parity)

Detaylı

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ BİLGİSAYAR PROGRAMLAMA DERSİ 5. DERS NOTU Konu: Döngü Yapıları Hazırlayan: Yrd. Doç. Dr. Ahmet DUMLU DÖNGÜ YAPILARI Birçok uygulamada bazı işlemlerin tekrar tekrar gerçekleştirilmesi gerekir. Bizlere bu

Detaylı

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1 Programlama Dilleri C Dili Programlama Dilleri-ders02/ 1 Değişkenler, Sabitler ve Operatörler Değişkenler (variables) bellekte bilginin saklandığı gözlere verilen simgesel isimlerdir. Sabitler (constants)

Detaylı

Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk.

Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk. HARRAN ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk. 15 Nisan 2014 1) (10p) Mikroişlemcilerle Mikrodenetleyiceleri yapısal olarak ve işlevsel olarak karşılaştırarak

Detaylı

Mikroişlemcilerde Aritmetik

Mikroişlemcilerde Aritmetik Mikroişlemcilerde Aritmetik Mikroişlemcide Matematiksel Modelleme Mikroişlemcilerde aritmetik işlemler (toplama, çıkarma, çarpma ve bölme) bu iş için tasarlanmış bütünleşik devrelerle yapılır. Bilindiği

Detaylı

MTM 305 MİKROİŞLEMCİLER

MTM 305 MİKROİŞLEMCİLER KARABÜK ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ BÖLÜMÜ MTM 305 MİKROİŞLEMCİLER Arş. Gör. Emel SOYLU Arş. Gör. Kadriye ÖZ Alt Programlar (Procedure) Büyük programları tek bir kod bloğu

Detaylı

BLM221 MANTIK DEVRELERİ

BLM221 MANTIK DEVRELERİ 1. HAFTA BLM221 MANTIK DEVRELERİ Prof. Dr. Mehmet Akbaba mehmetakbaba@karabuk.edu.tr KBUZEM Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi Temel Kavramlar Sayı Sistemlerinin İncelenmesi

Detaylı

BIL 362 Mikroilemciler Dersi Final Sınavı Cevapları

BIL 362 Mikroilemciler Dersi Final Sınavı Cevapları 1. MACRO YAZDIR HEXSAYI MOV AX,HEXSAYI ; sayi 10 a bolunerek her seferinde kalan MOV DL,10 ; alinmistir. MOV CL,0 DONGU: DIV DL MOV BL,AH XOR AH,AH PUSH BX ; stack'a once birler basamagi atilir CMP AL,10

Detaylı

SAYISAL DEVRELER. İTÜ Bilgisayar Mühendisliği Bölümündeki donanım derslerinin bağlantıları

SAYISAL DEVRELER. İTÜ Bilgisayar Mühendisliği Bölümündeki donanım derslerinin bağlantıları SAYISAL DEVRELER Doç.Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü Sayısal Devreler Ders Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans: http://creativecommons.org/licenses/by-nc-nd/3.0/

Detaylı

Çok sayıda adım motoru tasarımı olmasına rağmen, bu motorlar iki değişik temel tür altında toplanabilir: değişken relüktanslı veya hibrid yapılı.

Çok sayıda adım motoru tasarımı olmasına rağmen, bu motorlar iki değişik temel tür altında toplanabilir: değişken relüktanslı veya hibrid yapılı. KTÜ Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemciler Laboratuarı ADIM MOTORUNUN MİKROBİLGİSAYARLARLA DENETİMİ 1. GENEL TANITIM Adım motorları, küçük momentli sayısal uygulamalarda son

Detaylı

Elektroniğe Giriş 1.1

Elektroniğe Giriş 1.1 İTÜ Bilgisayar Mühendisliği Bölümündeki donanım derslerinin bağlantıları Sayısal devreler bölümdeki diğer donanım dersinin temelini oluşturmaktadır. Elektroniğe Giriş SAYISAL DEVRELER Sayısal Elektronik

Detaylı

BÖLÜM 2 SAYI SĐSTEMLERĐ (NUMBER SYSTEMS)

BÖLÜM 2 SAYI SĐSTEMLERĐ (NUMBER SYSTEMS) BÖLÜM 2 SAYI SĐSTEMLERĐ (NUMBER SYSTEMS) Giriş Sayma ve sayı kavramının yeryüzünde ilk olarak nerede ve ne zaman doğduğu bilinmemekle beraber, bazı buluntular Sümer lerin saymayı bildiklerini ve bugün

Detaylı

MİKRO DENETLEYİCİLER II DERS NOTLARI (VİZE KONULARI) Prof. Dr. Hakan Ündil Bahar-Vize

MİKRO DENETLEYİCİLER II DERS NOTLARI (VİZE KONULARI) Prof. Dr. Hakan Ündil Bahar-Vize MİKRO DENETLEYİCİLER II DERS NOTLARI (VİZE KONULARI) Prof. Dr. Hakan Ündil 2014-2015 Bahar-Vize BÖLÜM 7 - LOJİK İŞLEM KOMUTLARI 7.1. RLF Komutu (Bir bit Sola Kaydırma) Bir file register içinde bulunan

Detaylı

BLM1011 Bilgisayar Bilimlerine Giriş I

BLM1011 Bilgisayar Bilimlerine Giriş I BLM1011 Bilgisayar Bilimlerine Giriş I by Z. Cihan TAYŞİ İçerik Sayı sistemleri Binary, Octal, Decimal, Hexadecimal Operatörler Aritmetik operatörler Mantıksal (Logic) operatörler Bitwise operatörler Yıldız

Detaylı

SAYISAL ELEKTRONİK DERS NOTLARI:

SAYISAL ELEKTRONİK DERS NOTLARI: SAYISAL ELEKTRONİK DERS NOTLARI: SAYISAL (DİJİTAL) ELEKTRONİK Günümüz Elektroniği Analog ve Sayısal olmak üzere iki temel türde incelenebilir. Analog büyüklükler sonsuz sayıda değeri içermesine rağmen

Detaylı

MTM 305 MĠKROĠġLEMCĠLER

MTM 305 MĠKROĠġLEMCĠLER KARABÜK ÜNĠVERSĠTESĠ TEKNOLOJĠ FAKÜLTESĠ MEKATRONĠK MÜHENDĠSLĠĞĠ BÖLÜMÜ MTM 305 MĠKROĠġLEMCĠLER ArĢ. Gör. Emel SOYLU ArĢ. Gör. Kadriye ÖZ Aritmetik İşlemler Aritmetik iģlemler toplama, çıkartma, çarpma

Detaylı

Program Kodları. void main() { trisb=0; portb=0; while(1) { portb.b5=1; delay_ms(1000); portb.b5=0; delay_ms(1000); } }

Program Kodları. void main() { trisb=0; portb=0; while(1) { portb.b5=1; delay_ms(1000); portb.b5=0; delay_ms(1000); } } Temrin1: PIC in PORTB çıkışlarından RB5 e bağlı LED i devamlı olarak 2 sn. aralıklarla yakıp söndüren programı yapınız. En başta PORTB yi temizlemeyi unutmayınız. Devre Şeması: İşlem Basamakları 1. Devreyi

Detaylı

PIC TABANLI, 4 BASAMAKLI VE SER

PIC TABANLI, 4 BASAMAKLI VE SER PIC TABANLI, 4 BASAMAKLI VE SERİ BAĞLANTILI 7 SEGMENT LED PROJESİ Prof. Dr. Doğan İbrahim Yakın Doğu Üniversitesi, Mühendislik Fakültesi, Bilgisayar Mühendisliği Bölümü, Lefkoşa E-mail: dogan@neu.edu.tr,

Detaylı

LPC2104 Mikro Denetleyicisini KEIL İle Programlamak

LPC2104 Mikro Denetleyicisini KEIL İle Programlamak LPC2104 Mikro Denetleyicisini KEIL İle Programlamak Program yazabilmek için öncelikle komutları tanımamız ve ne işe yaradıklarını bilmemiz gerekir. Komutlar yeri geldikçe çalışma içerisinde anlatılacaktır.

Detaylı

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN Bahar Dönemi Öğr.Gör. Vedat MARTTİN 8086/8088 MİKROİŞLEMCİSİ İÇ MİMARİSİ Şekilde x86 ailesinin 16-bit çekirdek mimarisinin basitleştirilmiş bir gösterimi verilmiştir. Mikroişlemci temel iki ayrı çalışma

Detaylı

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8 ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8 YZM 1105 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi 6. BÖLÜM 2 Çok Boyutlu Diziler Çok Boyutlu Dizi 3 Bir dizi aşağıdaki gibi bildirildiğinde

Detaylı

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı MIKRODENETLEYICILER Ege Üniversitesi Ege MYO Mekatronik Programı BÖLÜM 7 Kesmeler Kesme (Interrupt) Donanım işareti ile mikroişlemcinin program akışını değiştirme işlemine kesme denir. Kullanım amacı;

Detaylı

Konular MİKROİŞLEMCİ SİSTEMLERİ. Giriş. Bilgisayar Tarihi. Elektronik Kuşak. Elektronik Öncesi Kuşak

Konular MİKROİŞLEMCİ SİSTEMLERİ. Giriş. Bilgisayar Tarihi. Elektronik Kuşak. Elektronik Öncesi Kuşak Konular MİKROİŞLEMCİ SİSTEMLERİ Giriş: Bilgisayar Tarihi Mikroişlemci Temelli Sistemler Sayı Sistemleri Doç. Dr. Şule Gündüz Öğüdücü http://ninova.itu.edu.tr/tr/dersler/bilgisayar-bilisim-fakultesi/30/blg-212/

Detaylı

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 6. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Veri Tipleri Yük. Müh. Köksal Gündoğdu 2 Veri Tipleri Tam sayı ve Ondalık sayı veri tipleri Veri Tipi Alt Sınıf Üst Sınıf Duyarlı

Detaylı

ÖRNEK 1: Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır:

ÖRNEK 1: Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır: ALGORİTMANIN HAZIRLANMASI, herhangi bir sorunun çözümü için izlenecek yol anlamına gelmektedir. Çözüm için yapılması gereken işlemler hiçbir alternatif yoruma izin vermeksizin sözel olarak ifade edilir.

Detaylı

SAYI SİSTEMLERİ. Sayı Sistemleri için Genel Tanım

SAYI SİSTEMLERİ. Sayı Sistemleri için Genel Tanım SAYI SİSTEMLERİ Algoritmalar ve Programlama dersi ile alakalı olarak temel düzeyde ve bazı pratik hesaplamalar dahilinde ikilik, onluk, sekizlik ve onaltılık sayı sistemleri üzerinde duracağız. Özellikle

Detaylı

Bilgisayarların Gelişimi

Bilgisayarların Gelişimi Bilgisayarların Gelişimi Joseph Jacquard (1810) Bilgisayar tabanlı halı dokuma makinesi Delikli Kart (Punch Card) Algoritma ve Programlama 6 Bilgisayar Sistemi 1. Donanım fiziksel aygıtlardır. 2. Yazılım

Detaylı

INTEGER OVERFLOW ***************************************************************/

INTEGER OVERFLOW ***************************************************************/ INTEGER OVERFLOW BELGE HAKKINDA Bu belge "GNU Free Documentation Licence" ile kaynak gösterilmek ve önceden yazarından izin alınmak kaydıyla yeniden yayınlanabilir. Bu belgedeki eksik, yanlış ya da geliştirilmesi

Detaylı

Internet Programming II

Internet Programming II Internet Programming II Elbistan Meslek Yüksek Okulu 2016 2017 Bahar Yarıyılı Öğr.Gör. Murat KEÇECĠOĞLU 1 Fonksiyonlar Değişken Kontrol Fonksiyonları isset() Fonksiyonu Parametre olarak aldığı değişken

Detaylı