zoukankan      html  css  js  c++  java
  • ARM基础知识

    ARM处理器模式:

    模式可以理解为 工作环境。

    异常模式:SVC管理模式、 FIQ 快速中断模式 、 IRQ中断模式、Abort中止、Undef 未定义模式;

    正常模式:System系统模式、 User 用户模式

    1-6 模式称为特权模式,7为非特权模式。

    PC机里面有一个运行级别的概念。

    某些程序运行在这个模式下,另一些程序在另一个模式下。

    ARM状态:

    执行arm指令。Pc值字对齐(32位)代码量变小。

    Thumb状态:

    执行thumb指令。Pc值半字对齐(16位)。

    ARM处理器有37个32位长的寄存器。

    通用寄存器:

    参与运算,保存运算结果。(凡是运算涉及到的寄存器都是通用寄存器)

    Add r0, r1,r2 (r1+r2 = r0)

    R0~R15 在用户模式与系统模式下

    R13 :堆栈指针寄存器 stack poiter 堆栈指针。(sp)

    R14:链接寄存器(记录上一次记录的位置)

    R15:程序计数器pc,永远指向取值的的指令地址。

    代码区 、 数据区、 bss段。

    内存里面一般不能没有栈。栈的位置与代码放入内存的顺序相反。

    把2、3、5等的地址放入其地址。

    状态寄存器:

    通用寄存器:

    Usr/sys :

    Ro – R15

    Irq:

    状态寄存器:

    Cpsr current program state register。当前程序状态寄存器。

    以上总结下,总共37个寄存器。

    汇编代码:

    伪指令+指令

    数据传送指令:MOV + 立即数、寄存器、寄存器移位

    比较指令:CMP 15种条件。

    (logic shift right 逻辑右移R4位)

  • 相关阅读:
    Linux 文件系统相关的基本概念
    Logstash : 从 SQL Server 读取数据
    Windows 下配置 Logstash 为后台服务
    通过 Filebeat 收集 ubuntu 系统日志
    Logstash Multiple Pipelines
    零基础学编程
    2017年计划
    2016年的年终总结
    订阅《通往财富自由之路》3个月后,我做出了哪些改变
    2016年第20本:社交红利2.0
  • 原文地址:https://www.cnblogs.com/zhuxuekui/p/4440419.html
Copyright © 2011-2022 走看看