名字不能取太长 2022-09-27 21:48 采纳率: 78%
浏览 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 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助