Montajcıyı eğlenceli bir şekilde öğrenin | merhaba çevrimiçi

pembikbulut

Global Mod
Global Mod


  1. Montajcıyı eğlenceli bir şekilde öğrenin

Nihayet zamanı geldi; bugün sizlere aylardır heyecan ve heyecanla beklediğim bir kitabı sunuyorum. Ancak kitabın konusu, modern montaj dili programlamaya giriş niteliğinde olduğundan 2024 yılı için biraz sıra dışı. Şimdi montajcıyı neden önemsemeniz gerektiğini merak ediyor olabilirsiniz, ancak birazdan bu konuya daha fazla değineceğiz. Her şeyden önce bu blog yazısındaki asıl endişem, kitabın okumaya değer olup olmadığı sorusudur. Hadi başlayalım!


Duyuru








Golo Roden, native web GmbH'nin kurucusu ve CTO'sudur. Etkinlik ve hizmet odaklı dağıtılmış mimarilere odaklanarak web ve bulut uygulamaları ile API'lerin tasarımı ve geliştirilmesiyle ilgilenmektedir. Yol gösterici ilkesi, yazılım geliştirmenin kendi başına bir amaç olmadığı, her zaman temeldeki profesyonelliği takip etmesi gerektiğidir.







Kitabın başlığı “Modern Montaj Programlamasına Giriş” ve “RISC-V'yi Eğlenceli ve Sesli Bir Şekilde Öğrenmek” alt başlığına sahip. Scot W. Stevenson tarafından yazılmıştır ve Temmuz 2024'te dpunkt-Verlag tarafından yayınlanacaktır. [Anm. d. Red.: Ein Verlag der Haberler group] göründü. Yayıncı bana ücretsiz bir inceleme kopyası sağlayacak kadar nezaket gösterdi. Ancak bu blog yazısındaki fikrimin yayıncıyla aynı fikirde olmadığını belirtmemiz bizim için önemli. Bu benim kişisel, dürüst değerlendirmemdir ve inceleme için herhangi bir tazminat almıyorum. Bunu açıklamamız bizim için önemlidir çünkü değerlendirmeler güvenilir olmalıdır ve bu ancak neyi beğenip neyi beğenmediğimi özgürce söyleyebildiğim takdirde garanti edilebilir. Bu sadece kısa bir giriş.

Neden her şeyin montajcısı?


Kitaba geçmeden önce belki de kendimize şu soruyu sormalıyız: 2024'te montaj dili programlamayı neden önemsemeliyiz? Daha önemli bir şey yok mu? Yazar önsözde tam olarak şu soruyu soruyor:

“Assembly dili programlama üzerine modern bir kitap, ne anlama gelmeli?”

Yazar konunun mutlaka açıklanması gerektiğinin bilincindedir. Bir yandan eğitimleri sırasında montajcıyla uğraşmak zorunda kalanlar olduğunu yazıyor. Öte yandan, montajcıyı anlamanın bilgisayarları daha iyi anlamaya yol açacağına inananlar da var. Her ikisi de kitabı okumak için meşru nedenlerdir, ancak: Kitap öncelikle üçüncü bir hedef grup için yazılmıştır; yani işin iç yönlerine dalmayı seven ve merak ve bilgiye susuzluk nedeniyle işlerin belirli koşullar altında nasıl çalıştığını anlamak isteyenler için. Kapüşon . çalışıyor. Bence bu bende gerçekten yankı uyandıran güzel ve dürüst bir açıklama.


Önerilen editoryal içerik



İzniniz doğrultusunda harici bir YouTube videosu (Google Ireland Limited) buraya yüklenecektir.



Her zaman YouTube videolarını yükle

YouTube videosunu şimdi indirin




Modern Assembly Programlamaya Giriş (Scot W. Stevenson tarafından)




Bana göre öğrendiğiniz her şeyin her zaman doğrudan bir faydası olması gerekmiyor. En azından bazı şeyleri sırf kendileri için ele almayı seviyorum ve benim için sıfırlar ve birler kesinlikle bunlardan biri. Bu anlamda kitap kariyerinizi doğrudan ilerletmeyebilir ama entelektüel içgüdülerinize hitap edebilir, hatta belki ufkunuzu genişletebilir. Her halükarda, montajcı hakkında biraz bilgi sahibi olmanın, her gün uğraştığımız makineyi daha iyi anlamamızı sağlayacağına da inanıyorum.

Montajcıyla bağlantım


Ben de yıllar önce x86 montajcısını öğrenmeye çalıştım. Bazı temel bilgilerim var ama hiçbir zaman derinlere inmedim. Ancak birisi montajcıyı gerçekten tanıdığında büyük saygı duyuyorum. Mart ayında canlı yayınlarımızdan birine konuk olarak “Prince of Persia” bilgisayar oyununun derleyici kaynak kodunu analiz eden bir geliştirici benimle birlikteydi. Daha spesifik olarak, kodu analiz etti ve ben de ilgiyle onun hakkında sorular sordum. Bunu çok heyecan verici buldum ve bu kitap içerik açısından mükemmel bir sonuç. Yani canlı yayını izleyip beğendiyseniz kitabın sizin de ilginizi çekmesi ve zevkinizi tatmin etmesi gerekir.

Sonunda kitaba gelelim: 250'den biraz fazla sayfadan oluşuyor (bu nedenle oldukça kompakt) ve beş parçaya yayılan 25 bölüme ayrılmış. Birinci Bölüm başlangıçta bir takım temel terimleri ve temel kavramları kapsamaktadır: Negatif sayılar ikili sistemde nasıl çalışır? Kayıt defteri nedir? CPU ve ALU arasındaki fark nedir? CISC nedir, RISC nedir, işlem kodu nedir, anımsatıcı nedir?

Temel olarak makine


İlk 70 veya daha fazla sayfa, ortak bir dil oluşturmak ve montajcıyla çalıştığınız ancak günlük yaşamda sıklıkla temasa geçmediğiniz seviyenin temel bir anlayışını oluşturmakla ilgilidir. Yıllar öncesinden bunun hakkında çok şey biliyordum ama yine de onu yeniden okumayı heyecan verici buldum çünkü iyi bir genel bakıştı. Birleştiricinin esas olarak her yerde benzer olmasına rağmen, somut uygulamanın ağırlıklı olarak işlemci mimarisine ve ilgili talimat setine bağlı olduğu iyi bir şekilde vurgulanmıştır. Kitap açık RISC-V standardını kapsıyor ancak aynı zamanda diğer mimarilerde işlerin nasıl çözüldüğünü gösteren örnekler de kullanıyor. Bu, montajcıyla işlemciden işlemciye farklılık gösteren soyut-kavramsal düzey ve teknik-somut düzey olmak üzere iki düzeyde çalıştığınız konusunda iyi bir fikir verir.

Bu nedenle ikinci bölüm, RISC-V'nin bireysel modüllerine genel bir bakışla başlar. Bu, mevcut kayıtları, kelime boyutunu, adresleme türlerini ve en önemlisi gerçek talimat setini içerir. Burada çeşitli komutlar, veri yükleme ve kaydetme gibi basit görevlerden başlayarak hesaplamalar, karşılaştırmalar, koşullar ve döngüler yoluyla nispeten hızlı bir şekilde sunulur ve açıklanır. Komutların iç yapısının yanı sıra, sözde komutlar ve özel durumlar da ele alınmaktadır. Bu bölüm konuyu derinlemesine ele alır ve bu aynı zamanda kitabın hem güçlü hem de zayıf yönleridir: bir yandan RISC-V komutlarına tam bir genel bakış elde edersiniz, diğer yandan bu bölüm daha kapsamlıdır. bir ders kitabından ziyade bir referanstır. Okuyorsunuz ama uygulamaya koymuyorsunuz, bu da kitabın ilerleyen kısımlarında geriye dönüp zıplamanız gerektiği anlamına geliyor.

Kodu derleyiciyle temizleyin


Üçüncü bölüm, daha büyük birimler oluşturmak için temel yapı taşlarını bir araya getirerek şimdiye kadar öğrendiklerinizin üzerine inşa etmekle ilgilidir. Elbette bunu safça da yapabilirsiniz, ancak daha deneyimli geliştiricilerden öğrenmeniz tavsiye edilir. Bu aşağıdaki gibi konularla ilgilidir:

  • Etkili kod nasıl yazılır?
  • Karşılaştırmalar ve dallar nasıl yapılandırılır?
  • Döngüleri nasıl yazarım?
  • Çarpma ve bölmeyi nasıl uygulayabilirim?
  • Sistem çağrılarını derleyiciye nasıl entegre edebilirim ve standart C kitaplığıyla nasıl etkileşim kurabilirim?
Bu bölümdeki bölümlerin sırasını biraz zor buldum çünkü biraz keyfi görünüyor. Genel olarak hala işe yarıyor çünkü sonuçta doğal bir düzeni olmayan çeşitli en iyi uygulamaların bir karışımı.

Antrenmana çıkıyoruz!


Bu, kitabın %85 ila 90'ının zaten okunduğu anlamına gelir, ancak iki bölüm daha vardır: dördüncüsü belirli projelerle ilgilidir. Ancak bu bölüm en az iki proje için yalnızca 25 sayfa içermektedir. Aslında bana göre kitabın en büyük zayıflığı bu: Uygulamanın gözden kaçırılması. “RISC-V'yi eğlenceli ve temelli bir şekilde öğrenmek” alt başlığına sahip bir kitabın eğlenceli yönünü özlüyorum. İlk 225 sayfa, yeni bir yabancı dilin gramerini ve kelime dağarcığını oldukça iyi açıklıyor ancak sonuna kadar basit bir cümle söyleyemezsiniz. Yazık oldu sanırım, daha pratik bir yapıyı tercih ederdim. Çünkü kitabın çok fazla potansiyeli var ve Assembler'ın heyecan verici bir konu olduğunu düşünüyorum, ancak bunu sadece teorik düzeyde öğrenmek değil, aynı zamanda pratik olarak uygulayabilmek de istiyorum.

Ve bizi burada yanlış anlamayalım: kitap kötü değil ama bir ders kitabı olarak faydası sadece sınırlı. Temiz montaj dili programlamasıyla ilgili ayrıntılı bir bölümle daha çok referans yoluyla bir referanstır. Başlığa göre farklı bir şey bekliyordum.

Son olarak beşinci bölüm yalnızca son on sayfayı içermektedir. Bunlar tipik hatalar, iyi stil ve daha fazla bağlantıdır. Bu bakımdan gerçek bir beşinci bölüm değil, bir ek niteliğindedir.

Okumaya değer mi?


Geriye ne kaldı? Montajcıyla ilgilenen, bir bilgisayarın ve özellikle işlemcinin dahili olarak nasıl çalıştığını bilmek isteyen ve oldukça önemsiz bir konuyu ele almaktan korkmayan ve aynı zamanda çok eğlenceli olan herkes kesinlikle bu oyunla çok eğlenebilir. kitap. Bahsedilen nedenlerden dolayı montajcı hakkında daha fazla bilgi edinmek istiyorsanız ancak daha fazla rehberliği tercih ediyorsanız, kitabı size göre bulamayabilirsiniz. Buna rağmen güzel bir kitap.


(Mayıs)
 
Üst