c_handle.c

来自「ADS环境下软中断实现64位整数加法 运行于arm920T」· C语言 代码 · 共 18 行

C
18
字号
void C_SWI_Handler( unsigned int swi_num, unsigned int *regs )
{
    unsigned long long * result = (unsigned long long *)malloc(8);
    unsigned long long resultValue;
    unsigned long long first = regs[1];
    unsigned long long second = regs[3];
    first = (first<<32) + regs[0];
    second = (second<<32)+ regs[2];
    switch( swi_num )
    {
    case    0:
    	resultValue = first+second;	
    	*result = resultValue;	
    	regs[0]=(unsigned int)result;
    break;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?