ARM 堆栈寻址类型区分

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
大数据开发治理平台 DataWorks,不限时长
简介: 该文介绍了堆栈的两种指向分类:向上生成型(递增堆栈)和向下生成型(递减堆栈),以及堆栈的两种数据状态:满堆栈(指针指向最后数据)和空堆栈(指针指向存放数据的位置)。满递增和满递减是在完整数据单元上操作,而空递增和空递减则允许自定义步长。文中通过图示说明了不同情况下的堆栈存储方式。

@[toc]

堆栈指向分类

根据堆栈指针的指向的方向不同,可以划分为向上生成型和向下生成型。

向上生成型:

  • 随着数据的入栈,堆栈的指针逐渐增大,称为:递增堆栈。

向下生成型:

  • 随着数据的入栈,堆栈的指针逐渐减小,称为:递减堆栈。

堆栈指向数据分类

根据堆栈指针是否指向数据,可以划分为满堆栈和空堆栈。

满堆栈:

  • 堆栈指针指向最后压入堆栈的有效数据项。

空堆栈:

  • 堆栈指针指向下一个要存放数据的空位置。

满递增与满递减

用于描述寄存器或内存中的值在递增或递减操作时,增加或减少一个完整的数据单元的大小。

数据单元的大小通常由操作系统或架构规定,可以是字节、字、双字等。

满递增是按照完整的数据单元大小增加,不论数据单元的大小是多少,递增时都会增加整个数据单元的大小。

满递减是按照完整的数据单元大小递减,不论数据单元的大小是多少,递减时都会减少整个数据单元的大小。

假设在堆栈中存储 R0R1R2 寄存器的值,按照满递增与满递减存储,如下所示:



先进行递增或者递减,然后再存入数据。

空递增与空递减

同样也是用于描述寄存器或内存中的值在递增或递减操作时,增加或减少一个空间单元的大小。

空间单元的大小可能不是完整的数据单元大小,而是根据指定的步长进行增加或减少。

空递增是按照指定的步长或空间单元大小增加,可以根据需要自定义递增步长。

空递减是按照指定的步长或空间单元大小递减,可以根据需要自定义递减步长。

直接指向存入的数据。

相关文章
|
移动开发 Shell 数据处理
【ARM】常用寻址方式
通常数据处理指令的格式如下所示:<opcode>{<cond>}{S} <Rd>,<Rn>,<shifter_operand>其中:<opcode> 是指令助记符,如ADD表示算术加操作指令。{<cond>} 表示指令执行的条件。{S} 决定指令的操作是否影响CPSR的值。<Rd> 表示目标寄存器。<Rn> 表示包含第1个操作数的寄存器。<shifter_operand> 表示第2个操作数。其有以下三种格式
【各种问题处理】X86架构和ARM架构的区别
【1月更文挑战第13天】【各种问题处理】X86架构和ARM架构的区别
|
1月前
|
数据处理 编译器 数据库
x64 和 arm64 处理器架构的区别
x64 和 arm64 处理器架构的区别
|
1月前
|
弹性计算 编解码 运维
飞天技术沙龙回顾:业务创新新选择,倚天Arm架构深入探讨
阿里云、平头哥与Arm联合举办的飞天技术沙龙在上海举行,聚焦Arm Neoverse核心优势和倚天710计算实例在大数据、视频领域的应用。活动中,专家解读了倚天710的性能提升和成本效益,强调了CIPU云原生基础设施处理器的角色,以及如何通过软件优化实现资源池化和稳定性平衡。实例展示在视频编码和大数据处理上的性能提升分别达到80%和70%的性价比优化。沙龙吸引众多企业代表参与,促进技术交流与实践解决方案的探讨。
飞天技术沙龙回顾:业务创新新选择,倚天Arm架构深入探讨
|
12天前
|
传感器 物联网 数据中心
探索ARM架构及其核心系列应用和优势
ARM架构因其高效、低功耗和灵活的设计,已成为现代电子设备的核心处理器选择。Cortex-A、Cortex-R和Cortex-M系列分别针对高性能计算、实时系统和低功耗嵌入式应用,满足了不同领域的需求。无论是智能手机、嵌入式控制系统,还是物联网设备,ARM架构都以其卓越的性能和灵活性在全球市场中占据了重要地位。
18 1
|
4天前
|
物联网
arm架构和x86架构区别
arm架构和x86架构区别
11 0
|
1月前
|
消息中间件 存储 Apache
MQ产品使用合集之有RocketMQ arm架构的镜像吗
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
222 1