Arm Tabanlı Mikroişlemciler #09 | Cortex-M0 Komutları ve Thumb Kodlaması (Assembly)

ARM Assembly Dili Programlama

Eğitmen: Dr. Süleyman Burak ÇELİK

Çekirdeğe ne yapacağını söyleyen dili öğreniyoruz: komutlar. Beş komutluk bir toplama döngüsünü satır satır izleyerek başlıyor, sonra veri taşıma, işlem, bellek, yığın ve dallanma komutlarını tek tek görüyoruz. Her adres, kaydırma ve bayrak hesabı ekranda adım adım. Bu derste: - Beş komutluk döngü: toplam 5, 9, 12, 14, 15; makine kodları 0x2000, 0x2105, 0x1840, 0x1E49, 0xD1FC - Makine dili ve assembly; hedef ve kaynak işlenenler; assembler - Komut grupları ve 8 bitlik anlık değer (0 … 255) - Veri işleme ve bayraklar: 1 sayısını 5 basamak sola kaydırmak → 32 = 0x20; karşılaştırma komutu - İşaretli ve işaretsiz genişletme: 0xF6 → 246 ya da −10 - Bellek adresleme: taban + kaydırma, yükleme/saklama, hizalama kuralı - Yığın komutları: PUSH {R4, R5, LR} → SP − 12 - Dallanma: koşulsuz ve koşullu; 72 ile 45'in karşılaştırılması - Alt program: bağla ve dallan, LR'yi yığına koymak - Thumb: 16 bitlik komutlar; döngümüz 10 bayt - Üç tuzak Bölümler: 0:00 Geçen Ders ve Bugün 0:20 Beş Komutluk Bir Döngü 0:47 Makine Dili ve Assembly 1:15 Komut Grupları ve Anlık Değer 1:48 Veri İşleme ve Bayraklar 2:22 İşaretli ve İşaretsiz Genişletme 2:55 Bellek Adresleme 3:36 Yığın Komutları 4:01 Dallanma 4:34 Alt Program: Bağla ve Dallan 5:05 Thumb: 16 Bitlik Komutlar 5:35 Üç Tuzak 6:01 Özet ve Sıradaki Ders Sıradaki derste kural dışı durumları ve kesmeleri donanım düzeyinde inceliyoruz: kesme denetleyicisi ve öncelikler. Kaynak kitap: Alexander G. Dean, Embedded Systems Fundamentals with Arm Cortex-M based Microcontrollers, Nucleo-F091RC 2. baskı (Arm Education Media) — Bölüm 4, s. 100–107 (konu sırası ve kavramlar). Örnekler özgündür. Elektrik-Elektronik, Bilgisayar, Mekatronik ve Kontrol Mühendisliği öğrencileri için Arm Tabanlı Mikroişlemciler serisinin dokuzuncu dersi.