Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 9 лет назад пользователемВиктория Княжевич
1 AVR Classic MK-lərinin əmrlər sistemi
2 Mövzuda nəzərdən keçirilən əsas məsələlər AVR Classic MK-lərin əmrlər sisteminin əsas xüsusiyyətləri: Əmrlərin tipləri Əmr kodlarının uzunluğu Əmrlərdə verilənlərin ünvanlaşdırılma üsulları PC registri nədir və onun məzmunu necə dəyişdirilə bilər ? Məntiqi və hesabi əmrlərin daxili strukturu Bit və bayt üzərində əməliyyatlar üçün əmrlərin daxili strukturu Proqramın idarəsi əmrləri–JUMP Proqramın idarəsi əmrləri– CALL,RETURN,TEST-SKIP Birbaşa ünvanlaşma üsulunun 1 və2-ünvanlı əmrlərdə tətbiqi
3 AVR Classic MK-lərin əmrlər sisteminin əsas xüsusiyyətləri AVR Classic MK-lərin əmrlər sistemi 118 ədəd müxtəlif əmrlərdən ibarət olub aşağıdakı qruplara bölünür: Məntiqi,hesabi əməliyyatlar, bit və bayt üzərində əməliyyatlar, Proqramın idarəsi və sistemli idarəetmə əməliyyatlar. AVR əmrlərinin əksəriyyəti daxili strukturu 16 bitlidir və 1 ədəd proqram oyuğunda saxlanıla bilir Bəzi AVR əmrlərinin daxili strukturu 32 bitli olduğundan yadda saxlanılması üçün 2 ədəd proqram oyuğunu tələb edir
4 AVR Classic MK-lərin əmrlərində istifadə edilən ünvanlaşma üsulları və proqramın idarəsi Əmrlərdə 2 tip ünvanlaşma üsulu istifadə edilir :birbaşa və dolayı birbaşa ünvan kimi GPR-lər,IO registrləri,yaxud birbaşa RAM ünvanı əmrlərdə göstərilir dolayı ünvan kimi 16 bitli X,Y,Z registrləri göstərilir PC(Program Counter) icra edilən proqramda cari əmrin ünvanını göstərdiyindən,adətən sayğac rejimində işləyir Lakin PC-nin məzmunu proqramın idarəsi əmrləri vasitəsi də yenidən təyin edilə bilər proqramın idarəsi əmrləri kimi JUMP,CALL,RETURN,TEST- SKIP istifadə edilir JUMP əmrinin şərtsiz və şərti tipləri vardır
5 Məntiqi və hesabi əmrlərin daxili strukturu Məntiqi əmrlər Icra edilmə müddəti =1 ƏD (Əmr dövrü) COPOprn1Oprn2 GPR AND OR EOR COM NEG AND İ ORİ Əmrlərin daxili struktur ibarətdir: COP-əməliyyat kodu, Oprn-operandlar ünvanı misal: AND Rd,Rr; ANDİ Rd,K; EOR Rd,Rr;COM Rd; CLR Rd; SER Rd; TST Rd;SWAP Rd. Flags:Z,N,V-overflow,C,H-half carry bayraqları bu əməliyyatlardan sonra avtomatik dəyişdirilə bilər Rd,Rrtəyinat və mənbəni göstərən GPR-lər; K-bilavasitə operand. ANDI- bilavasitə AND; COM- tamamlayıcı kodun alınması ; CLR- registri sıfırlama;SER-set registri 1 etmə;TST- registrin 0/mənfi olmasını yoxlamaq; olzero/negative, SWAP-registrdə tetradalaın yerini dəyişmə Hesabi əmrlər 8 bitli 16 bitli COP R / d (R / d) / K COP (R / d) pair K SBIW ADD ADC SUBI SUB DEC ASR ADIW misal:ADD Rd,Rr; SUB Rd,Rr; DEC Rd; ASR Rd; INC Rd; ADİW Rd,K;Rd=R24/26/28/30; ADIW R24,63; R25:R24 =R25:R SBIW Rd,K;SBIW R27:R28,56; R27:R26=R27;R26 +56; Flags:Z,N,V,C,H.S bayraqları bu əməliyyatlardan sonra avtomatik dəyişə bilər; ASR –sağasürüşmə ; ADİW –registrlər cütü və bilavasitə operandın toplanması SBIW-registrlər cütündən bilavasitə operandın çıxılması Icra müddəti =1 ƏDIcra müddəti =2 ƏD
6 Bitlər və bayt üzərində əməliyyatlar Bayt üzərində əməliyyat misale : MOVRd,Rr-dən Rr Rd-ə ötür; IN Rd,A -İO registri A-dan Rd-ə daxil et; Push Rr- Rr reg-dən stekə yüklə Pup Rd- stekdən çıxarıb Rd-ə yüklə; LD Rd,X- dolayı X ünvanı üzrə RAM-dan Rd-ə yüklə ;LDI Rd,Kbilavasitə K operandını Rd-ə yüklə ;LDS Rd,K-K ünvanlı RAM-dən Rd-ə yüklə; ST X,Rr -Rd-nin məzmununu dolayı X ünvanı üzrə RAM-da saxla; COP Oprn1Oprn2 LDI MOV LD ST IN OUT PUP PUSH GPR I/O GPR / İO reg./ RAM GPRRAM Bitlər üzərində əməliyyat Misal : CBR Rd,K--Rd.K=0; SBR Rd,K-- Rd.K=1; CBİ A, b -- A.K=0 ; SBİ A,b; BCLR sSREG.s=0; BSET s; BLD Rd,b(SREG-dən yüklə) Rd.b=SREG.b; BST Rr,b SREG.b=Rr.b; CLC(carry) SREG.C=0;CLN SREG.N=0;SEZSREG.Z=1; CBR-registrdə bitin sıfırlanması, SBR-registrdə bitin 1 edilməsi, CBI/SBI- İO registrində biti 0/1 et BCLR/ BSET –SREG registrindəbiti 0/1 et BLD- SREG-dən bitin yüklənməsi BST- biti SREG-də saxla CLC/CLN- SREG reg-də C/N bitini sıfırla SEZ- SREG reg-də Z bitini 1 et Flags(s bit):SREG reg-də Z,N,V,C,İ, bayraqları bu əməliyyatlardan sonra dəyişə bilər GPR / IO reg. b(k) COP Icra müddəti =1 ƏD CBR SBR CBI SBI BCLR BSET BLD BST CLC CLN SEZ Icra müddəti =1-3 ƏD
7 Proqramın idarəsi əmrləri -JUMP JUMP Şərti BRBC s,k Jump to k if SREG.s=0 BRCS k Jump to k if SREG.c=1 BRVS k Jump to k if SREG.v=1 Followinng branches are maked dependent on flags in SREG status register Şərtsiz Jump to (PC) Program FLASH bit Dolayı İ JMP COP Index reg Z Z example: İ JMP PC COP 0ffset K + 1 Program FLASH bit PC COP 0ffset K + 1 Nisbi RJMP Offsset K-offsset address of RAM instruction address is defined as summer of incremented PC and K Index regZ-defines indirect address of RAM instruction address is defined as content of Z register
8 Proqramın idarəsi əmrləri– CALL,RETURN,TEST-SKIP Stekdən PC-ə ötür RETURN RET İRET Makes SREG.İ=1 TEST-SKIP CPSE Rd,Rr-compare for equal and make SKIP SKIP if Rd=Rr SBRC Rr,b Make SKIP if Rr.b=0 SBİC A,b Make SKIP if A.b=0 A -IO register SBİS A,b Make SKIP if A.b=1 PC-nin Stekə ötür CALL Nisbi RCALL PC=PC+/-K Dolayı İCALL PC=(İndex reg.Z) ICALL RCALL k Sistemli idarə NOP WDR- makes WDT off SLEEP
9 1 və 2 ədəd GPR lə birbaşa ünvanlaşdırma example: Push Rr-load to Stack from Rr reg ; Pup Rd- load into Rd from Stack ; İNC Rd; DEC Rd 1 ünvanlı əmrlərdə 1 GPR birbaşa verilir R0-R31 registerlər COP Rd Reg.file... R0 R ünvanlı əmrlərdə 2 GPR birbaşa verilir R0-R31 registerlər COP rd R0 R31... Reg.file 2 GPR directly are indicated in MOV,ADD,SUB
10 GPR,I/O və birbaşa RAMünvanı göstərilməklə birbaşa ünvanlaşdırma FFFFH In 2 address instructions GPR and direct RAM address COP r/d 16 bit offset addr Reg.file... R0 R31 RAM H example: LDS Rd,K; STS K,Rr K-16bits direct address of RAM Reg.file... R0 R31 İ/O reg example İN Rd,A; OUT A,Rr 0 In 2 addresses instruction GPR və İ/O reg. direct COP r/dp 15 0
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.