Kayıtlar

Bilgisayar Organizasyonu ve Tasarımı etiketine sahip yayınlar gösteriliyor

Assembly Alt Rutin ve Kaydırma Örnekleri

  1. Örnek --Assembly kodu ORG 100   / Programın başlangıcı 100 belirtilmiştir LDA x    / x'i AC'ye yükle BSA KAYDIR   /   KAYDIR alt rutinine dallan STA x  / x'i sakla LDA z  / z'yi AC'ye yükle BSA KAYDIR  / KAYDIR alt rutinine dallan STA z  / z'yi sakla HLT  / Bilgisayarı durdur x, HEX ABCD  / Onaltılı operand x y, HEX DBDB  / İkili operand y KAYDIR, HEX 0  / Dönüş adresini buraya saklar CIL  / Dairesel sola 1 kez kaydır AND MSK  / AC (16) yı 0 yap BUN KAYDIR  / Ana programa dönüş MSK, HEX FFFE  / Mask operandı: en sol biti 0 yapar END  / Program sonu Assembly kodu-- Bu kodların her biri, işlemcinin çeşitli işlemleri gerçekleştirmesi için talimatlar veriyor. Aşağıda her satırı tek tek açıklıyorum: 1. ORG 100:    - Anlamı: Programın bellekte başlayacağı adresi belirtir. Bu durumda programın başlangıç adresi 100 olarak belirlenmiştir. 2. LDA x:    - Anlamı: x adresindeki ve...

Assembler ile Aritmatik Kaydırma

Negatif sayıların gösterimine bağlı olarak temel bilgisayarda 2'li komplement gösterimi kullanılır. En soldaki işaret birinin aynı kalmalıdır. Aritmatik Sağ Kaydırma - Bu durumda, E FF'sine işaret biti ile aynı değer verilir. CLE              / E=0 SPA              / Eğer AC>0 (pozitif ise) atla, E=0 CME              / AC<0 (negatif ise) E=1 CIR              / E ve AC'yi dairesel olarak kaydır Aritmatik Sola Kaydırma - En az değerli bit'in olduğu yerden 0 eklenmeli. - Bu E=0 tanımlanarak yapılabilir. - İşaret bit'i kaydırma sırasında değişmemelidir. - İşlem sonrasında E bit'i ve işaret bit'i karşılaştırılmalıdır. - Eğer iki değer aynı ise işlem doğru olarak tanımlanmıştır. - Fakat iki işlem farklıysa taşma(overflow) olmuş demektir. - Kaydırma yapılmadan önceki sayı değeri çok büyük olduğundan, kaydırma sonucu akümülatör AC kapasitesi yetersiz ...

Üç Bitlik Alanların Sembol ve Kodları

Resim
Bu yazımda, F1, F2 ve F3 alanlarının sembol ve ikili kodlarının tanımlandığı üç tablo bulunuyor. Her bir tablo, mikroişlemlerle ilgili bilgileri içeriyor. F1 Alanı Mikroişlemleri - NOP (No operation) : İşlem yapılmaz. - ADD : AC ( Accumulator ) register'ına DR ( Data Register ) register'ındaki değer eklenir. - CLRAC : AC register'ı sıfırlanır. - NCAC : AC register'ı 1 artırılır. - DRTAC : DR register'ındaki değer AC register'ına aktarılır. - DRTAR : DR register'ındaki 0-10 bitler AR ( Address Register ) register'ına aktarılır. - PCTAR : PC ( Program Counter Program) register'ındaki değer AR register'ına aktarılır. - WRITE : M[AR] ( Memory Address Register ) adresindeki bellek hücresine DR register'ındaki değer yazılır. F2 Alanı Mikroişlemleri - NOP (No Operation) : İşlem yapılmaz. - SUB : AC register'ından DR register'ındaki değer çıkarılır. - OR : AC register'ı ile DR register'ı arasında bit düzeyinde OR i...

Temel Bilgisayarda Assembler programlama

 Temel bilgisayar assembler programlama, düşük seviyeli bir programlama türüdür ve bilgisayarın işlemcisini doğrudan kontrol etmek için kullanılır. Assembler dili, bilgisayarın makine diline çok yakın bir yapıya sahiptir ve genellikle insanların anlayabileceği sembolik komutlarla yazılır. Assembler programları, bir derleyici veya yorumlayıcı tarafından yorumlanmadan önce doğrudan makine koduna çevrilebilir. Assembler programlamada, her bir komut, bilgisayarın işlem birimine doğrudan bir komut olarak gönderilir. Bu komutlar, işlemcinin belirli işlemleri gerçekleştirmesini sağlar, örneğin veri kopyalama, aritmetik işlemler, bellek adreslerine erişim gibi. Assembler dili, genellikle her işlemci mimarisi için farklı olabilir, çünkü komutlar doğrudan işlemcinin komut setine bağlıdır. Assembler programlama, diğer yüksek seviyeli dillerden daha düşük seviyeli bir dil olduğu için, genellikle işlemciye doğrudan erişim gerektiren uygulamalar için kullanılır. Bu, donanım kaynaklarını en iyi ş...