/* debug.s - uso de printf para depurar programas - ate' 3 valores podem ser exibidos numa chamada a printf - eles devem ser colocados nos registradores r1, r2 e r3 - r0 deve ter o endereco da cadeia de formatacao para printf - os registradores r0 a r3 sao destruidos por printf - (e possivelmente outros registradores tambem): - Prof Celio - MC404 2014 */ .syntax unified .text .align 2 .global main main: push {lr} mov r1,10 mov r2,100 mov r3, 0x41 @codigo Ascii da letra 'A' bl debug pop {pc} /**********************************************************************/ debug: push {r0-r4,lr} @ caso seja preciso preservar r0 a r4 ldr r0, =debugmsg bl printf pop {r0-r4,pc} debugmsg: .asciz "%x %d %c\n" @ cadeia de formatacao para printf