;下面这段switch代码应该用汇编来写,不过用C语言能更清楚的显示出原理。
;c语言转为汇编,可参考搜索以下关键字自行学习:汇编调用C语言函数。难点可能在于汇编代码要符合编译器的规范,
;例如:第几个实参应放入第几个通用寄存器、从第几个实参开始,要入栈、返回值的传递方法等
;当然,如果你自定义的系统调用不是用C而是直接用汇编子程序来写,那么不必考虑C语言的编译规范了,直接用B、Bx、call等指令跳转就是了
switch(R4)
{
case 0: system_call_read(R0);break;
case 1: system_call_write(R0,R1);break;
case 2: system_call_peek();break;
case 3: system_call_3(R0);break;
case 4: system_call_4(R1);break;
case 5: system_call_5();break;
default:
}