Die Assembler Zeile befinden sich im .lst DateiOder, wie kann man sich mit AvrStudio genau eine bestimmte C-Zeile im Assembler ansehen, um obiges Beispiel zu untersuchen?
Hier ein Beispiel von einem assembler listing bein Interrupt Anfang und Interrupt Ende.
Welche Register Pushed/Popped sind ist abhangig vom Program. (In diesem fall sind es etwas viele)
Code:SIG_OVERFLOW interrupt Anfang. 375 0176 1F92 push __zero_reg__ 376 0178 0F92 push __tmp_reg__ 377 017a 0FB6 in __tmp_reg__,__SREG__ 378 017c 0F92 push __tmp_reg__ 379 017e 1124 clr __zero_reg__ 380 0180 FF92 push r15 381 0182 0F93 push r16 382 0184 1F93 push r17 383 0186 2F93 push r18 384 0188 3F93 push r19 385 018a 4F93 push r20 386 018c 5F93 push r21 387 018e 6F93 push r22 388 0190 7F93 push r23 389 0192 8F93 push r24 390 0194 9F93 push r25 391 0196 AF93 push r26 392 0198 BF93 push r27 393 019a CF93 push r28 394 019c EF93 push r30 395 019e FF93 push r31 wirkliche interrupt function befinded sich hier SIG_OVERFLOW interrupt Ende. 671 030c FF91 pop r31 672 030e EF91 pop r30 673 0310 CF91 pop r28 674 0312 BF91 pop r27 675 0314 AF91 pop r26 676 0316 9F91 pop r25 677 0318 8F91 pop r24 678 031a 7F91 pop r23 679 031c 6F91 pop r22 680 031e 5F91 pop r21 681 0320 4F91 pop r20 682 0322 3F91 pop r19 683 0324 2F91 pop r18 684 0326 1F91 pop r17 685 0328 0F91 pop r16 686 032a FF90 pop r15 687 032c 0F90 pop __tmp_reg__ 688 032e 0FBE out __SREG__,__tmp_reg__ 689 0330 0F90 pop __tmp_reg__ 690 0332 1F90 pop __zero_reg__ 691 0334 1895 reti







Zitieren

Lesezeichen