当前位置: 首页 > news >正文

Arm LDM和STM的寻址方式

A32指令集中包含多数据传输指令LDM和STM,也就是单条指令可以传输多个寄存器的值与内存交互,这对于数据块传输以及寄存器的压入栈很有帮助。LDM和STM指令可分别用于实现堆栈的pop和push操作。对于堆栈操作,基寄存器通常是堆栈指针(SP)。

LDM和STM可以与几种类型的堆栈后缀一起使用,形成不同的寻址模式。

  • Descending:堆栈向下增长,从一个高地址开始,并进展到一个较低的地址(降序堆栈);
  • Ascending:堆栈向上增长,从一个低地址开始,并进展到一个较高的地址(升序堆栈);
  • Full:堆栈指针指向堆栈中非空的最后一项(一个非空堆栈) ;
  • Empty:堆栈指向堆栈中的下一个可用空间(一个空堆栈);

为了方便程序员,可以使用面向堆栈的后缀来代替自增或自减。下表展示了面向堆栈的后缀及其等效的寻址模式后缀:

下图为FD/ED/FA/EA模式的示意。

下表列出了LDM和STM带有堆栈后缀的指令:

下表列出了不同寻址模式如何计算指令地址。

http://www.lryc.cn/news/280411.html

相关文章:

  • 网络技术基础入门全套实验-厦门微思网络CCNA实验手册
  • 【已解决】C语言实现多线程检索数据
  • 用LM Studio:2分钟在本地免费部署大语言模型,替代ChatGPT
  • C语言经典算法之直接排序算法
  • 前端开发vscode 常用插件记录
  • 基于JavaWeb+BS架构+SpringBoot+Vue基于web的多媒体素材管理系统的设计和实现
  • 常用的dom操作
  • Hotspot源码解析-第十七章-虚拟机万物创建(三)
  • Spring MVC 的RequestMapping注解
  • navicat for oracle
  • 行业分享----dbaplus174期:美团基于Orchestrator的MySQL高可用实践
  • springboot集成钉钉通知
  • 直播预告丨看零售场,如何玩转 MaaS
  • 高创新!EI论文复现+改进:聚合温度调控策略的综合能源系统/微电网/虚拟电厂多目标优化调度程序代码!
  • 详解Matlab深度学习进行波形分割
  • 如何在Windows 10/11的防火墙中禁止和允许某个应用程序,这里提供详细步骤
  • vivado 添加现有IP文件、生成IP
  • C++右值引用,右值引用与const引用的区别
  • 启英泰伦推出「离线自然说」,离线语音交互随意说,不需记忆词条
  • Vulnhub-DC1
  • 【c++笔记】总结!c++与c语言的不同之处
  • 大模型PEFT技术原理(一):BitFit、Prefix Tuning、Prompt Tuning
  • VMware vSphere运维管理手册
  • 学习笔记-mysql-各种函数的基本使用
  • DD小桔高级数分 2面挂
  • 居中面试问题
  • 网页设计-用户体验
  • docker应用:vocechat
  • linux 02 vmware的快照,文件管理
  • 项目架构之Zabbix部署