Mikro kod, makine kodunun ötesinde bir soyutlama seviyesidir. Gerçek CPU mikrokodu çalıştırıyor ve bir çeviri motoru makine kodunu anında mikrokod haline getiriyor. Bu, daha hızlı, daha küçük işlemciler, daha az hata ayıklama ile karmaşık bir işlemci oluşturmak ve geriye doğru uyumluluk gibi çeşitli nedenlerle yapılır. Örneğin, x86 yönerge kümesi, nadiren kullanılan bazı dize işleme yönergeleri içerir. Bununla birlikte, geriye dönük olarak uyumlu kalmak için, modern x86 işlemcilerde hala mevcut olmalıdır. Bu talimatlar için bir yürütme yolunu kablolamak yerine, mikro koda dönüştürülür ve yürütülür. Bu, silikondan tasarruf sağlarken, geriye dönük olarak uyumlu kalır.
Yürütülürken her iki program türü de nerede bulunur?
Makine kodu önbellekte bulunur (RAM'den çekildikten sonra). Mikro kod, belirli makine mimarisine bağlı olarak bir mikro kod önbelleğinde bulunur. Önbellek, yalnızca dönüştürülen mikrokodu mümkün olan en büyük makine kodu yönergesinden alacak kadar mikrokodu tutacak kadar büyük olabilir veya birçok makine kodunun dönüştürülmüş sonuçlarını depolayan daha büyük bir önbellek olabilir, böylece tümünü yeniden dönüştürmeye gerek kalmaz küçük döngüler için her bir yinelemedeki makine kodu.
Bazı mimarilerde dönüştürülen mikrokod hiçbir yerde saklanmaz - getirme / tercüme ünitesi şu anda yürütülen makine koduna göre bir dizi mikrokod talimatı verir. Bu durumda, mikrokod bir çeşit ROM'dan yürütülmektedir ve makine kodu esasen ROM'a bir indekstir - makine kodu talimatını tam olarak yürütmek için çalıştırılması gereken mikrokod talimatları serisine işaret etmektedir.
Ya montaj dili gerçek-op talimatları için 1: 1 eşleme var mı?
Makine kodu ve montaj kodu genel olarak montaj talimatlarına uygun olarak 1: 1 eşleştirilir. Montajcıya bağlıdır. Yüksek seviyeli montajcıların, bir montaj satırı satırı yazmasına izin veren büyük bir makro seti olabilir ve montajcı çeşitli makine kodları üretecektir.
Ancak genel olarak "saf" montaj dili, işlemci kılavuzundaki talimat kümesi tablosu kullanılarak doğrudan makine koduna dönüştürülebilir.
Gerçi "true-op talimatları" ile ne demek istediğinden emin değilim. Belki referansı açıklayabilirsiniz.
Her ikisinin biçimi işlemci mimarisi tarafından tanımlanmış mı?
Hem makine kodunun hem de mikro kodun formatı işlemci mimarisi tarafından tanımlanır.