首页 > 解决方案 > C中的函数jalr

问题描述

你们有谁知道如何在汇编中使用 jalr 指令,以便通过向它传递一个函数的地址,它可以跳转到该函数并执行它?用C语言!如何获取函数的地址以便在 jalr 函数中使用它?

int main(){
...do somethings...
int cb = NULL;
uint32_t data = ...;
cb =function_x;
asm volatile("jalr ra, %[cb]    \n\t" :: [cb] "r"(cb));
...do somethings...
return 0;
}

void function_x(int data){
...do somethings...
}

你认为这就是它的工作原理吗?

标签: cassemblyinline-assemblyriscv

解决方案


推荐阅读