zoukankan      html  css  js  c++  java
  • (转)GNU风格ARM汇编语法指南(非常详细)1

    原文地址:http://zqwt.012.blog.163.com/blog/static/120446842010111481551809/

    汇编源程序一般用于系统最基本的初始化:初始化堆栈指针、设置页表、操作 ARM的协处理器等。这些初始化工作完成后就可以跳转到C代码main函数中执行。

    1、GNU汇编语言语句格式

    任何Linux汇编行都是如下结构:[<label>:][<instruction or directive or pseudo-instruction>} @comment

    • instruction为指令

    • directive为伪操作

    • pseudo-instruction为伪指令

    • <label>: 为标号,GNU汇编中,任何以冒号结尾的标识符都被认为是一个标号,而不一定非要在一行的开始。

    • comment为语句的注释

    下面定义一个"add"的函数,最终返回两个参数的和:

    .section .text, “x”
    .global add				@ give the symbol “add” external linkage
    add:
        ADD r0, r0, r1		@ add input arguments
        MOV pc, lr			@ return from subroutine
    @ end of program

     

    注意

    • ARM指令,伪指令,伪操作,寄存器名可以全部为大写字母,也可全部为小写字母,但不可大小写混用。

    • 如果语句太长,可以将一条语句分几行来书写,在行末用“”表示换行(即下一行与本行为同一语句)。“”后不能有任何字符,包含空格和制表符(Tab)。

  • 相关阅读:
    h5 与原生 app 交互的原理
    软件公司各种角色透视图
    软件公司各种角色透视图
    软件公司各种角色透视图
    3大原则让你的编程之路越走越顺
    LeetCode[39]: 组合总和
    20190826
    Oracle介绍
    Welcome to Giyber Blog
    清醒
  • 原文地址:https://www.cnblogs.com/sheshiji/p/3623469.html
Copyright © 2011-2022 走看看