ARM 汇编语言知识积累

博文参考: 

arm中SP,LR,PC寄存器以及其它所有寄存器以及处理器运行模式介绍

arm平台根据栈进行backtrace的方法-腾讯云开发者社区-腾讯云 (tencent.com)

特殊功能寄存器:

SP: 即 R13,栈指针,

LR:即 R14,链接指针,保存未跳转之前的程序的下一条指令的地址,由 CPU 硬件实现。

PC:R15,程序计数器,保存当前正在取的指令的地址,由于 ARM 是两级流水线,可以理解为正在执行的指令有两条 32 位的指令(2*32 bit  = 8 Byte 的指令长度),即正在执行的指令的地址 +8(字节)。

状态寄存器:

CPSR 和 SPSR,arm 进入异常模式后,SPSR 自动保存进入异常前的 CPSR 的值,以便异常返回后恢复异常发生时的工作状态。

 LDR:Load 读内存

STR:Store 写内存

ADD:加法

SUB:减法

CMP:比较

B:直接跳转

BL:跳转和 Link,将返回地址保存到 LR 寄存器再跳转

汇编对比理解视频:

[3-2-2]_ARM架构简明教程_汇编实例_哔哩哔哩_bilibili

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/268198.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

DataProcess-VOC数据图像和标签一起进行Resize

VOC数据图像和标签一起进行Resize 参加检测比赛的时候,很多时候工业原始数据尺度都比较大,如果对数据不提前进行处理,会导致数据在加载进内存时花费大量的时间,所以在执行训练程序之前需要将图像提前进行预处理。对于目标检测的数…

基于SpringBoot + Vue的图书管理系统

功能概述 该图书管理系统提供了一系列功能,包括图书管理、图书类型管理、读者借阅归还图书、用户管理和重置密码等。 在图书管理功能中,管理员可以方便地进行图书信息的管理。他们可以添加新的图书记录,包括书名、作者、出版社、ISBN等信息&a…

DC-9靶机

目录 DC-9靶场链接: 首先进行主机发现: sqlmap注入: 文件包含: 端口敲门规则: hydra爆破: root提权: 方法一/etc/passwd: ​编辑 方法二定时任务crontab: DC-9靶…

Zookeeper入门

ZooKeeper 是一个开源的分布式协调架,主要用来解决分布式集群中应用系统的一致性问题 本质 分布式的文件存储系统(Zookeeper文件系统监听机制),是一个基于观察者模式设计的分布式服务管理框架 zookeeper的数据结构 Zookeeper的层次模型称作Data Tree,…

Kubectl 部署有状态应用(下)

接上文 《Kubectl 部署有状态应用(上)》创建完StatefulSet后,本文继续介绍StatefulSet 扩展、更新、删除等内容。 StatefulSet 中的 Pod 验证序数索引和稳定的网络身份 StatefulSet 中的 Pod 具有唯一的序数索引和稳定的网络身份。 查看 …

外贸多语言电商系统的运作流程

外贸多语言电商系统的运作流程通常包括以下几个步骤: 1. 网站搭建和设计:首先需要搭建一个多语言电商网站,可以选择现有的电商平台或自行开发。网站设计应考虑不同语言和文化背景的用户需求,包括界面布局、导航结构、语言切换等。…

TLS 1.2详解

TSL由多个协议组成的两层协议集合,工作与应用层和传输层之间。 TLS协议包含两层协议:记录层协议(TLS Record Protocol协议)和 握手协议(TLS Handshake Protocol协议),底层采用可靠传输协议&…

SpringMVC之跨域请求

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 SpringMVC之跨域请求 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、什么是同源策略…

Report Design

ERP_ENT_STD-CSDN博客

接口测试的持续集成的工具(git代码管理工具,jenkins持续集成)

持续集成的概念:大白话就是持续的做一件事情,使其使用起来更加流畅;结合测试来讲就是说用工具管理好代码的同时,使代码运行的更加自动以及智能;提升测试效率。 ⽹址:https://git-scm.com/downloads 长这个…

CnosDB如何确保多步操作的最终一致性?

背景 在时序数据库中,资源的操作是一个复杂且关键的任务。这些操作通常涉及到多个步骤,每个步骤都可能会失败,导致资源处于不一致的状态。例如,一个用户可能想要在CnosDB集群中删除一个租户,这个操作可能需要删除租户…

网络传输介质简介

通信网络除了包含通信设备本身之外,还包含连接这些设备的传输介质,如同轴电缆、双绞线和光纤等。不同的传输介质具有不同的特性,这些特性直接影响到通信的诸多方面,如线路编码方式、传输速度和传输距离等。 简单网络 两个终端&am…

直排轮滑教程6

直道滑行摆臂练习 1,下面来学练摆臂技术动作。直道滑行摆臂练习。 2,主要有两点作用,第一点,增加蹬地力量。第二点,协助身体平衡。 3,要想摆好臂,首先肩关节放松,摆的就自然了。肘…

mac传输文件到windows

前言 由于mac系统与windows系统文件格式不同,通过U盘进行文件拷贝时,导致无法拷贝。官方解决方案如下,但是描述的比较模糊。看我的操作步骤即可。 https://support.apple.com/zh-cn/guide/mac-help/mchlp1657/12.0/mac/12.6 前提条件 mac与…

MySQL数据库增删改查

常用的数据类型: int:整数类型,无符号的范围【0,2^32-1】,有符号【-2^31,2^31-1】 float:单精度浮点,4字节64位 double:双精度浮点,8字节64位 char:固定长…

AIGC:大语言模型LLM的幻觉问题

引言 在使用ChatGPT或者其他大模型时,我们经常会遇到模型答非所问、知识错误、甚至自相矛盾的问题。 虽然大语言模型(LLMs)在各种下游任务中展示出了卓越的能力,在多个领域有广泛应用,但存在着幻觉的问题&#xff1a…

Qt designer界面和所有组件功能的详细介绍(全!!!)

PyQt5和Qt designer的详细安装教程:https://blog.csdn.net/qq_43811536/article/details/135185233?spm1001.2014.3001.5501 目录 1. 界面介绍2. Widget Box 常用组件2.1 Layouts(布局)2.2 Spacers(间隔器)2.3 Item V…

web架构师编辑器内容-使用html2canvas获取截图,并处理一些问题

html2canvas-api 为了使用html2canvas完成截图的功能&#xff0c;我们首先先使用一个按钮来测试一下html2canvas的截图功能。 首先在页面上创建一个img标签 <img id"test-image" :style"{ width: 300px}"/>创建一个button按钮&#xff0c;添加点击…

Linux:jumpserver V3的安装与升级(在线离线)(2)

官方文档写的非常详细&#xff0c;我这篇文章时间长了&#xff0c;会随着官方版本更新而落后 JumpServer - 开源堡垒机 - 官网https://www.jumpserver.org/安装和升级在官网也有详细的信息&#xff0c;我写本章是为了记录一下实验 我的系统是centos7.9 在线安装 在确定我们可…

JoySSL诚招SSL证书代理

不久前&#xff0c;阿里云宣布了一个让人稍感唏嘘的消息——它们的一年期免费SSL证书服务将停步&#xff0c;转而提供三个月期限的证书。这一变化&#xff0c;无疑会使得网站开发的公司在维持用户信任和网站安全上多出心思。然而&#xff0c;免费的午餐并没有彻底消失&#xff…