c - 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...
}
你认为这就是它的工作原理吗?
解决方案
推荐阅读
- android - 拼写检查框架不返回建议
- meteor - Meteor 服务器被淹没
- file - Pascal 文件:如何从文件中找到整数的 MAX 和 MIN 出现次数?
- javascript - 为什么我们应该在 switch 条件下解析 value 而不是在 if 条件下?
- database - Laravel 不会从数据库中检索双精度值
- excel - 执行 OnKey 代码时停止显示保存对话框 SendKeys“{f2}”的问题
- javascript - 用于分页和搜索实时数据的数据表?
- angular - this.loggedIn 几秒后才设置为true,如何等待它的值
- php - 如何选择多个表将mysql转换为json?
- ios - UINavigationBar 背景颜色不显示为纯色