İŞLEMCİ DURUM KAYDEDİCİSİ (PROCESSOR STATUS REGISTER)

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "İŞLEMCİ DURUM KAYDEDİCİSİ (PROCESSOR STATUS REGISTER)"

Transkript

1 Mikroişlemci içinde yapılan işlemlerin durumlarını programcıya bildiren bir kaydedici mevcuttur. Tüm karar alma mekanizmaları bu kaydedicide gösterilen sonuçlar baz alınarak yapılır. İŞLEMCİ DURUM KAYDEDİCİSİ (PROCESSOR STATUS REGISTER) Diyelim ki klavyeden girilen iki adet değişken var bunlar eşit ise ekrana "eşit" eşit değilse "eşit değil" yazdırmak istiyoruz. Bunu üst seviye programlama dillerinde basit bir şekilde if-else mantığıyla yapabilirsiniz. Peki, mikroişlemci bu değerlerin eşit olup olmadığını nasıl gösterecek bize. Cevabı basit bu değerlerin farkını alarak, sonuç sıfırsa girilen değerler eşittir aksi takdirde eşit değildir. İyi ama assembly programcısı bu sonuç sıfır değerini nereden okuyacak? Bir işlemin sonucunun sıfır, negatif, pozitif veya elde ürettiği veya işlemin gerçekleştirilmesi için borç alındığı gibi durumları gösteren kaydediciye işlemci durum kaydedicisi diyoruz. Turbo debugger ile işlemci durum kaydedicisinin içeriğini gözlemleyebilirsiniz. Şekil da işlemci durum kaydedicisi. Şekilde kırmızı çerçeve içine alınmış kısım işlemci durum kaydedicisini bitsel olarak gösteriyor. Diğer kaydedicilerin aksine işlemci durum kaydedicisi programcı için bitsel olarak anlamlıdır. Ve bu bitlerin her birinin bir adı vardır. Örneğin C biti Carry yani taşıma biti veya Z biti Zero yani sıfır biti dir. Terminolojide genellikle bu bitler "flag" yani bayrak olarak adlandırılır. Aslında assembly programcıları işlemci durum kaydedicisi yerine bayrak kaydedicisi terimini daha çok kullanırlar. Örneğin Z için Zero Flag yani sıfır bayrağı denir. 8086, 80286, 80386, ve Pentium işlemcilerin bayrak kaydedicileri biraz farklıdır, daha doğrusu işlemciler geliştikçe ek bayraklar eklenmiştir, mesela dan itibaren işletim sistemlerinin yazımı için gerekli olan ayrıcalıklı mod bayrağı eklenmiştir. Yukarıdaki şekilde 8086 nın 8 bitlik bayrak kaydedicisini görmektesiniz, aşağıdaki şekilde ise 8086 dan ya kadar olan işlemcilerin sahip olduğu bayrakları görebilirsiniz.

2 Şekil 2 - x86 işlemci durum (bayrak) kaydedicisi. Bayrak kaydedicisindeki her bir bitin 1 olma durumuna SET, 0 olma durumuna da RESET denir. İşlemcinin ürettiği sonuçlar hakkında programcıyı uyaran bayrak kaydedicisindeki durumlar görecelidir. Örneğin carry (taşıma) bayrağı 1 olduğunda bazen işlemin elde ürettiğini bazen de borç alındığını ifade edebilir. Bazen de iki bayrağın durumu birlikte değerlendirilerek bazı sonuçlara varılır. Örneğin; MOV AX,0FFFEh ;FFFE = işaretsiz sayıyı temsil ederse ADD AX, 3 ; C = 1, O = 0 olur ve bu bir boyut taşmasını gösterir. Bu örneği daha iyi anlayabilmemiz için bazı matematik konularını hatırlatmak gerekir. Hani bir fonksiyonun çözümü için sorularda "her x gerçel sayısı için" gibi ifadeler geçer ya, işte bu tür kabullenmeler assembly dilinde çok önemlidir. Çünkü 1 ve 0 ları ancak bu şekilde yorumlayabilirsiniz, yani baştan evrensel kümenizi kafanızda tanımlamanız gerekir. Bu örnekte de FFFE=65534 değerini gösterirse diye başlıyoruz işe, nitekim FFFE işaretli sayı olarak kabul edilseydi -2 değerini gösterecekti. Ama burada işaretli değil sadece pozitif tamsayılarla işlem yapıldığı varsayılıyor. Bu işlemin sonucu AX kaydedicisinde 0001 olarak görülür. İşlemci sayıların işaretli veya işaretsiz olduğuna bakmadan FFFE ye 3 ekler ve FFFE değeri önce FFFF sonra 0000 ve daha sonrada 0001 olur. Tabi ki , işleminin sonucu 1 e eşit değildir. İşlemin doğru sonucu olan değeri 2 byte lık AX kaydedicisinin içine sığmadığından bu sonuç üretilmiştir. Bu toplama işlemi sürecinde sayı FFFF den 0000 a dönerken C=1 olur, bunu elde olarak düşünebilirsiniz (tabi ki pozitif tamsayılar kümesi baz alınarak işlem yapılıyorsa) Aslında 0001 sonucunun başına bu elde getirildiğinde yani sonuç C biti ile birlikte okunursa olur ve bu gerçektende değerine eşittir. Fakat programcı doğal olarak AX kaydedicisini içindeki değeri yani 0001 i sonuç olarak alacaktır. Burada sonuç anlamlı aralık olan arasında olduğundan O=0 olmuştur. Özetle sonuç anlamlı aralıkta yanlış bir değerdir, bu durumu programcı iki bayrağa birden bakarak anlayabilir. Yukarıdaki gibi bir durumda programcı işlem yapıldıktan sonra bazı özel komutlarla C ve O (overflowtaşma) bitlerinide kontrol eder ve bu bitler sırasıyla 1 ve 0 ise bir boyut taşması olmuş demektir. Bu durumda programcı kullanıcı ekranına "sonuç çok büyük" gibi bir mesaj gönderebilir. Hesap makinelerinin belli bir değere kadar işlem yapabildiğini hatırlayın. Bu örnek için en başta FFFE işaretli bir saydır deseydik herhangi bir taşma söz konusu olmayacaktı. İşlemci yine aynı sonucu üretecek fakat bu sefer programcı bunu -2+3 olarak değerlendireceğinden sonuç doğal olarak 1 ve AX te 0001 değeri doğru sonuç olacaktı. Yine C=1 ve O=0 olsa da programcı için bu durum bir

3 taşmayı göstermeyecektir. İşte assembly programlama dili matematiğin bu basit gibi görünen temellerine bağlıdır. Hafızadaki 1 ve 0 ları nasıl yorumlarsanız öyle şekil alırlar. Bazen bu 1 ve 0 lar bir resim, bazen bir mp3 bazen de bir kelime oluveririler. Hani matrix filminde herkes kodlara bakıyor ama sadece Neo olayı idrak edebiliyorduya işte o misal 8086 için bayrak kaydedicisi 16 bitliktir ve bu 16 bit te sadece 9 adet bayrak mevcuttur. 386 ve sonrası işlemcilerde ise bayrak kaydedicisi 32 bitliktir ve bu 32 bit in her biri bir bayrağı temsil etmez, aralarda hiçbir şeyi ifade etmeyen boş bit ler mevcuttur. Şu anda gerçek mod programları yani 8086 için programlar yazdığımızdan bu 9 adet bayrağın ne anlama geldiklerini incelememiz yeterlidir. Overflow Flag (OF) (Taşma Bayrağı): İşaret taşması olduğunda olduğunda set (1) olur, mesela 1 byte lık işaretli sayılarda =150 dir, fakat sonuç aralığında değildir. Direction Flag (DF) (Yön bayrağı): String işlemlerini yapan komutlar için kullanılır. 1 olduğunda index kaydedicisi otomatik olarak azalır. 0 ise index kaydedicisi otomatik olarak artar. (mesela bir string hafızanın bir bölgesinden başka bir bölgeye kopyalanırken işlemin stringin sonundanmı yoksa başındanmı yapılacağını D flag ile belirleyebilirsiniz) Interrupt-enable Flag (IF) (Kesme Yetki bayrağı): 1 olduğunda maskelenebilir kesmeler kullanılabilir. (kesmeler hakkında ayrıntı sonraki makalelerimizde!) Single-step Flag or Trace (TF) (Tek Adım veya İzleme Bayrağı): Genelde debugger programları için kullanılır, 1 olduğunda bir anda sadece 1 komut işlenir. Sign Flag (SF) (İşaret Bayrağı): MSB biti (en soldaki bit) 1 olduğunda bu bayrakta 1 olur. Zero Flag (ZF) (Sıfır Bayrağı): Sonuç sıfır olduğunda 1 olur. Auxiliary carry Flag (AF) (Ara Elde Bayrağı): AL kaydedicisinin 0-3 arasındaki bitlerinde yapılan işlemde elde veya borç üretilirse 1 olur. Parity Flag (PF) (Eşlik Bayrağı): 1 olduğunda sonucun düşük değerlikli baytındaki (mesela 127Fh gibi word boyutunda bir sonuç üretilmişse bunun 7F kısmı için) 1 lerin sayısının çift olduğunu gösterir. Carry Flag (CF) (Taşıma Bayrağı): 1 olduğunda elde üretildiğini veya borç alındığını belirtir. Bayrak Kaydedicisini özetleyecek olursak, 1- İşlemcinin yaptığı işlemlerin özel durumlarını gösterirler 2- Bazı işlemler yapılmadan önce bazı bayrakların 1 ya da 0 yapılması gerekebilir 3- Programcılar bazı işlemleri anlayabilmeleri için bazen birden fazla bayrağın birlikte ürettikleri durumları göz önüne almak zorundadırlar. Uzun bir süre bu bayraklardan OF, SF, ZF, CF olanları bizim için önemli olacak. Şimdi bayrak kaydedicisi ve bayraklarla ilgili kafanızda daha belirgin bir şeklin oluşabilmesi için ilk örneğe bakalım. Şimdi yapacağımız programda kullanıcı klavyeden 2 adet değer girecek ve bu değerler eşitse ekrana "Girilen Degerler Esittir" yazacak değilse "Girilen Degerler Esit Degildir" yazacak. İlk bakışta kullanıcı sayıları bilmiyor mu kardeşim ne gerek var böyle bir programa diyebilirsiniz :) Fakat değerlerin klavyeden değil de paralel porttan alındığını ve bu port un bir klimaya bağlı olduğunu ve hava sıcaklığının 24C 0 ye eşit olup olmadığını test eden ve eşitse klimayı durduran değilse çalıştıran bir programında bundan pek farklı

4 olmayacağını tahmin edebilirsiniz. Bu örnekte henüz işlemediğimiz konulardan olan "ekran ve klavye işlemleri" ve "şartlı dallanmalar" konularını kapsayan komutlar kullanılacak. MOV AH,01 INT 21h JMP HedefAdres JE HedefAdres CMP BL, AL Bu komutlardan sonra program kullanıcı giriş yapana kadar durur ve kullanıcı klavyeden değer girdiğinde o değerin ASCII kod karşılığı AL kaydedicisine yerleştirilir. Bu komut ile hedef adrese dallanma gerçekleştirilir. Bu komut ile hedef adrese Z bayrağı 1 ise dallanma gerçekleştirilir. Bu komut BL ile AL kaydedicisini karşılaştırır. Kaynak ve Hedef operand değerleri birbirine eşit ise Z bayrağı set (1) edilir. TITLE Eşitmi (esitmi.asm) ;######################################## ;# Klavyeden Girilen Değerler Eşitmi # ;# Son Güncelleme: 08/06/05 # ;# Yazan --> Eren ERENER # ;########################################.MODEL SMALL.STACK 32.DATA Esittir DB 0Ah,0Dh,"Girilen Degerler Esittir$" ;Esittir adında her bir elemanı bellekte 1 byte yer kaplayan başlangıç değeri Girilen Degerler Esittir olan değişken tanımlanıyor. EsitDegil DB 0Ah,0Dh,"Girilen Degerler Esit Degildir$" AltSatir DB 0Ah,0Dh,24h.CODE ANA PROC MOV MOV DS, AX ;Data segment ;ayarlanıyor. MOV AH, 01 ;Klavyeden 1. karakter, INT 21h ;giriliyor. MOV BL,AL ;Bu karakter BL'de saklanıyor. MOV DX, offset AltSatir ;Bir alt, MOV AH,9 ;satıra, INT 21h ;geç. MOV AH, 01 ;Klavyeden 2. karakter, INT 21h ;giriliyor.

5 CMP BL,AL ;1. ve 2. karakterler karşılaştırılıyor. JE ESIT ;Bu karakterler eşitse ESIT yazan yere dallanılacak. MOV DX, offset EsitDegil ;Aksi halde, MOV AH,9 ;bu, INT 21h ;komutlar, JMP BITIR ;işlenecek. ESIT: MOV DX, offset Esittir ;1. ve 2. karakterler, MOV AH,9 ;eşitse, INT 21h ;işlenecek olan komutlar. BITIR: MOV AH,4Ch ;DOS'a INT 21h ;dönüş ANA ENDP END ANA

6 Şekil 4 - Klavyeden girilen değerleri test eden program. Yukarıdaki programı TASM ile derleyin. Bu programı çalıştırdığınızda sizden iki adet değer girmenizi isteyecek, değerleri girerken enter tuşuna basmanıza gerek yok. Şayet girilen değerler eşitse ekranda "Girilen Degerler Esittir" değilse "Girilen Degerler Esit Degildir" mesajını göreceksiniz.

7 Şekil 5 - Programın ekran çıktısı. Değerlerin eşit olup olmama durumunu belirleyen işlemci durum kaydedicisinin Z biti (Z bayrağı) dir. Bu bayrağın durumu karşılaştırma komutundan sonra girilen değerlere göre 1 yada 0 olur. Şayet girilen değerler eşit ise, eşit olan bu değerler karşılaştırılır ve sonuç sıfır elde edilir, bu durumda Z=1 olur. JE komutu ise ancak Z=1 olduğunda, operandında belirtilen adrese dallanma işlemini geçekleştirir. Aksi durumda işlemci klasik yolunu izler ve bir sonraki komutu işler.

8 Şekil 6 - Z=1 olduğunda 0024h offset adresine dallanılacak. Klavyeden farklı değerler girildiğinde ise, karşılaştırma işleminin sonucunda z=0 olur. Bu durumda dallanma gerçekleşmez ve işlemci normal seyrini sürdürerek bir sonraki komutu işler.

9 Şekil 7 - Z=0 olduğunda dallanma gerçekleşmeyecek, program sonraki komutu takip edecektir. Bayrakların durumları bayrakları etkileyen bir komut işlendiğinde değişir, her komut bayrakları etkilemez. Burada CMP komutu 6 adet bayrağı etkiliyor. Hangi komutun hangi bayrakları etkilediğine Intel in komut setinden bakabilirsiniz. Komut setinden CMP komutunu bulursanız bu 6 bayrağın neler olduğunu görebilirsiniz.

10 Şekil 8 - CMP ile AF, CF, OF, PF, SF, ZF bayrakları etkilenir. İsterseniz Şekil7 deki etkilenen tüm bayrakları ve neden dolayı 1 ya da 0 olduklarını inceleyelim. Burada yapılan işlem "CMP BL, AL" dir ve BL=33, AL=34 dür. BL-AL yani 33h-34h işlemini yapan CMP komutu aşağıdaki nedenlerden dolayı bu bayrakları etkilemiştir işlemi için borç gerektiğinden (Küçük sayı büyük sayıdan çıkartılıyor) CF=1, 2- Bu işlemin sonucu sıfır olmadığından ZF=0, 3- İşlemin sonucu negatif olduğundan SF=1, 4- İşlem sonucunda bir işaret taşması olmadığından OF=0, 5- Sonuçta elde edilen -1 yani FFh, başka bir deyişle b değerindeki 1 lerin sayısı sekiz adet yani çift olduğundan PF=1, 6- Binary olarak çıkartma işleminde daha 2. bitte 0 dan 1 çıkarılırken borç alındığından AF=1 olmuştur. Bizim programımızda sadece Z bayrağının durumu önemli olduğundan bu bayrağın durumuna göre programın akışını kontrol eden JE komutunu kullandık. Aslında burada JE komutu ile ilerleyen makalelerde ele alacağımız if-else mantığını oluşturduk. Gördüğünüz gibi program akış kontrolünde bayraklar hayati önem taşır. İşlemci durum kaydedicisinde bulunan bu bayraklar şu anda aklınızın alamayacağı bir çok işlemde bizlere yardımcı olacak. Bu konuyu daha iyi anlamak için Turbo Debugger da programın her komutunu adım-adım çalıştırın ve komut setinden faydalanarak, çalıştırdığınız komutun etkilediği bayrak varsa bunun nedenini araştırın. Kaynak Csharpnedir.com

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ı

Program Kontrol Komutları. Mikroişlemciler ve Mikrobilgisayarlar 1

Program Kontrol Komutları. Mikroişlemciler ve Mikrobilgisayarlar 1 Program Kontrol Komutları Mikroişlemciler ve Mikrobilgisayarlar 1 Bu başlık, altında incelenecek olan komutlar program akışını oluşan bazı koşullara göre değiştirmektedirler Program akışında meydana gelen

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ı

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ı

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ı

Ders 3 ADRESLEME MODLARI ve TEMEL KOMUTLAR

Ders 3 ADRESLEME MODLARI ve TEMEL KOMUTLAR Ders 3 ADRESLEME MODLARI ve TEMEL KOMUTLAR GÖMÜLÜ PROGRAMLAMA Selçuk Üniversitesi Bilgisayar Mühendisliği Bölümü 2012-2013 Bahar Dönemi Doç.Dr.Erkan ÜLKER 1 İçerik 1. Adresleme Modları 2. İskelet Program

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ı

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 2 8086 Mimarisi 8086 da bulunan tüm iç register lar ve veri yolları

Detaylı

Debug Komutları C:\>DEBUG - Çizgi işareti artık debug programının komut kabul etmeye hazır olduğunu belirtmektedir.

Debug Komutları C:\>DEBUG - Çizgi işareti artık debug programının komut kabul etmeye hazır olduğunu belirtmektedir. Debug Komutları Assembly komutlarının nasıl çalıştıklarını deneyerek görmek ve yazılan programların amacına uygun çalışıp çalışmadığını anlamak varsa hatalarını düzeltmek için DOS'un DEBUG.COM isimli programı

Detaylı

Assembly Dili Nedir? Assembly dili biliyorum derken hangi işlemci ve hangi işletim sistemi için olduğunu da ifade etmek gerekir.

Assembly Dili Nedir? Assembly dili biliyorum derken hangi işlemci ve hangi işletim sistemi için olduğunu da ifade etmek gerekir. Assembly Dili Nedir? Assembly dili biliyorum derken hangi işlemci ve hangi işletim sistemi için olduğunu da ifade etmek gerekir. Bunun için X86 PC Assembly dili, Power PC Assembly dili veya 8051 Assembly

Detaylı

Bölüm 5: ARITMETIK VE MANTIK IŞLEM YAPAN KOMUTLAR

Bölüm 5: ARITMETIK VE MANTIK IŞLEM YAPAN KOMUTLAR Bölüm 5: ARITMETIK VE MANTIK IŞLEM YAPAN KOMUTLAR Toplama (Addition) Toplama (ADD) belirtilen iki yazaç veya yazaç ile belleğin içeriğini toplar ve kullanılan adresleme moduna göre sonucu belirtilen yazaca

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ı

BİLGİSAYAR MİMARİSİ. Bilgisayar Bileşenleri Ve Programların Yürütülmesi. Özer Çelik Matematik-Bilgisayar Bölümü

BİLGİSAYAR MİMARİSİ. Bilgisayar Bileşenleri Ve Programların Yürütülmesi. Özer Çelik Matematik-Bilgisayar Bölümü BİLGİSAYAR MİMARİSİ Bilgisayar Bileşenleri Ve Programların Yürütülmesi Özer Çelik Matematik-Bilgisayar Bölümü Program Kavramı Bilgisayardan istenilen işlerin gerçekleştirilebilmesi için gereken işlem dizisi

Detaylı

Bildiğiniz gibi programları oluşturan kodlar ve veriler hafızaya yüklendikten sonra işlemci tarafından satırsatır icra edilirler.

Bildiğiniz gibi programları oluşturan kodlar ve veriler hafızaya yüklendikten sonra işlemci tarafından satırsatır icra edilirler. ADRESLEME MODLARI Bildiğiniz gibi programları oluşturan kodlar ve veriler hafızaya yüklendikten sonra işlemci tarafından satırsatır icra edilirler. Ayrıca CPU tüm giriş çıkış işlemlerini de hafızaya erişerek

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ı

Quiz:8086 Mikroişlemcisi Mimarisi ve Emirleri

Quiz:8086 Mikroişlemcisi Mimarisi ve Emirleri Öğrenci No Ad-Soyad Puan Quiz:8086 Mikroişlemcisi Mimarisi ve Emirleri S1) 8086 mikroişlemcisi bitlik adres yoluna ve.. bitlik veri yoluna sahip bir işlemcidir. S2) 8086 Mikroişlemci mimarisinde paralel

Detaylı

4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları

4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları 4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları Şart yapıları bir bilgisayar programının olmazsa olmazlarındandır. Şart yapıları günlük hayatımızda da çok fazla karşılaştığımız belirli

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ı

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ı

8086 dan core2 ya yazaç yapısını tanımak. Bayrak yazacının içeriğinde yer alan bayrakların görevlerini tanımlamak. Real mod çalışmada bellek

8086 dan core2 ya yazaç yapısını tanımak. Bayrak yazacının içeriğinde yer alan bayrakların görevlerini tanımlamak. Real mod çalışmada bellek 8086 dan core2 ya yazaç yapısını tanımak. Bayrak yazacının içeriğinde yer alan bayrakların görevlerini tanımlamak. Real mod çalışmada bellek kullanımını tanımlamak. Korumalı modda belleğe erişim yöntemlerini

Detaylı

Sistem Programlama. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir.

Sistem Programlama. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir. Kesmeler çağırılma kaynaklarına göre 3 kısma ayrılırlar: Yazılım kesmeleri Donanım

Detaylı

BM-311 Bilgisayar Mimarisi

BM-311 Bilgisayar Mimarisi 1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Bilgisayar Bileşenleri Bilgisayarın Fonksiyonu Instruction Cycle Kesmeler (Interrupt lar)

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ı

BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Bilgisayar Bileşenleri Bilgisayarın Fonksiyonu Instruction Cycle Kesmeler (Interrupt lar) Bus

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ı

MİKROBİLGİSAYAR SİSTEMLERİ. Teknik Bilimler Meslek Yüksekokulu

MİKROBİLGİSAYAR SİSTEMLERİ. Teknik Bilimler Meslek Yüksekokulu MİKROBİLGİSAYAR SİSTEMLERİ Teknik Bilimler Meslek Yüksekokulu Dersin Amacı Mikroişlemciler Mikrodenetleyiciler PIC Mikrodenetleyiciler Micro BASIC Programlama Kullanılacak Programlar MSDOS DEBUG PROTEUS

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ı

Komutların Yürütülmesi

Komutların Yürütülmesi Komutların Yürütülmesi Bilgisayar Bileşenleri: Genel Görünüm Program Sayacı Komut kaydedicisi Bellek Adres Kaydedicisi Ara Bellek kaydedicisi G/Ç Adres Kaydedicisi G/Ç ara bellek kaydedicisi 1 Sistem Yolu

Detaylı

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler C# Programlama Dili İlk programımız Tür dönüşümü Yorum ekleme Operatörler 1 İlk Programımız Bu program konsol ekranına Merhaba dünya! yazıp kapanır. Programı geçen derste anlatıldığı gibi derleyin, sonra

Detaylı

PROGRAMLAMA DİLLERİ I

PROGRAMLAMA DİLLERİ I PROGRAMLAMA DİLLERİ I Öğr. Gör. M. Mutlu YAPICI Ankara Üniversitesi Elmadağ Meslek Yüksekokulu Ders İzlencesi Öğr. Gör. M. Mutlu YAPICI Hafta 1. Hafta 2. Hafta 3. Hafta 4. Hafta 5. Hafta 6. Hafta 7. Hafta

Detaylı

BM-311 Bilgisayar Mimarisi

BM-311 Bilgisayar Mimarisi 1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Processor organization Register organization Instruction cycle 2 Processor organization İşlemci

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ı

Ders Özeti. Ders 2. PC nin İç Organizasyonu. Mikroişlemcinin Organizasyonu. Basitçe İşlemciyi Oluşturan Parçalar. Mikroişlemciler

Ders Özeti. Ders 2. PC nin İç Organizasyonu. Mikroişlemcinin Organizasyonu. Basitçe İşlemciyi Oluşturan Parçalar. Mikroişlemciler Ders Özeti Ders Bilgisayarlar Hakkında Mikroişlemci ve Bilgisayar sisteminin yapısı Temel komut işleme süreci x86 kaydedicileri (registers) x86 hafıza temelleri Çevre cihazları x86 assembly diline giriş

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-11 Karakter Diziler. Yrd. Doç. Dr. Ümit ATİLA BLM-111 PROGRAMLAMA DİLLERİ I Ders-11 Karakter Diziler Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Karakter ve String Karakter Karakter bir sabit tek tırnak

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ı

Assembly Programlama

Assembly Programlama Assembly Programlama X86: X86 Intel in ilk mikroişlemcilerinden olan 8086 ile ilgili programlama kurallarını ifade eden bir tanımlamadır. Intel in önemli özelliklerinden biri olan "geriye dönük yazılım

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ı

if (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");

if (ad == Sabri) Console.WriteLine(Merhaba Sabri. Ne zamandır gözükmüyodun...); Koşul İfadeleri ve Akış Kontrolü Koşul ifadeleri ve akış kontrolleri programlama dillerinde her zaman en önemli yeri tutmaktadır. Yazdığımız uygulamanın hangi koşulda nasıl davranacağını belirterek bir

Detaylı

http://alikoker.name.tr Assembly Programlama Dili T e m m u z 2 0 0 3

http://alikoker.name.tr Assembly Programlama Dili T e m m u z 2 0 0 3 Assembly Programlama Dili T e m m u z 2 0 0 3 Hazırlayan : Fehmi Noyan İSİ fni18444@gantep.edu.tr fnoyanisi@yahoo.com http://www2.gantep.edu.tr/~fni18444 1 2 Bu dokümanda Intel firmasının 80x86 serisi

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ı

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ı

Mikroişlemcili Sistemler ve Laboratuvarı 6.Hafta

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

Detaylı

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ Alt Program Yapısı Alt programın çağrılması Alt program korunur alınır ;Argumanlar R12 R15 registerlarına atanir. call #SubroutineLabel SubroutineLabel:

Detaylı

C Konsol Giriş Çıkış Fonksiyonları

C Konsol Giriş Çıkış Fonksiyonları C Konsol Giriş Çıkış Fonksiyonları Öğr. Gör. M. Ozan AKI Rev 1.0 Stringlerde Özel Karakterler \n : Bir sonraki satırın ilk sütununa git \b : Backspace (önceki karakteri sil) \a : Bip sesi \\ : Ters bölü

Detaylı

Basit Bootstrap Uygulaması

Basit Bootstrap Uygulaması Basit Bootstrap Uygulaması 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, yanliş

Detaylı

80x86 MICROPROCESSOR Instructions

80x86 MICROPROCESSOR Instructions 80x86 MICROPROCESSOR Instructions Inside The 8088/8086 registers Registers Verileri geçici olarak tutar AX 16-bit register AH 8-bit reg. AL 8-bit reg. Category Bits Register Names General 16 AX, BX, CX,

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 MSC-51 Ailesi Mikrodenetleyicilerin Komut Kümesi Mikroişlemci Programlama Mikroişlemci ikilik komutlar kabul eder ve sonuçlarını

Detaylı

Merkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ. MİB Yapısı. MİB in İç Yapısı. MİB Altbirimleri. MİB in İç Yapısı

Merkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ. MİB Yapısı. MİB in İç Yapısı. MİB Altbirimleri. MİB in İç Yapısı Merkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ Doç. Dr. Şule Gündüz Öğüdücü http://ninova.itu.edu.tr/tr/dersler/bilgisayar-bilisim-fakultesi/0/blg-1/ Merkezi İşlem Birimi (MİB): Bilgisayarın temel birimi

Detaylı

b) Aritmetik İşlem Komutları

b) Aritmetik İşlem Komutları b) Aritmetik İşlem Komutları Toplama ve Toplama İle İlgili Komutlar Komut. Format İşlem ADD (ADDition) elde CF ADD D, S (D)+(S) (D); ADC (Add with Carry) elde CF ADC D, S (D)+(S)+CF (D); yeni INC (INCrement

Detaylı

AND Komutu. and hedef, kaynak

AND Komutu. and hedef, kaynak Mantıksal Komutlar Bu komutlar herhangi bir işlem sırasında mantıksal karşılaştırmalar yapmak için kullanılır. Bu komutlar icra görürken kullanılan register yada bellek bölgesinin içerisindeki değerler

Detaylı

Assembly. Programlama Dili. T e m m u z 2 0 0 3

Assembly. Programlama Dili. T e m m u z 2 0 0 3 Assembly Programlama Dili T e m m u z 2 0 0 3 Hazırlayan : Fehmi Noyan İSİ fni18444@gantep.edu.tr fnoyanisi@yahoo.com http://www2.gantep.edu.tr/~fni18444 1 2 Bu dokümanda Intel firmasının 80x86 serisi

Detaylı

MANTIK DEVRELERİ HALL, 2002) (SAYISAL TASARIM, ÇEVİRİ, LITERATUR YAYINCILIK) DIGITAL DESIGN PRICIPLES & PRACTICES (3. EDITION, PRENTICE HALL, 2001)

MANTIK DEVRELERİ HALL, 2002) (SAYISAL TASARIM, ÇEVİRİ, LITERATUR YAYINCILIK) DIGITAL DESIGN PRICIPLES & PRACTICES (3. EDITION, PRENTICE HALL, 2001) MANTIK DEVRELERİ DERSİN AMACI: SAYISAL LOJİK DEVRELERE İLİŞKİN KAPSAMLI BİLGİ SUNMAK. DERSİ ALAN ÖĞRENCİLER KOMBİNASYONEL DEVRE, ARDIŞIL DEVRE VE ALGORİTMİK DURUM MAKİNALARI TASARLAYACAK VE ÇÖZÜMLEMESİNİ

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 Assembly Dili Assembly programlama dili, kullanılan bilgisayar

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 Merkezi İşlemci Biriminde İletişim Yolları Mikroişlemcide işlenmesi gereken komutları taşıyan hatlar yanında, işlenecek verileri taşıyan hatlar ve kesme işlemlerini

Detaylı

Toplama işlemi için bir ikili operatör olan artı işareti aynı zamanda tekli operatör olarak da kullanılabilir.

Toplama işlemi için bir ikili operatör olan artı işareti aynı zamanda tekli operatör olarak da kullanılabilir. www.csharpturk.net Türkiye nin C# Okulu Yazar Yunus Özen Eposta yunus@yunus.gen.tr Tarih 08.04.2006 Web http://www.yunusgen.tr ARİTMETİK OPERATÖRLER VE KULLANIM ŞEKİLLERİ Bilgisayarlar yapıları gereği,

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ı

C Dersi Bölüm 1. Bilgisayar Donanımı

C Dersi Bölüm 1. Bilgisayar Donanımı C Dersi Bölüm 1 M Bodur 1 Bilgisayar Donanımı Bilgisayarın yapısını ve çalışma prensiplerini bilmemiz Bir bilgisayar programından neler bekleyebileceğimizi anlamamızı sağlar. Bigisayar dört temel birimden

Detaylı

Algoritma ve Programlama: Karar Yapıları ve Döngüler

Algoritma ve Programlama: Karar Yapıları ve Döngüler Algoritma ve Programlama: Karar Yapıları ve Döngüler Bir algoritma, herhangi bir programlama dili (C, C++, Pascal, Visual Basic, Java gibi) ile kodlandığında program haline gelir. Algoritmada yer alan

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ı

KASIRGA 4. GELİŞME RAPORU

KASIRGA 4. GELİŞME RAPORU KASIRGA 4. GELİŞME RAPORU 14.07.2008 Ankara İçindekiler İçindekiler... 2 Giriş... 3 Kasırga Birimleri... 3 Program Sayacı Birimi... 3 Bellek Birimi... 3 Yönlendirme Birimi... 4 Denetim Birimi... 4 İşlem

Detaylı

Mikrobilgisayar Donanımı

Mikrobilgisayar Donanımı KARADENĠZ TEKNĠK ÜNĠVERSĠTESĠ BĠLGĠSAYAR MÜHENDĠSLĠĞĠ BÖLÜMÜ MĠKROĠġLEMCĠ LABORATUARI Mikrobilgisayar Donanımı 1. GiriĢ Bu deneyde 16 bit işlemci mimarisine dayalı 80286 mikroişlemcisini kullanan DIGIAC

Detaylı

PASCAL PROGRAMLAMA DİLİ YAPISI

PASCAL PROGRAMLAMA DİLİ YAPISI BÖLÜM 3 PASCAL PROGRAMLAMA DİLİ YAPISI 3.1. Giriş Bir Pascal programı en genel anlamda üç ayrı kısımdan oluşmuştur. Bu kısımlar bulunmaları gereken sıraya göre aşağıda verilmiştir. Program Başlığı; Tanımlama

Detaylı

MC6800. Veri yolu D3 A11. Adres yolu A7 A6 NMI HALT DBE +5V 1 2. adres onaltılık onluk 0000 0. 8 bit 07FF 2047 0800 2048. kullanıcının program alanı

MC6800. Veri yolu D3 A11. Adres yolu A7 A6 NMI HALT DBE +5V 1 2. adres onaltılık onluk 0000 0. 8 bit 07FF 2047 0800 2048. kullanıcının program alanı GİRİŞ Günümüzde kullanılan bilgisayarların özelliklerinden bahsedilirken duyduğumuz 80386, 80486 Pentium-III birer mikroişlemcidir. Mikroişlemciler bilgisayar programlarının yapmak istediği tüm işlerin

Detaylı

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar EM205 26/9/2014 Programlamaya giriş Algoritmalar Temel kavramlar Algoritmalar Amaçlar Algoritma kavramını öğrenmek, Algoritmaları ifade edebilmek, Temel matematiksel algoritmaları yazabilmek C programlama

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ı

Von Neumann Mimarisi. Mikroişlemciler ve Mikrobilgisayarlar 1

Von Neumann Mimarisi. Mikroişlemciler ve Mikrobilgisayarlar 1 Von Neumann Mimarisi Mikroişlemciler ve Mikrobilgisayarlar 1 Sayısal Bilgisayarın Tarihsel Gelişim Süreci Babage in analitik makinası (1833) Vakumlu lambanın bulunuşu (1910) İlk elektronik sayısal bilgisayar

Detaylı

MİKROBİLGİSAYAR SİSTEMLERİ VE ASSEMBLER

MİKROBİLGİSAYAR SİSTEMLERİ VE ASSEMBLER BÖLÜM 4 INTEL AİLESİNİN 32 BİTLİK MİKROİŞLEMCİLERİ 4.1 80386 MİKROİŞLEMCİSİ Intel in ilk 32 bitlik mikroişlemcisi 80386 dır.bu işlemci diğer x86 işlemcileri gibi, 8086ve 80286 programlarını hiçbir değişiklik

Detaylı

BM-311 Bilgisayar Mimarisi

BM-311 Bilgisayar Mimarisi BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Adresleme modları Pentium ve PowerPC adresleme modları Komut formatları 1 Adresleme modları

Detaylı

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

BMT 101 Algoritma ve Programlama I Güz Dönemi. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 2016 2017 Güz Dönemi Yük. Müh. Köksal Gündoğdu 1 Elektrik Elektronik ve Bilgisayar Yük. Müh. Köksal Gündoğdu koksalgundogdu@ekargemuhendislik.com Yük. Müh. Köksal Gündoğdu

Detaylı

x86 Ailesi Mikroişlemciler ve Mikrobilgisayarlar

x86 Ailesi Mikroişlemciler ve Mikrobilgisayarlar x86 Ailesi 1 8085A,8088 ve 8086 2 Temel Mikroişlemci Özellikleri Mikroişlemcinin bir defade işleyebileceği kelime uzunluğu Mikroişlemcinin tek bir komutu işleme hızı Mikroişlemcinin doğrudan adresleyebileceği

Detaylı

Bölüm 3: Adresleme Modları. Chapter 3: Addressing Modes

Bölüm 3: Adresleme Modları. Chapter 3: Addressing Modes Bölüm 3: Adresleme Modları Chapter 3: Addressing Modes 3 1 Veri Adresleme Modları MOV komutu veriyi bir bellek satırından diğer bellek satırına yada yazaca kopyalar Kaynak (source) verilin okunacağı belleğin

Detaylı

Araş. Gör. Abdulkerim ŞENOĞLU Araş. Gör. Mehmet AYAN Araş. Gör İbrahim Kök. BM 310 Mikroişlemciler Dersi Laboratuvarı (LAB2)

Araş. Gör. Abdulkerim ŞENOĞLU Araş. Gör. Mehmet AYAN Araş. Gör İbrahim Kök. BM 310 Mikroişlemciler Dersi Laboratuvarı (LAB2) BM 310 Mikroişlemciler Dersi Laboratuvarı (LAB2) 1ÖN ÇALIŞMA SORUSU Mutlu sayı; bir pozitif tamsayının rakamlarının karesi alınıp topladığımızda ve bu işlemi bir kaç kere gerçekleştirdiğimizde bu kare

Detaylı

Yazılım Mühendisliğine Giriş 4. Hafta 2016 GÜZ

Yazılım Mühendisliğine Giriş 4. Hafta 2016 GÜZ Yazılım Mühendisliğine Giriş 4. Hafta 2016 GÜZ 1 İkinci Kuşak Bilgisayarlar 1956-1963: Transistor Transistor 1947 yılında keşfedilmiştir. 50 li yılların sonuna kadar bilgisayarlarda yaygın kullanımı görülmez.

Detaylı

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

BMT 101 Algoritma ve Programlama I 7. Hafta. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 7. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Program Denetimi Yük. Müh. Köksal Gündoğdu 2 Program Denetimi Bir program, belirli deyim satırlarından oluşur ve genellikle bu

Detaylı

C-Serisi PLC İleri Seviye Eğitim

C-Serisi PLC İleri Seviye Eğitim C-Serisi PLC İleri Seviye Eğitim 1 PLC ye Giriş 2 PLC ye Giriş 3 PLC ye Giriş CJ1 I/O Modülleri - 8/16/32/64pts Max I/O - 160,640 Max Program Kapasitesi - 20K Steps Komut sayısı - 400 4 PLC Ladder Diyagram

Detaylı

C Dersleri Bölüm 3 : Program akışı

C Dersleri Bölüm 3 : Program akışı İzmir Ekonomi Üniversitesi Bilgisayar Topluluğu www.ieubt.org C Dersleri Bölüm 3 : Program akışı Sorularınız için : programlama@ieubt.org Hazırlayan : Görkem PAÇACI (gorkem.pacaci@std.ieu.edu.tr) C Program

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ı

ÖZET. Lojiksel ve Hiziksel Hafıza. x86 byte düzeni nın Fiziksel Hafıza Yapısı. Ders 3. Temeller

ÖZET. Lojiksel ve Hiziksel Hafıza. x86 byte düzeni nın Fiziksel Hafıza Yapısı. Ders 3. Temeller ÖZT Ders 3 Hafıza Hakkında Hafızayı adresleme Veri (data) tipleri MOV komutu dresleme modları Komut formatı Öğr. Gör. ren RNR İBÜ/DMYO Temeller x işlemcilerin hafıza yapısı byte adreslenebilir şeklindedir.

Detaylı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ Ders 10 LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ LINUX de Programlama LINUX işletim sistemi zengin bir programlama ortamı sağlar. Kullanıcılara sistemi geliştirme olanağı sağlar.

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ı

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ı

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Koşul Karşılaştırma Operatörleri Mantıksal

Detaylı

Mikroçita. Mikroçita Rapor 2:

Mikroçita. Mikroçita Rapor 2: Mikroçita Rapor 2: İşlemci projemizle ilgili olarak hazırlamış olduğumuz bu ikinci raporda öncelikli olarak vhdl kullanarak tasarladığımız işlemcimizin genel çalışmasını ilk rapora göre daha ayrıntılı

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ı

ASENKRON (Eş Zamanlı Olmayan) HABERLEŞME ARA YÜZEYİ

ASENKRON (Eş Zamanlı Olmayan) HABERLEŞME ARA YÜZEYİ ASENKRON (Eş Zamanlı Olmayan) HABERLEŞME ARA YÜZEYİ Arayüzey hem gönderici hem alıcı durumunda çalışır. Arayüzey kontrol register ına aktarılan bir kontrol byte ı ile başlangıç durumuna getirilir. Kontrol

Detaylı

Cost Modülü Ay sonu İşlemleri

Cost Modülü Ay sonu İşlemleri Cost Modülü Ay sonu İşlemleri - Stokta devir işlemi yapıldığında, devir tarihinden önceki dönemlere işlem yapılamadığından ve modüller arası tam entegrasyon olduğundan, stok ve cost programından da sağlıklı

Detaylı

DERS 5 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı Program belleği RAM bellek Değişken kullanımı Komutlar

DERS 5 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı Program belleği RAM bellek Değişken kullanımı Komutlar DERS 5 PIC 16F84 PROGRAMLAMA İÇERİK PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı Program belleği RAM bellek Değişken kullanımı Komutlar Ders 5, Slayt 2 1 BACAK BAĞLANTILARI Ders 5, Slayt 3 PIC

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ı

PIC Mikrodenetleyicileri

PIC Mikrodenetleyicileri PIC Mikrodenetleyicileri Intel 1976 da 8031/51 ailesini piyasaya sürdüğünde dünyanın en popüler mikroişlemcisi olmuştu. Bu işlemci dünya üzerinde 12 den fazla firma tarafından (İntel, Phillips, Dallas,

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ı

Bahar Dönemi BIL382 Mikroişlemcili Sistem Lab. Vize Sınavı,

Bahar Dönemi BIL382 Mikroişlemcili Sistem Lab. Vize Sınavı, Öğrenci No 2015-2016 Bahar Dönemi Ad-Soyad S 1) Aşağıdakilerden terimlerden hangisi Makine Dili (Machine Language) ile doğrudan ilgili bir terim değildir? a) m nemonics b) hexadecimal c) binary d) executable

Detaylı

GÜMÜŞHANE ÜNĐVERSĐTESĐ MÜHENDĐSLĐK VE DOĞA BĐLĐMLERĐ FAKÜLTESĐ ELEKTRĐK-ELEKTRONĐK MÜHENDĐSLĐĞĐ EEM 114 ALGORĐTMA TASARIMI VE PROGRAMLAMA DĐLLERĐ

GÜMÜŞHANE ÜNĐVERSĐTESĐ MÜHENDĐSLĐK VE DOĞA BĐLĐMLERĐ FAKÜLTESĐ ELEKTRĐK-ELEKTRONĐK MÜHENDĐSLĐĞĐ EEM 114 ALGORĐTMA TASARIMI VE PROGRAMLAMA DĐLLERĐ GÜMÜŞHANE ÜNĐVERSĐTESĐ MÜHENDĐSLĐK VE DOĞA BĐLĐMLERĐ FAKÜLTESĐ ELEKTRĐK-ELEKTRONĐK MÜHENDĐSLĐĞĐ EEM 114 ALGORĐTMA TASARIMI VE PROGRAMLAMA DĐLLERĐ DERS 1 PROGRAM GELĐŞTĐRME PROGRAM GELĐŞTĐRME VERĐ ĐŞLEME(DATA

Detaylı

Temel Giriş/Çıkış Fonksiyonları

Temel Giriş/Çıkış Fonksiyonları Temel Giriş/Çıkış Fonksiyonları Temel giriş/çıkış fonksiyonları, bütün programla dillerinde mevcuttur. Bu tür fonksiyonlar, kullanıcıya ekrana veya yazıcıya bilgi yazdırmasına, ve bilgisayara klavyeden

Detaylı

LCD (Liquid Crystal Display)

LCD (Liquid Crystal Display) LCD (Liquid Crystal Display) LCD ekranlar bize birçok harfi, sayıları, sembolleri hatta Güney Asya ülkelerin kullandıkları Kana alfabesindeki karakterleri de görüntüleme imkanını verirler. LCD lerde hane

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 String Komutarı MOVS CMPS SCAS LODS STOS String Komutları MOVS,

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri BLM-111 PROGRAMLAMA DİLLERİ I Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Temel Veri Tipleri C dilinde

Detaylı

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2 ELN1002 BİLGİSAYAR PROGRAMLAMA 2 DOSYALAMA Sunu Planı Veri Hiyerarşisi Dosyalar ve Akımlar(streams) Sıralı Erişim (Sequential Access) dosyalarının oluşturulması Sıralı Erişim Dosyalarından Veri Okuma Rasgele

Detaylı

Genel Kullanılış 1: [değişken ismi] = [değişken ismi] [işlem] [sayı veya string ifade veya değişken]

Genel Kullanılış 1: [değişken ismi] = [değişken ismi] [işlem] [sayı veya string ifade veya değişken] Sayaçlar Düzenli olarak artan (+) veya azalan (-) sayı veya string ifadeler elde etmek için kullanılırlar. Eşitliğin her iki tarafındaki değişken isminin aynı olmasına dikkat edin. Bu durum matematik olarak

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ı

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler Veri Tanımları ve Mantıksal Đşlemler Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmeleri gerekir.

Detaylı