Motorola 6800
-
Arkadaşlar aranızda mikroişlemciler ve asm dersi gören mutlaka vardır bu dersten perşembe günü sınavım var.Motorola 6800 görüyoruz.Ancak elimde defter,fotokopi falan yok(derslere girmediğim için) geçmiş dönemlere ait 2 çözümlü soru kağıdı ve birde komut listem var.Neyse sorum şu bugün biraz çalışim dedim lisedede aynı miktoişlemciyi gördüğümüz geçen senede kaldığım bir ders olduğu için sanırım anladım ancak 2 şey kafama takıldı
1.ci programı makina koduna çevirirken bu sıçrama,dallanma komutlarında bi ofset olayı var(bağıl adresleme) o ofseti nasıl hesaplıyoruz.
2.si ise programın toplam çevrim süresini hesaplarken normalde kodların çevrim süreleri toplanıyor ancak sanırım bu sıçrama,dallanma komutlarının olduğu programlarda bi formül olayı var onu tam kavrayamadım.
Bilen arkadaşlar yardım ederlerse sevinirim :)
-
1. sorunun cevabı, 80286 ya benziyorsa bağıl adresleme komut bittikten sonraki adres yani bir sonraki komutun adresinden itibaren gideceği adrese uzaklık şeklinde. Bu durumda komutların uzunluklarını bilmen lazım. Önceki adresler (-), sonraki adresler (+) şeklinmdedir. x86 (CISC) mimarisinde komutlar farklı uzunluklardasır, mot. 65000 (RISC) mimarisinde komutlar aynı uzunluktadır. 6800 serisinin hangi mimaride olguğunu bilmiyorum ama CISC mimarisinde olduğunu tahmin ediyorum.
2. soru için emin değilim onun için kafanı hiç bulandırmıyayım
