Hasta aquí todo bien, creo.
Hay una cosa que no sé si entendí bien;
Cuando hago un "str" (o sus "derivados"), tal que así
.text
.align 2
.thumb
main:
push {r0-r1, lr}
ldr r0, lastresult
ldrh r0, [r0]
ldr r1, varnumber_8000
strh r0, [r1]
...
¿Estoy "guardando" en r1 los datos...