名字不能取太长 2022-09-27 21:48 采纳率: 76.7%
浏览 95
已结题

请问如下arm汇编指令翻译成c语言是什么?可以分析一下吗?

以下是一段arm汇编指令,请翻译成c语言,最好能逐条分析一下,感谢!

img

  • 写回答

3条回答 默认 最新

  • weixin_40681229 2022-09-28 09:05
    关注

    //重新修改了一下程序,用指针指向X6+8的这个地址
    //ADDI X9, X6, #8 //定义两个变量,对应X9,X6 X9,X6
    //ADD X10, X6, XZR //定义一个变量,对应X10 X10
    //STUR X10, [X9, #0] //定义一个指针,对应X9内数据指向的地址 *p
    //LDUR X9, [X9, #0]
    //ADD X0, X9, X10 //定义一个变量,对应X0 X0

    //以下是C语言

    //1,定义变量
    int X0,X6,X9,X10; //int视需要可以改成:无符号,8位,16位,32位,64位等--变量名可改成任意需要的名字
    int *p; //定义一个指针,指向 X9中数据的地址

    //2,对应的汇编
    X9 = X6 + 8; //ADDI X9, X6, #8
    X10 = X6 + 0; //ADD X10, X6, XZR +10可以略去
    p = (int *)X9; //[X9, #0]
    *P = X10; //STUR X10, [X9, #0]
    X9 = *p; //LDUR X9, [X9, #0]
    X0 = X9 + X10; //ADD X0, X9, X10

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 9月28日
  • 已采纳回答 9月28日
  • 创建了问题 9月27日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵