AVR mikrokontrollyorlari Garvard arxitekturasiga (dastur va ma'lumotlar har xil manzil maydonlarida joylashgan) va RISC mafkurasiga yaqin buyruq tizimiga ega . AVR protsessoridaro'yxatga olish faylida birlashtirilgan 32 ta umumiy foydalaniladigan 8-bitli registrlar mavjud . "Ideal" RISC-dan farqli o'laroq, registrlar to'liq orgonal emas:
Ba'zi buyruqlar faqat r16… r31 registrlari bilan ishlaydi. Bularga to'g'ridan-to'g'ri operand bilan ishlaydigan buyruqlar kiradi: ANDI / CBR, ORI / SBR, CPI, LDI, LDS (16-bit), STS (16-bit), SUBI, SBCI, shuningdek SER va MULS;
16-bitli qiymatni (ular mavjud bo'lgan modellarda) tezkor operand (ADIW, SBIW) bilan oshirish va kamaytirish bo'yicha ko'rsatmalar faqat r25: r24, r27: r26 (X), r29: r28 (Y) juftlaridan biri bilan ishlaydi. yoki r31: r30 (Z);
Bir juft registrni nusxalash buyrug'i (u mavjud bo'lgan modellarda) faqat toq bilan boshlanadigan qo'shni registrlar bilan ishlaydi (r1: r0, r3: r2,…, r31: r30);
Ko'paytirish natijasi (ko'paytirish moduliga ega bo'lgan modellarda) har doim r1: r0 ga joylashtiriladi. Bundan tashqari, faqat ushbu juftlik o'z-o'zini dasturlash bo'yicha ko'rsatma uchun operandlar sifatida ishlatiladi (agar mavjud bo'lsa);
Ko'paytirish ko'rsatmalarining ba'zi variantlari argument sifatida faqat r16… r23 (FMUL, FMULS, FMULSU, MULSU) oralig'idagi registrlarni qabul qiladi.
Do'stlaringiz bilan baham: |