For example this code to print the first 10 integers:
int i, sum;
sum = 1;
for (i = 0; i <= 10; i++)
printf("%d\n", i);
exit(0);
can be written as:
int i, sum;
sum = 1;
i = 0;
loop:
i++;
printf("%d\n", i);
if (10 - i != 0) goto loop;
end:
exit(0);
can be translated to
; i in r16
LDI r16, 0 ; i = 0
loop:
LDI r24, 1 ; printf("%d\n", i);
MOV r26, r16
LDI r31, 0x70
LDI r30, 0x00
ICALL
LDI r17, 1
ADD r16, r17 ; i++
LDI r17, 10 ; if (10 - i != 0) goto loop;
SUB r17, r16
BRBC 1, loop
LDI r24, 0 ; exit
LDI r31, 0x70
LDI r30, 0x00
ICALL