Bunun çok yaygın bir soru olduğunu biliyorum. Ama aklımda farklı bir açı var. Sadece burada ifade etmeye çalışacağım.
Bildiğim kadarıyla, bir CPU'nun yürüttüğü her komut makine dilinde ve ALU ve transistörleri sayesinde (donanım seviyesine gidersek) bazı aritmetik işlemler yapmaktır.
Ancak bu yazı yazmaktan daha kolaydır. Peki tüm CPU ekliyor, çıkarıyor vb. İse, o zaman bir program nasıl, bu Merhaba aritmetik işlemlerle yürütülen baskı Merhaba Dünya diyen bir JAVA programı söyleyin?
Demek istediğim bu program nasıl sadece CPU için ek bir şey haline dönüştürülür?
Not: Bu soru bu web sitesi için geçerli değilse özür dilerim.
-----Bölüm iki-----
Tamam. Bu kadar hızlı ve bu coşkuyla cevap verdiğiniz için herkese teşekkürler. Sorumu biraz değiştirip tüm cevaplara yorum yapıp tekrar sormaktan daha iyi olduğunu düşündüm.
İşte burada.
İlk olarak, herkes Merhaba Dünya örneğini özellikle cevapladı. Bu benim hatam. Bunu genel tutmalıydım. Merhaba dünya örneği, çıkış cihazlarını ve işlenmesinin sadece CPU'larla nasıl sınırlı olmadığını ve bu da cevaplarınızda doğru bir şekilde ortaya çıktığını sorguluyor.
Ayrıca birçoğunuz CPU'nun eklemekten daha fazlasını yaptığını fark ettiniz. Buna katılıyorum. Sadece yazmadım ve her şeyi varsaydım. Anladığım kadarıyla, bu süreç:
bellekten talimatı okuyun (veri ve adres veriyolları ve program sayaçlarını kullanarak)
- CPU içindeki kayıtta veri saklama
- Şimdi ALU, elbette talimatın kodunu çözdükten sonra aritmetik işlemler yapar veya eğer bir komut ise,
- Ve sonra çıkış cihazı ve benzeri gibi gerekirse diğer kaynaklarla iletişim kurmak. Bunun ötesindeki süreçler şimdilik önemsiz.
Yani CPU'nun bir komutu çözdüğü ve aritmetik bir işlem yapmaya karar verdiği adım3'te (burada, mevcut talimatı atlamak gibi yapılacak başka bir işlem olmadığını varsayıyoruz ... aritmetik işlemler çoğunlukla yapıldığından ... ) Görselleştirmem burada sona eriyor. Programımdan bir komut nasıl CPU için aritmetik bir işlemdir. Bu aritmetik işlemi yapar ve bu talimat amacına hizmet eder.
Umarım bu sefer kendimi netleştirdim.
PS Burada ALU'nun programlarımızda yaptığımız gerçek aritmetik işlemle sınırlı olmadığını büyük bir varsayımla alıyorum, daha ziyade ikili biçimde olan tüm talimatları, kastedilen sonuç vermek için ekleyerek veya çıkararak vb. pes etmek. Burada yanılıyorsam aşağıdaki cevaplardan daha doğru bir şekilde soruma cevap verin.