Bilgisayarın tarihini okuyordum ve IA-64 (Itanium) işlemcilerle karşılaştım. Kulağa ilginç geliyorlardı ve Intel'in neden onları bırakmaya karar vereceğine dair kafam karıştı.
Bu döngüde hangi 2 komutu çalıştırmak istediğinizi açık bir şekilde seçme yeteneği, özellikle programınızı montajda yazarken, örneğin daha hızlı bir önyükleyici.
Yüzlerce kayıtları herhangi montaj programcı için ikna edilmelidir. Temelde tüm işlev değişkenlerini, başka bir işlev çağırmadığı takdirde kayıtlara kaydedebilirsiniz.
Bunun gibi talimatlar yapma yeteneği:
(qp) xor r1 = r2, r3 ; r1 = r2 XOR r3
(qp) xor r1 = (imm8), r3 ; r1 = (imm8) XOR r3
yapmak zorunda kalmaya karşı:
; eax = r1
; ebx = r2
; ecx = r3
mov eax, ebx ; first put r2 into r1
xor eax, ecx ; then set r1 equivalent to r2 XOR r3
mov eax, (imm32) ; first put (imm32) into r1
xor eax, ecx ; then set r1 equivalent to (imm32) XOR r3
Geriye dönük x86 karşılaştırılabilirliği olmadığı için duydum, ancak sadece Pentium devresini ekleyerek ve sadece Itanium moduna geçirecek bir işlemci bayrağı ekleyerek düzeltilemedim (Korumalı veya Uzun moda geçmek gibi)
Bununla ilgili tüm harika şeyler, onları AMD'nin önünde dev bir sıçrama yapacaktı.
Herhangi bir fikir?
Ne yazık ki bu, bunu yapmak için çok gelişmiş bir derleyiciye ihtiyacınız olacağı anlamına gelir. Ya da CPU'nun her belirli modeli için bir tane. (Örn. Itanium'un ekstra bir özelliğe sahip yeni bir sürümü farklı derleyici gerektirir).
Visual Studio 2010'da bir WinForms (hedef yalnızca .NET 2.0 vardı) projesi üzerinde çalışırken, IA-64 derleme hedefim vardı. Bu, IA-64 için derlenebilen bir .NET çalışma zamanı olduğu ve .NET çalışma zamanının Windows anlamına geldiği anlamına gelir. Ayrıca, Hamilton'un cevabı Windows NT'den bahsediyor. Windows NT gibi tam gelişmiş bir işletim sistemine sahip olmak, IA-64 makine kodu üretebilen bir derleyici olduğu anlamına gelir.