对于 ARM 架构,我们使用指令进行系统调用。SVC
我的参考是以下ARM 的什么是半主机?. 特别是,选择任何版本,选择 Arm Compiler Toolchain Developing Software ...,然后选择 Semihosting,以查看可用的系统调用号。
想要定义一个保留in 寄存器的getChar()
例程。根据文档,调用时必须为 0,退出后包含读取的字符。因此有人认为,char
r0
r1
r0
mov r1,#0
mov r0,#7
svc 123456
应该是必不可少的成分。但是,程序不等待输入。我也可以肯定地说,寄存器r0
在退出后总是包含值 0。有什么想法吗?我怀疑问题在于理解控制台在文档中的含义。