__asm__ __volatile__
(
"mov r1, %[str] \t\n"
"eor r2, r2, r2 \t\n"
"loop: \t\n"
"ldrb r3, [r1], #1 \t\n"
"cmp r3, #0 \t\n"
"addne r2, #1 \t\n"
"bne loop \t\n"
"mov r0, #1 \t\n"
"mov r1, %[str] \t\n"
"swi #0x900004 \t\n"
:
:[str]"r"("hello, world")
:"r0", "r1", "r2", "r3"
);
arm32 asm write to stdout
最新推荐文章于 2021-04-28 17:40:41 发布