P. 1
8085 Mikroislemciler ve uygulamalari

8085 Mikroislemciler ve uygulamalari

|Views: 2,155|Likes:
Yayınlayan: Huseyin Yigit

More info:

Published by: Huseyin Yigit on Dec 25, 2010
Telif Hakkı:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

04/08/2013

pdf

text

original

1

8085 MĐKROĐŞLEMCĐ VE MIKROBĐLGĐSAYAR

Murat KELLEGÖZ

LĐSANS TEZĐ

HAZĐRAN 1998

2

T.C. OSMANGAZĐ ÜNĐVERSĐTESĐ FEN-EDEBĐYAT FAKÜLTESĐ FĐZĐK BÖLÜMÜ

8085 MĐKROĐŞLEMCĐ VE MĐKROBĐLGĐSAYAR

Danışman : Yrd. Doç. Dr. Đsmail ÖZKAN

Hazırlayan : Murat KELLEGÖZ

3

HAZĐRAN 1998 4394003 no‘lu öğrenci Murat KELLEGÖZ tarafından hazırlanmış olan

8085 MĐKROĐŞLEMCĐ VE MĐKROBĐLGĐSAYAR konulu bitirme ödevi tarafımdan

okunup kabul edilmiştir.

...../...../1998

Yrd. Doç. Dr. Đsmail ÖZKAN

4 TEŞEKKÜR Bu tez çalışmasını bana veren ve gerek fikir gerekse kaynak yönünden beni yönlendiren sayın hocam Yrd. . Dr. Tez süresince bana gerek maddi gerekse manevi desteklerini esirgemeyen aileme . ayrıca değer verdiğim ve moral yönünden beni destekleyen Filiz ALACA‘ya sonsuz teşekkürü bir borç bilirim. Doç. Đsmail ÖZKAN‘a teşekkür ederim.

...................2....... INTEL 8080 AĐLESĐ ................................ ROM........ 12 6............................................................5 ĐÇĐNDEKĐLER 1.........................1............12 6................1 1...........1.... 8085 MĐKROĐŞLEMCĐSĐNĐN BACAKLARININ TANIMI..8 3....2.........................1 1.....2 MERKEZĐ ĐŞLEM BĐRĐMĐNĐN ĐÇ YAPISI....................................................... MĐKROBĐLGĐSAYARLARIN TEMEL YAPISI........................................................ MERKEZĐ ĐŞLEM BĐRĐMĐ (MĐB).........................................9 4................................................................. GĐRĐŞ / ÇIKIŞ BĐRĐMLERĐ...............................................10 4.......................................... MĐKROĐŞLEMCĐNĐN KULLANIM ALANLARI VE ÜSTÜNLÜKLERĐ...........................................3 2...1...............................3 2.......................................2............................ MĐKROĐŞLEMCĐLER VE MĐKROBĐLGĐSAYARLAR..2 2..................................................... ĐLETĐŞĐM YÖNTEMLERĐ....................... ..... ĐLETĐŞĐM YOLLARI...4 3.................................................................. RAM..............1................................................................................................................................................................................1 MERKEZĐ ĐŞLEM BĐRĐMĐNĐN HIZI VE YETENEKLERĐ..........................10 5........................13 ..............11 6...................................8 3.... BELLEK...................... 8085 MĐKROĐŞLEMCĐ.......

.1..................................19 EK : 8085 MĐKROĐŞLEMCĐNĐN KARAKTERĐSTĐK ÖZELLĐKLERĐKLERĐ 1................ MĐKROBĐLGĐSAYAR = MĐKROĐŞLEMCĐ + BELLEKLER + GĐRĐŞ/ÇIKIŞ BĐRĐMLERĐ 1.......... Mikroişlemci bir elektronik devre elemanı olmasına rağmen alışıla gelmiş devre elemanlarına göre üstünlükleri vardır. kontrol sistemlerinde...) Programlanarak değişik işlerde kullanılabilirler....................... ADRESLEME YÖNTEMLERĐ....2......... robot endüstrisinde kullanılmaktadır... aynı zamanda endüstride. ADRESLEME YÖNTEMLERĐ VE KOMUTLARI.. Kısaca MĐB.......................3................. flip-flop gibi elemanların sıkıştırılmaları ile imal edilmiştir.... MĐKROĐŞLEMCĐLER VE MĐKROBĐLGĐSAYARLAR Mikroişlemci bir bilgisayarın beynini oluşturan ‘Merkezi Đşlem Birimi’ dir..... Mikroişlemci geniş hacimli bir entegredir.. Dar bir alana milyonlarla ifade edilen transistör......... a................ MĐKROĐŞLEMCĐNĐN KULLANIM ALANLARI VE ÜSTÜNLÜKLERĐ Mikroişlemci sadece bilgisayarlarda değil............ Mikrobilgisayar oluşturmak için mikroişlemci ile bellekler ve giriş/çıkış birimlerine ihtiyaç vardır........................ haberleşme sistemlerinde..........1......17 7.........17 7........................ .6 7............................ Mikroişlemci tek başına bir mikrobilgisayar değildir................... KOMUTLAR.............18 7. KOMUTLAR LĐSTESĐ................

) Bir makinenin arka arkaya yapacağı çok sayıda işlemlerini bir program içinde düzenli olarak sırayla yürütebilirler.7 b. 1. a. gerilim gibi değişkenlerin mikro değerlerindeki değişmeleri hissederek kontrol yapabilirler.) Çok sayıda veri girişine sahip komplike devrelerde. ısı.) Daha dar bir alana monte edilirler ve maliyetleri daha ucuz olur. bu üç ünite arasındaki veri ve program akışını sağlamak üzere.) Giriş/Çıkış birimi Mikrobilgisayarın. a.) Denetim yolları . MĐKROBĐLGĐSAYARLARIN TEMEL YAPISI Mikrobilgisayarların tüm işlemlerinin organizasyonunu MĐB yapıp birçok alt birimlerden meydana gelir. d.2.) Merkezi Đşlem Birimi (MĐB) b.) Bellek birimi c.) Daha hassas çalışırlar. c. giriş/çıkış durumlarına göre bir sistemi kontrol edebilirler. Bir mikrobilgisayar temelde üç üniteden meydana gelir. çok sayıda bağlantıdan oluşan yollar bulunmaktadır.) Adres yolları c.) Veri yolları b. mikrosaniye gibi zaman aralıklarında. e.

MERKEZĐ ĐŞLEM BĐRĐMĐ (MĐB) Merkezi işlem birimi bilgisayarın temel birimi olarak kabul edilebilir. Bu görev MĐB tarafından yarine getirilir. programcıya esneklik ve kolaylık sağlayacağı için MĐB’yi güçlü kılar. Komut kümesinin zengin olması. MERKEZĐ ĐŞLEM BĐRĐMĐNĐN HIZI VE YETENEKLERĐNĐN ÖLÇÜTLERĐ a. MĐB’nin gücünü gösterir. 2. Bunun yanısıra MĐB’ye bilgisayarın beyni olarak bakılmaktadır. b.8 (Şekil 1: Bilgisayarın üç temel birimi arasındaki bağlantı) 2.) KOMUT KÜMESĐ: Bir MĐB’nin yeteneklerinin ölçülmesinde. Bilgisayarın aritmetik ve lojik işlemler yapabilmeli ve ortaya çıkan sonuçlara göre karar verebilmelidir. c.) SÖZCÜK UZUNLUĞU: MĐB’nin bir anda işleyebileceği veri uzunluğu. MĐB’nin çalışmasını senkronlayan saat frekansına bağlıdır.) HIZ: MĐB’nin belli zaman içinde yapabileceği işlemşerin sayısıdır. .1. Bu sayıya iş yüküde denilmektedir. komut kümesinin çeşitliliği ve komutlarının güçlülüğüde önemli bir etkendir.

) BELLEK VERĐ SAKLAYICI: MĐB’inden belleğe veye giriş/çıkış arabirimlerine giden veye bu birimlerden MĐB ne gelen verinin yazıldığı yerdir.) BELLEK ADRES SAKLAYICI: MĐB ile bellek arasında gidip gelen verilerin bellekte hangi göze yazılacağı veye verinin hangi gözden geldiği bu kutüğe yazılan adres ile belirtilir. 8085 mikroişlemcide bellek veri saklayıcısı 8 bittir. b. 8 bit mikroişlemcilerde adresleme kapasitesi 64K’dır. 2. çarpma ve bölme işlemlerini yerine getirebilir. Giriş/çıkış arabirimlerinin adreslenmesinde de bellek adres saklayıcısından faydalanılır. çıkarma. Karşılaştırma ve karar verme işlemleride bu birim içerisinde olur.) ARĐTMETĐK LOJĐK BĐRĐM (ALU): MĐB içinde yapılması gereken aritmetik ve lojik birimler ALU içerisinde gerçekleşir. .) ADRSLEME YETENEĞĐ: Bir MĐB’nin en önemli özelliklerinden biride komut içinde kullanılan adresleme yöntemlerinin zenginliği ve güçlülüğü. c. bu arada düzgünlüğü de bir MĐB için önemli bir ölçüttür. MERKEZĐ ĐŞLEM BĐRĐMĐNĐN YAPISI a. • Aritmetik işlemler: ALU toplama. doğrudan adresleyebileceği bellek boyudur. 8 bitlik mikroişlemcilerde adres yolları 16 bit olduğundan bellek adres saklayıcısıda 16 bit uzunluğundadır. e.2.) ADRESLEME KAPASĐTESĐ: MĐB’nin bir başka yeteneği ise.9 d.

karar verme işlemlerinde temel alınır. D3 ve D5 nolu bayraklar ise boştur. Durum saklayıcısının içeriği. Akümülatördeki bilgi belleğe alındığında akümülatördeki bilgi silinmez. e.10 • Lojik işlemler: ALU içinde temel VE. Akümülatör yürürlükteki komutla işlenen bilginin geçici olarak depolandığı yerdir. D6 ve D7 nolu bayrakları programcı tarafından kullanılır. • Karşılaştırma ve karar verme işlemleri: Đki büyüklüğün birbirine göre büyüklük. • S-işaret bayrağı: Sayının pozitif veya negatif olduğunu gösteren bayraktır. VEYA gibi işlemleri yerine getirebilir. Ortaya çıkan duruma göre karar rebilir ve sonuç durum saklayıcısına işlenir.) AKÜMÜLATÖR: MĐB’nin ana saklayıcısıdır. programcının kontrolü dışında kullanır. Buna bayrak saklayıcısıda denilmektedir. (Şekil 2: Durum saklayıcı) Durum saklayıcısının D0. küçüklük veya eşitlik karşılaştırması yapılabilir. Komutların çoğu akümülatör üzerinde yapılır ve. 0 ise pozitiftir. Eğer işaret bayrağı 1 ise sayı negatif.) DURUM SAKLAYICI: ALU tarafından gerçekleştirilen işlemlerin sonunda ortaya çıkan durumların yazıldığı bir saklayıcıdır. 8085 mikroişlemcide durum saklayıcısı 8 bitten oluşur. d. 8085 mikroişlemcide akümülatör 8 bittir. D2. . D4 nolu bayrağı mikroişlemci. D4.

h. f. verileri yığından teker teker geri almaya yığın işlemi denilmektedir.) YARDIMCI SAKLAYICI: MĐB içindeki işlemlere hız kazandırmak amacıyla. j.11 • Z-sıfır bayrağı: Akümülatörde bulunan sayının değeri sıfır ise bu bayrak 1 değerini. • P-parite bayrağı: Bir aritmetik veya mantık işleminden sonra elde edilen 1 sayıları ile ilgilidir. Yığın . aritmetik ve lojik işlemlerde birinci işlenen yerini almamalarıdır. 8085 mikroişlemcilerde 8 bit akümülatörün yanında herbiri 8 bit olan B. • AC-yardımcı elde bayrağı: Bu bayrak iki tabanlı sayılar ile çalışırken kullanılır.) KOMUT SAKLAYICI: Komut saklayıcısı o anda işlenen komutu içerir. Program sayıcısının adresi. D. C. verilieri üst üste yığmaya ve gerektiğinde. H ve L yardımcı saklayıcılar vardır. üzerinde sık sık işlem yapılacak işlemler için kullanılırlar. g. Bu saklayıcının akümülatörden tek farkı. i. • CY-elde bayrağı: Bir aritmetik işlem sonucunda akümülatöre yazılamayan bir elde varsa bu elde bayrağı 1 değerini alır. Ayrıca program sayıcısı atlama komutu ile program sayıcısının adresi herhangi bir adresle değiştirilebilir. Eğer bir elde aktarımı söz konusu değil ise 0 değerini alır. son adres kullanıldıktan sonra otomatik olarak atrar veye komuta göre azalabilir. yardımcı saklayıcı kullanılmaktadır.) PROGRAM SAYICI: Program sayıcı bir sonra gelen programdaki komutun adresini depolar.) KOMUT KOD ÇOZÜCÜ: Komut saklayıcısında bulunan komutun taşıdığı anlamı çözümlediği yerdir. Bir aritmetik işlem sonucunda üçüncü bitten dördüncü bite bir elde aktarıldığında yardımcı elde bayrağı 1 değerini alır. sonuç içerisindeki 1’lerin sayısı tek ise bu bayrak reset olur. Adres yolları 16 bit genişliğinde olduğundan program sayıcısıda 16 bit genişliğinde bir kaydedicidir. sıfır değil ise 0 değerini alır. Yığının nerede kurulduğunu belirtmek için MĐB içinde yığın göstergeside kullanılmaktadır. Sonuç içerisinde 1’lerin sayısı çift ise bu bayrak 1 değerini. Bu saklayıcılar.) YIĞIN GÖSTERGESĐ: Bilgisayar dilinde.

12 göstergesi bellek üzerinde herhangi bir bölgesindeki yığının alınmasına müsaade eder. l.) DENETĐM BĐRĐMĐ: MĐB’nin en önemli birimlerindendir. Bu birim hem MĐB içindeki çalışmayı düzenler hemde bilgisayar içindeki çalışmayı düzenler. (Şekil 3: Mikroişlemcinin kaydedici yapısı) k. Bu yığın göstergesi 16 bitlik bir kaydedicidir. .) SIRALAMA SAKLAYICI: Sıralı verilerin belleğe yazılması veya bellekte sıralı bulunan verşlerin okunması için kullanılır.

13 (Şekil 4: Merkezi işlem biriminin iç yapısı) 3. . ROM (Salt okunur bellek) Bilgisayarda sürekli kalması istenilen bilgilerin saklanması için kullanılan bellek türüdür. Bellek posta kutusuna benzetilebilir. BELLEK Bilgisayarın çalışmasına yön verecek programı ve programın üzerinde çalışacağı verileri saklamak için bellek kullanılmaktadır. Bu belleğe yazılmış olan bilgileri tutabilmek için enerjiye ihtiyaç vardır. Bilgiler bu kutularda binary formunda saklanır.Her bir posta kutusu bir adrese sahiptir. 3. kullanıcıya hizmet verecek. Yani belleği besleyen gerilim kesilmesi durumunda bellekteki bilgiler kaybolur.1. Özel amaçlı ve sabit programla çalışan bilgisayarların programları ile bilgisayar açıldığında. Bu olumsuz durum sebebiyle yarı iletken teknolojisinde iki tip bellek üretimi sağlanmıştır. Bu tür bellekler programlanabilme yeteneklerine göre dört gruba ayrılır. yol verme programları bu tür belleklere saklanır. En önemli özelliği gerilim kesildiğinde bellekteki bilgiler saklı kalır.

programlanabilir salt okunur bellek): Bu bellek türü üretildiğinde tüm bellek gözeleri 1 konumundadır. programlanabilen salt okunur bellek): Bu bellek türünde bellek gözelerine istenilen bir değer yazılabilir ve yazılan bu bilgi yeni bir yazmaya kadar kalır. Gerilim kesildiğinde bilgilerin tümü kaybolur. EEPROM’ların silinmesi durumunda tüm belleklerin 0 veya 1 olması durumu anlaşılır. belleğin üretimi esnasında gerçekleşir. • EEPROM (Elektriksel silinebilir. EEPROM’lara veri yazılmasında özel yöntem ve araçlar kullanılabilir. RAM’lar bilgiyi saklama açısında iki gruba ayrılırlar. . RAM (Okunabilir silinebilir bellek) Bu tür bellekler bilgilerin geçici olarak saklandığı yerlerdir. Bu belleğin gövdesi üzerinde bulunan pencereden ultraviyole ışığının tutulması durumunda belli bir süre sonunda bellek gözeleri 1 konumuna gelerek silinmiş olur ve tekrar programlanmaya hazır hale getirilebilir. Bu sigortalar istenilen nitelikteki programa göre attırılarak bellek programlanır. Anlaşılacağı üzere bu bellek yalnız bir kere programlanabilir. 3. • PROM (Programlanabilir salt okunur bellek): Bu bellek türü üretildikleri zaman bütün gözeneklerinde birer sigotta bulunmaktadır. 1 konumunda olan gözelerden istenenler özel yöntem ve araçlarla 0 konumuna getirilebilir. Programlandıktan sonra bir başka değişle sigortanın yenilenerek farklı bir programın yazılması olanağı yoktur.14 • ROM: Bu bellek türüne bilgi yazılması. Bellek gözesine yazılan bilgi 0 ve 1’lerden oluşmaktadır. • EPROM (Silinebilir. Sonuçtada programlanan belleğin içerisindeki program değiştirilememektedir. Güneşten gelen ışığın ultraviyole ışık içerdiğini düşünecek olursak sağlıklı bir çalışma için programlanan EPROM’un penceresinin siyah bir bant ile kapatılması uygun görülür. Đstenildiğinde yazılabilen istenildiğinde silinebilen belleklerdir.2.

giriş/çıkış birimleri ile akümülatör üzerinden biligi alış verişini sağlar. 1 olduğu algılanırsa kapasite yeniden doldurulur. • DĐNAMĐK RAM: Bu bellek türü MOS transistörlerinden oluşmuştur ve bilgileri elektrik yükü olarak saklanır. verinin her bir biti için ayrı bir hat kullanılıyor ise.15 • STASĐK RAM: Bu belleğin her bir gözesinde bir flip-flop bulunur. Bu elektrik yükünün boşalmaya başladığı durumda yük yarıya inmeden okuduğunda 1 değerini. GĐRĐŞ/ÇIKIŞ BĐRĐMLERĐ Bir bilgisayar her zaman için dış ortamlarlaa ilişki halindedir. aksi halde 0 değerini alır. Bilindiği üzere iki konumlu olan flip-floplar. 4. bu iletişim yöntemine paralel iletişim yöntemi denir. Yeni bir veri girişi yapılana dek eski konumda kalır. Giriş birimi input port. Gerilimin kesildiğinde bilgilerin yok olması bazı uygulamalarda sorun yaratabileceğinden dıştan veya içten pilli bellekler üretilmektedir. Merkezi işlem birimi. (Şekil 5: Belleklerin sınıflandırılması) 4.1. ĐLETĐŞĐM YÖNTEMLERĐ Bilgi aliş verişi paralel iletişim ve seri iletişim iki gruba ayrılırlar. • PARALEL ĐLETĐŞĐM: Bir verinin alıcıya gönderilmesi sırasında. Bu ilişki giriş çıkış birimleri ile sağlanır. . çıkış birimi output port olarak adlandırılır. girişine uygulanan lojik işaretin durumuna göre 0 veye 1 konumunu alır.

8 bitlik mikroişlemci biriminde adres hat sayısı 16 bitliktir. Buna göre 216=65536 bellek gözesi adreslenebilmektedir. 5. iletişim hatları bitler tarafından zamanda paylaşılırlar. bir veri içindeki bitler. Aynı zamanda bu . Çünkü bir tek hat üzerinden çift taraflı bilgi akışı olabilir. verici ve alıcı arasında. Bu iki bağlantı bilginin hangi yönde akacağını belirlemekte kullanılır. aktarılacak veri içindeki bit sayısı kadar hat bulunmaktadır. Bir başka değişle. • BĐLGĐ YOLU: Bilgi yolu genellikle sekiz hattan oluşur. Aynı hat üzerinden peş peşe gönderilirler. Ayrıca veri hatlarına ek olarak al ve hazır bağlantıları vardır. ĐLETĐŞĐM YOLLARI Mikroişlemci birimi ile bellek veya giriş/çıkış birimleri arasındaki bilgi alış verişinin sağlanması için üç çeşit iletişim yolu vardır. Giriş/çıkış birimi ile merkezi işlem biriminde bulunan akümülatör arasında bilgi alış verişini sağlar.16 (Şekil 6: Paralel iletişime örnek bağlanmış iki birim) Şeki 6’da görüldüğü gibi. Uygulanan bu adres paralel bilgi hattından oluşur. • SERĐ ĐLETĐŞĐM: BU iletişim yönteminde . Adres binary olarak uygulanır. • ADRES YOLU: Merkezi işlemci birimi tarafından bellekten seçilecek bilginin bulunduğu yerin adresiniğ taşıyan yoldur.

Bilgi yolu adedi bit sayısını tanımlar. . Bu hatlara kontrol yolları denir. 8085’de veri yolları ile adres yolları geçmeli olarak düzenlenmiştir. 4004. 8080. 8085 mikroişlemcilerin ise 8 bit mikroişlemcilerin ikincisidir. (Şekil 7: Mikroişlemcide iletişim yolları) 6. Bunların başında 8080’de adres ve veri yolları için bağımsız ayaklar bulunurken. Yalnızca tek değerde bir gerilim kaynağı kullanmayıp aynı zamanda bir çok eksiklikleride giderilmiştir. INTEL 8080 AĐLESĐ Intel 8080. 4040 ve 8008’lerin ardından üretilmiş 8 bit mikroişlemcilerin ilkidir ve 1974’te kullanıma sunulmuştur. Yani sekiz bilgi hattına sahip bir merkezi işlem birimi 8 bitlik mikroişlemci olarak olarak tanımlanır.17 hatlar üzerinden de dış devreler yollanabilir veya dış devrelerden bilgi alınabilir. -5 ve +12 V’luk üç gerilim kaynağı gerektirdiğinden yerini yalnızca 5V ile çalışan 8085’e bırakmıştır. +5. • KONTROL YOLU: Mikroişlemcinin dış ortamla ilişki kurarak gerekli işlemleri gerçekleştirebilmesi için kontrol sinyallerini taşıyan hatlara ihtiyaç vardır.

• Veri yolu ve adres yolu geçmelidir. • Giriş/çıkış arabirimleri bellek dışındadır. • Bellek adresleme yeteneği 64K’dır.1. 8085 MĐKROĐŞLEMCĐ 8085 mikroişlemcisinin özellikleri şöyle özetlenebilir. .18 6. • Saat osilatörü içindedir. • Kesme girişleri ve kesme öncelikvericisi vardır. • Sözcük uzunluğu 8 bittir.

A8-A15 adres hatları üzerinde. ALU (Adres tutucu): Bu 30. ile 28. giriş/çıkış birimlerinin seçimi sırasında. Bunlar 21. AD0AD7 hatları üzerine olduğu gibi. ile 19. buyruğun işlenişine uygun olarak ya adres bilgisi yada veri bilgisi bulunur. adres hatlarının ilk 8 hattı aynıdır. bacağı oluşturan bu bacak AD0-AD7 hatları üzerine adres bilgisi yerleştirildikten sonra etkin duruma gelir. HALT. Bunlar 12. giriş/çıkış birimlerinin seçimi sırasında. HOLD ve RESET durumlarında. AD0-AD7 hattı olarak anılan bu hatlar üzerinde. AD0-AD7 hatları iki yönlü çalışmaktadır. 8 bitlik giriş/çıkış birimi adresi oluşur. Bacaklar arasında yer almaktadırlar. adres bilgilerinden ilk sekizinin tutulması sağlanır. tutma emrini oluşturur. bu çıkışlar üçüncü konuma geçerler. . Bacaklar arasında yar almaktadır. Böylece aynı hatlar ortaklaşa kullanılmış olur. 8085 MĐKROĐŞLEMCĐSĐNĐN BACAKLARININ TANITIMI • AD0-AD7 (Adres ve veri yolları): 8085’te veri ve adres yolları için ortak hatlar kullanılmıştır. Çıkış durumunda çalışırken her bir bit bir TTL yükü sürebilecek yetenektedir ve bu hatlar üç konumlu kapılardan oluşmuştur. AD0-AD7 adres hatları üzerinde. Böylece. ALU ucunun lojik 1’den 0’a inmesi. Bu nedenle verilier için kullanılan 8 hat ile. Her bir hat bir TTL sürebilecek güçteüç konumlu kapılardan kurulmuştur.2. bu hatlara bağlı olan tutucu devrede. A8-A15 (Adres yolları): Adres yollarının diğer hatlarıdır.19 (Şekil 8: 8085 Mikroişlemcisinin iç yapısı) 6. 8 bitlik giriş/çıkış birimi adresi oluşur.

Bu üç girişten gelen kesme isteklerinde. merkezi işlem birimi elindeki son komutu tamamlar ve çalışmasını durdurur.5. Bu giriş 0’dan 1’e çıkması sonucunda belirlenmiş adresten başlayan kesme hizmet programına dallanır. Kullanılmadığı durumda. • HLDA (Dur anlaşıldı): 38.HLDA çıkışının 0’a inmesi ile yansıtılır. Bu çıkış merkezi işlem birimi ile bellek ve/veya giriş/çıkış birimleri arasında yazma işlemini sağlar. bacak maskelenemez kesme girişidir. WR ve IO/M çıkışları üçüncü konuma geçerler. 8. HALT. • TRAP (Kesme): 6.bacağı oluşturan RD çıkışı merkezi işlem birimi ile Oku • WR (Yaz): Yaz çıkışı 31. adres ve veri yolları ile. Bu girişin 0 olması durumunda. .5. bacakları oluşturur. bacağını oluşturan bu bacak HALT girişinin lojik 0’a inmesi ve merkezi işlem biriminin kendisini çevresinden yalıtması durumu. RST 6. Bu üç kesme isteği de yazılımla denetlenebilmektedir. Hazır girişinin lojik 1 olması bellek veya giriş/çıkış biriminin hazır olduğunu gösterir. RD. HOLD ve RESET girişlerinden biri etkin iken üçüncü konuma geçer. Yaz çıkışı lojik 0’da etkindir. +5V’a bağlanması gerekir. • RD (Oku): 32. Bu durumda.20 • HOLD (Dur): 39. ve 9.5 (Kesme isteği) : Bunlar sırasıyla 7. RST 5. • RST 7. Önceliği en yüksek olan kesmedir. belirlenmiş adreslerden başlayan kesme hizmet programlarına dallanır. Bacağı oluşturan bu bacak girişinin lojik 0 olması ile. Bacağı oluşturan bu giriş. • READY (Hazır): 35. Bacağı teşkil eder. merkezi işlem birimi girişin hazır olması durumunu bekler. merkezi işlem birimine bağlı bellek veya giriş/çıkış biriminin okuma veya yazma için hazır olup olmadığını yansıtır.

VCC : 5 V’lik besleme için bağlantı bacakları. Benzer şekilde. SID girişine uygulanmış olan seri bilgiler. X2. Bacak olup kesme alındığını belirten çıkıştır. Akümülatör de bulunan veri SOD komutu ile. Önceliği en düşük olan kesmedir. 8085 mikroişlemci içinde bulunan osilatör çalışır. 33. Bacaklardır.21 • INTR (Kesme isteği): 10. • SID. Ve frekansı X1’de görülen frekansın yarısıdır. bacaklardır. bilgisayar sisteminin çalışması için gereklidir. S1. X1 ve X2 arasına bir rezonans devresi veya bir kristal bağlanması ile. Bu girişin kısa bir süre için 0 olması ile merkezi işlem birimi 0000 adresine bağlanır ve bu adresten başlayan programı işlemeye koyulur. Bacakları oluştururlar. • S0. Etkin durumu lojik 1 dir. • INTA (Kesme alındı): Bu 11. ve 40. Etkin durumu 0 dır. • VSS. mermezi işlem birimini dışarıdan komut okumaya zorlar. 2. dışarıda bulunan bir osilatörün çıkışı. seri biçimde SOD çıkışından dışarı gönderilebilir. • RESET IN (Reset girişi): 36. ve 34. Bacağı oluşturur. SID komutu ile akümülatöre alınabilir. Bu girişten kesme isteği gelmesi. ve 37. yazılımla denetlenmek istenen kesme isteği bağlanır. CLK OUT (Saat uçları): Sırasıyla 1. X1’e bağlanarak. • X1. SOD (Seri giriş/çıkış): Bunlar sırasıyla 5. • RESET OUT (Reset çıkışı): 3. Bu girişe. . IO/M (Merkezi işlem biriminin durumu): Bunlar sırasıyla 29. Bacağı oluşturur. Bir başka çozüm. ve 4. Bacaklardır. 80852in bu frekansta çalışması sağlanabilir. Merkezi işlem birimini albaştan etmeye yarar. Bunlar 20. CLK OUT. Bu üç cıkış 8085 mikroişlemcisinin o andaki çalışma biçimini ve durumunu yansıtırlar. Bacağı teşkil eden bu bacak merkezi işlem biriminin RESET edildiğini belirtir.

Bu komutlar makine dili dediğimiz makinanın anlayabilecegi dilde düzenlenmiştir.22 (Şekil 9: 8085 Mikroişlemcinin bacaklarının tanıtımı) 7. 7.1. ADRESLEME YÖNTEMLERĐ . ARESLEME YÖNTEMLERĐ VE KOMUTLAR 8085 Mikroişlemcilerde dört temel adresleme yöntemleri kullanılmaktadır ve bu yöntemlerin her birine has komutlar mevcuttur.

ikinci byte’e adresin düşük anlamlı kısmı. Bu altı kümenin tümünde kullanılan komutlar makine dilinde ifade edilir. • KÜTÜĞE BAĞLI ADRESLEME: Bu yöntemde.2. Komutların yazılımı ve kullanılan kodların programın hazırlanmasında büyük önem vardır. Sadece adlandırmada farklılık göstermiştir. merkezi işlem birimi içindeki kütükler üzerinde işlemler yapılmaktadır. • DOĞAL ADRESLAME: Bu adreslemeye karşılık olarak ‘register’ ve ‘implied’ adresleme yöntemleri kullanılmaktadır. . Bir anlamda dolaylı adresleme olarak düşünülebilir. KOMUTLAR 8085 mikroişlemcilerde kullanılan Intel firmasınca altı kümeye ayrılmaktadır. durum saklayıcı bayrağını etkileyen komutlar örnek verilebilir. Yani ilk byte’e komutu. • DOĞRUDAN ADRESLEME: Doğrudan adresleme 0000 . Đki adresleme yöntemide doğal adresleme kavramına uygundur. boylarına uygun verilere ivedi olarak yüklenebilir.FFFF arasındaki bellek alanını kapsamaktadır. üçüncü byte’e ise adresin yüksek anlamlı kısmı yazılır. ‘Register adressing’ diye anılan yöntemde. 7. bir kütük çiftinde yazılı olmalıdır. Bu adresleme yönteminde.23 • ĐVEDĐ ADESLEME: Merkezi işlem birimi içerisindeki akümülatör ve saklayıcılar. Ayrıca herhangi bir bellek gözesine de ivedi olarak yazılabilir. ‘Đmplied adressing’ yönteminde ise. bir komut üç byte içine yazılmaktadır. üzerinde işlem yapılacak bellek gözünün adresi.

D verinin gittiği rgisterleri temsil eder.L) SP(STACK POĐNTER . 1.) REGĐSTER ÇĐFTĐ B(B. BYTE TEK BYTE OPCODE ĐKĐ BYTE OPCODE ÜÇ BYTE OPCODE 2.E) H(H. aritmetik veya lojik komut kümesine katılmak üzere özellikleri gereği temel anlamda ayrı tutulmuştur.24 • ARĐTMETĐK ĐŞLEM KOMUTLARI: Bu komutlar yardımı ile. • LOJĐK ĐŞLEM KOMUTLARI: Bu grup içindeki komutlar. akümülatörün içeriği ve belirtilen veri arasında aritmetik işlemler yapar. akümülatörün içeriği üzerinde lojik işlemleri yapar. BYTE 3.C) D(D. • KARAR VERME VE DALLANMA KOMUTLARI:Bu komutlar yardımı ile program akışı içinde değişik satırlara atlanabilir. • GĐRĐŞ / ÇIKIŞ KOMUTLARI: Bu küme içindeki komutlar yığına veya çevre elemanlarına veri göndermek ve oradan veri kabul etmek için kullanılır. • ĐŞLEM KOMUTLARI: Bu küme içindeki komutlar. BYTE VERĐ ADRESĐN DÜŞÜK KISMI ADRESĐN YÜKSEK KISMI (Tablo 1: ĐNTEL 8085 için komutların belleğe yazılış formu) REGĐSTER KODU S/D A 111 B 000 C 001 D 010 E 011 H 100 L 101 (S verinin çıktığı registerleri.

. KOMUTLAR LĐSTESĐ Komut adı : MOV R1 R2 Tanım : R2 register içeriğini R1’e taşır.3. Opcode : 01DDDSSS Komut adı : MOVE R M Tanım : Bellekten R registerine veri yükler: Opcode : 01DDD110 Komut adı : MOV M R Tanım : R registerin içeriğini belleğe taşır. Opcode : 00110110 Komut adı : LXI RP veri Tanım : Veriyi Rp register çiftine taşır. Opcode : 01110SSS Komut adı : MVI R veri Tanım : Veriyi R registerine taşır. Opcode : 00DDD110 Komut adı : MVI M veri Tanım : Veriyi belleğe taşır. Opcode : 00RP0001 Komut adı : LDA adres Tanım : Bellekteki veriyi akümülatöre taşır.25 KODU 00 01 10 11 (Tablo 2: Register ve register çiftleri için kodlar) 7.

Opcode : 11101011 Komut adı : INR R Tanım : Register içeriğini 1 ile toplar. Opcode : 00RP0010 Komut adı : XCHG Tanım : H ve L register içeriğini sırasıyla D ve E ile değiştirir. Opcode : 00110010 Komut adı : LHLD adres Tanım : Verilen adresin içeriğini L’ye bir sonrakini H registerine taşır.26 Opcode : 00111010 Komut adı : STA adres Tanım : Akümülatörün içeriğini belleğe taşır. Opcode : 00DDD100 . Opcode : 00RP1010 Komut adı : STAX RP Tanım : Akümülatörün içeriğini RP register çiftine taşır. Opcode : 00101010 Komut adı : SHLD adres Tanım : Register içeriğini verilen adrese taşır. Opcode : 00100010 Komut adı : LDAX RP Tanım : RP pegister çiftinin içeriğini akümülatöre taşır.

Opcode : 00110100 Komut adı : INX RP Tanım : Register çiftinin içeriğini 1 ile toplar. Opcode : 10000110 Komut adı : ADI veri Tanım : Veri ve akümülatörü toplar sonucu akümülatörde saklar. Opcode : 00RP1011 Komut adı : ADD R Tanım : R register ve akümülatör içeriğini toplar sonucu akümülatörde saklar. Opcode : 00DDD101 Komut adı : DCR M Tanım : Bellek içeriğinden 1 çıkartır. Opcode : 00110101 Komut adı : DCX RP Tanım : RP register çifti içeriğinden 1 çıkartır. Opcode : 11000110 . Opcode : 00RP0011 Komut adı : DCR R Tanım : Register içeriğinden 1 çıkartır.27 Komut adı : INR M Tanım : Bellek içeriğini 1 ile toplar. Opcode : 10000SSS Komut adı : ADD M Tanım : Bellek ve akümülatörün içeriğini toplar sonucu akümülatörde saklar.

Opcode : 10010110 Komut adı : SUI veri Tanım : Veriyi akümülatörden çıkartır sonucu akümülatörde saklar. Opcode : 11010110 Komut adı : SBB R Tanım : R register i ve elde bayrağını akümülatörden cıkartır sonucu akümülatörde saklar. Opcode : 10001SSS Komut adı : ADC M Tanım : Bellek ve elde bayrağını akümülatör ile toplar sonucu akümülatörde saklar Opcode : 10001110 Komut adı : ACI veri Tanım : Veri ve elde bayrağını akümülatör ile toplar sonucu akümülatörde saklar.28 Komut adı : ADC R Tanım : R register ve elde bayrağını akümülatör ile toplar sonucu akümülatörde saklar. Opcode : 11001110 Komut adı : DAD RP Tanım : RP register çiftini HL register çifti ile toplar sonucu HL register çiftinde saklar. Opcode : 10010SSS Komut adı : SUB M Tanım : Bellek içeriğini akümülatörden çıkartır sonucu akümülatörde saklar. . Opcode : 00RP1001 Komut adı : SUB R Tanım : R register çiftini akümülatörden çıkartır sonucu akümülatörde saklar.

Opcode : 00000111 Komut adı : RRC . 1 ise 0 yapar. Opcode : 00111111 Komut adı : DAA Tanım : Akümülatörün içeriğini BCD sayıları ile çalışacak şekilde düzenler. Opcode : 00101111 Komut adı : STC Tanım : Elde bayrağının değerini 1 yapar. Opcode : 00110111 Komut adı : CMC Tanım : Elde bayrağının değerini 0 ise 1. Opcode : 10011110 Komut adı : SBI veri Tanım : Veri ve elde bayrağını akümülatörden çıkartır sonucu akümülatörde saklar.29 Opcode : 10011SSS Komut adı : SBB M Tanım : Bellek ve elde bayrağını akümülatörden çıkartır sonucu akümülatörde saklar. Opcode : 00100111 Komut adı : RLC Tanım : Akümülatörü bir bit sola döndürür. Opcode : 11011110 Komut adı : CMA Tanım : Akümülatördeki sayının tümleyenini alır.

Opcode : 10100110 Komut adı : ANI veri Tanım : Veri ile akümülatör arasında VE işlemi yapar sonucu akümülatörde saklar. Opcode : 00011111 Komut adı : ANA R Tanım : R registeri ile akümülatör arasında VE işlemi yapar sonucu akümülatörde saklar.30 Tanım : Akümülatörü bir bit sağa kaydırır. Opcode : 10100SSS Komut adı : ANA M Tanım : Bellek ile akümülatör arasında VE işlemi yapar sonucu akümülatörde saklar. Opcode : 00010111 Komut adı : RAR Tanım : Akümülatörü elde bayrağı ile birlikte sağa kaydırır. Opcode : 11100110 Komut adı : XRA R Tanım : R registeri ile akümülatör arasında XOR işlemi yapar sonucu akümülatörde saklar. Opcode : 10101110 . Opcode : 00001111 Komut adı : RAL Tanım : Akümülatörü elde bayrağı ile birlikte sola kaydırır. Opcode : 10101SSS Komut adı : XRA M Tanım : Bellek ile akümülatör arasında XOR işlemi yapar sonucu akümülatörde saklar.

31 Komut adı : XRI veri Tanım : Veri ile akümülatör arasında XOR işlemi yapar sonucu akümülatörde saklar. Opcode : 11111110 Komut adı : JMP adres Tanım : Komutta verilen adrese dallanır. Opcode : 10111SSS Komut adı : (CMP M)1 Tanım : Bellek ile akümülatörü karşılaştırır sonuç bayrakların durumu ile gösterilir. Opcode : 10110110 Komut adı : ORI veri Tanım : Veri ile akümülatör arasında VEYA işlemi yapar sonucu akümülatörde saklar. Opcode : 10111110 Komut adı : (CPI veri)1 Tanım : Veri ile akümülarötü karşılaştırır sonuç bayrakların durumu ile gösterilir. Opcode : 10110SSS Komut adı : ORA M Tanım : Bellek ile akümülatör arasında VEYA işlemi yapar sonucu akümülatörde saklar. Opcode : 11101110 Komut adı : ORA R Tanım : R registeri ile akümülatör arasında VEYA işlemi yapar sonucu akümülatörde saklar. Opcode : 11110110 Komut adı : (CMP R)1 Tanım : R registeri ile akümülatörü karşılaştırır sonuç bayrakların durumu ile gösterilir. .

Opcode : 11110010 Komut adı : JM adres Tanım : Verilen adrese negatif ise atlar. Opcode : 11101010 Komut adı : JPO adres . Opcode : 11000010 Komut adı : JP adres Tanım : Verilen adrese pozitif ise atlar. Opcode : 11011010 Komut adı : JNC adres Tanım : Verilen adrese elde yok ise atlar. Opcode : 11001010 Komut adı : JNZ adres Tanım : Verilen adrese sıfır değil ise atlar. Opcode : 11111010 Komut adı : JPE adres Tanım : Verilen adrese çift parite ise atlar. Opcode : 11010010 Komut adı : JZ adres Tanım : Verilen adrese sıfır ise atlar.32 Opcode : 11000011 Komut adı : JC adres Tanım : Verilen adrese elde var ise atlar.

Opcode : 11011100 Komut adı : CPO adres Tanım : Verilen adrese tek parite ise atlar.33 Tanım : Verilen adrese tek parite ise atlar. Opcode : 11001100 Komut adı : CNC adres Tanım : Verilen adrese elde yok ise atlar. Opcode : 11001101 Komut adı : CNZ adres Tanım : Verilen adrese sıfır değil ise atlar. Opcode : 11101001 Komut adı : CALL adres Tanım : Verilen adresten programa devam eder. Opcode : 11000100 Komut adı : CZ adres Tanım : Verilen adrese sıfır ise atlar. Opcode : 11100010 Komut adı : PCHL Tanım : HL register çiftini prıgram sayıcısına alır program kaldığı adresten devam eder. Opcode : 11100100 . Opcode : 11010100 Komut adı : CC adres Tanım : Verilen adrese elde var ise atlar.

Opcode : 11001000 Komut adı : RNC Tanım : Ana programa elde yok ise döner. Opcode : 11111100 Komut adı : RET Tanım : Alt program sona erdikten sonra ana programda kaldığı adresten devam eder. Opcode : 11101100 Komut adı : CP adres Tanım : Verilen adrese pozitif ise atlar. Opcode : 11110100 Komut adı : CM adres Tanım : Verilen adrese negatif ise atlar. Opcode : 11001001 Komut adı : RNZ Tanım : Ana programa sıfır değil ise döner. Opcode : 11000000 Komut adı : RZ Tanım : Ana programa sıfır ise döner. Opcode : 11010000 Komut adı : RC Tanım : Ana programa elde var ise döner. Opcode : 11011000 .34 Komut adı : CPE adres Tanım : Verilen adrese çift parite ise atlar.

Opcode : 11110000 Komut adı : RM Tanım : Ana programa negatif ise döner.35 Komut adı : RPO Tanım : Ana programa tek parite ise döner.. . Opcode’u 3. 4. Opcode : 11101000 Komut adı : RP Tanım : Ana programa pozitif ise döner. bitleri ile belirlenir. Opcode : 11100000 Komut adı : RPE Tanım : Ana programa çift parite ise döner. Opcode : 11100011 Komut adı : SPHL Tanım : HL register çiftini stack pointere aktarır. ve 5. Opcode : 11n1n2n3111 Komut adı : XTHL Tanım : Yığının en üsteki byte‘i HL register çifti ile yer değiştirir. Opcode : 11111000 Komut adı : RST n Tanım : Özel amaçlı bir CALL komutudur. Opcode : 11111001 Komut adı : OUT PORT Tanım : Akümülatörden porta bilgi gönderir.

Opcode : 11111011 Komut adı : NOP Tanım : Zamanlama programlarında işlemciyi bekletir. Akümülatör ≠ R. M veya veri ise sıfır (Z) bayrağı 0 değerini alır. Akümülatör < R. M veya veri ise elde (CY) bayrağı 0 değerini alır.36 Opcode : 11010011 Komut adı : IN PORT Tanım : Porttan akümülatöre bilgi gönderir. M veya veri ise sıfır (Z) bayrağı 1 değerini alır. Opcode : 11110011 Komut adı : EI Tanım : Dışarıdan gelen maskelenebilen interrupt sinyallerine tepki göstermez. Opcode : 11011011 Komut adı : DI Tanım : Dışarıdan gelen maskelenebilir interrupt sinyallere tepki gösterir. M veya veri ise elde (CY) bayrağı 1 değerini alır. . Opcode : 00000000 Komut adı : HLT Tanım : Đşlemcinin çalışması durdurulur. Opcode : 01110110 1 Akümülatör = R. Akümülatör > R.

B.80/85 User’s Manuel. Birsen Yayınları. 1979.. Mikroişlemciler.Ş. GÜLER Mehmet Ali ve VARGÖR. ADALI Eşref. 5. Đntel Copreration. Birsen Yayınları. 8 Bit Mikrobilgisayar. Mikroişlemciler / Mikrobilgisayarlar. KURTULDU Şaban . AKBAY Sönmez ve ÇETĐN Kadir. INTEL MCS. 1994. . Yayınları. 3. 1995. Đlhan.E. Beta Basım A. M. 4.37 KAYNAKLAR 1. 1988. 1993. Đleri Elektronik 2. 2. AYTAÇ Cihat ve KUNTALP Mehmet.

You're Reading a Free Preview

İndirme
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->