Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define __AVR_ATtiny2313__
- #include <avr/io.h>
- int Mat[2][2]={{18,33},
- {78,129}};
- int main(void){
- int sum =0;
- while("uno")
- sum = Mat[0][0] + Mat[0][1];
- return 0;
- }
- .file "matrizG.cpp"
- __SP_H__ = 0x3e
- __SP_L__ = 0x3d
- __SREG__ = 0x3f
- __tmp_reg__ = 0 // registro r0, convencion de almacenamiento temporal
- __zero_reg__ = 1 // registro r1 siempre es cero
- .global Mat
- .data
- .type Mat, @object
- .size Mat, 8
- Mat:
- .word 18
- .word 33
- .word 78
- .word 129
- .text
- .global main
- .type main, @function
- main:
- push r28 ;
- push r29 ;
- ; SP -= 2 ;
- rcall .
- in r28,__SP_L__ ;
- in r29,__SP_H__ ;
- /* prologue: function */
- /* frame size = 2 */
- /* stack size = 4 */
- .L__stack_usage = 4
- std Y+2,__zero_reg__ ; sum, // sum va a al Pila
- std Y+1,__zero_reg__ ; sum, // r1 = 0 y push 0 en Pila, (sum = 0)
- .L2:
- lds r18,Mat ; D.1988, Mat // usa direccion Mat
- lds r19,Mat+1 ; D.1988, Mat // toma Mat[0][0]
- lds r24,Mat+2 ; D.1988, Mat // toma MAt[0][1]
- lds r25,Mat+2+1 ; D.1988, Mat
- add r24,r18 ; tmp45, D.1988 // los suma
- adc r25,r19 ; , D.1988 // con carry si lo hay
- std Y+2,r25 ; sum, tmp45 // copia la suma en sum
- std Y+1,r24 ; sum, tmp45
- rjmp .L2 ; // ciclo sin fin
- .size main, .-main
- .ident "GCC: (GNU) 4.8.2"
- .global __do_copy_data // linker asigna direccion de Mat
- // e indica copiar datos a RAM en esa dirección
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement