-1
私がフォロープログラムを起動しようとしている、プログラミングARMでの多くの経験を持っていない:ARM 32ビットSTR命令
_start:
STMFD SP!, {R11,LR}
ADD R11, SP, #4
SUB SP, SP, #0x18
SUB R12, R11, #24
mov r5, #74 ;index for loop
ldr r3, =data
mov lr, r3
LDMIA LR!, {R0-R3}
STMIA R12!, {R0-R3}
_loop:
str r12,[lr],#4
subs r5,r5,#1
bne _loop
しかし、私はこの命令の後にSIGSEGVを持っている:
str r12,[lr],#4
このメモリのダンプです:
(gdb) x/10x $r12
0xbeb6c944: 0x00000000 0x00000000 0x00000000 0x00000001
0xbeb6c954: 0xbeb6ca79 0x00000000 0xbeb6ca8b 0xbeb6caa3
0xbeb6c964: 0xbeb6cab6 0xbeb6cabd
私はこの問題は、スタックが書き込み可能でないことに起因していると思いますが、なぜこのinstruでSTTIA R12 !, {R0-R3}私は問題ありませんか?
ご迷惑をおかけして申し訳ございません。
シンボル 'データ 'にはどのような価値がありますか? – rjp
データ:.asciz "/ system/bin/curl" http:.asciz "http://website/file.txt" – Livio