[ARM-assembly]-A64指令集合总结
★★★个人博客导读首页—点击此处 ★★★
A64指令集合总结
- 1、Instructions that move System or Special-purpose registers to or from a general-purpose register
- 2、Floating-point moves between a SIMD&FP register and a general-purpose register
- 3、SIMD moves between a SIMD&FP register and a general-purpose register
- 4、Barriers
- 5、Memory access instructions at various access sizes
- 6、Move immediate to general-purpose register
- 7、System instructions, Send Event, NOP, and Clear Exclusive
- 8、Memory Tagging Extension Instructions(ARMv8.5-MemTag)
- 9、Exception-generating instructions
- 10、Instructions that explicitly write to the PC (branches)
- 11、Exception return and related instructions
- 12、Instructions that request entry to a low-power state
- 13、Instructions that read the PC
- 14、Instructions that explicitly modify PSTATE, other than DCPS and DRPS
- 15、Instructions that read PSTATE.{N, Z, C, V} or other PSTATE fields
★★★ 友情链接 : 个人博客导读首页—点击此处 ★★★
1、Instructions that move System or Special-purpose registers to or from a general-purpose register
MRS MSR
2、Floating-point moves between a SIMD&FP register and a general-purpose register
• FMOV (between a general-purpose register and a half-precision register).
• FMOV (between a general-purpose register and a single-precision register).
• FMOV (between a general-purpose register and a double-precision register).
• FMOV (between a general-purpose register and a SIMD element).
3、SIMD moves between a SIMD&FP register and a general-purpose register
• INS (from a general-purpose register to a SIMD element).
• UMOV (from a SIMD element to a general-purpose register).
4、Barriers
• DMB.
• DSB.
• ESB, when the RAS Extension is implemented.
• ISB.
• PSB, when the Statistical Profiling Extension is implemented.
• SB, when ARMv8.0-SB is implemented.
5、Memory access instructions at various access sizes
• LDR, LDRB, LDRH, LDRSB, LDRSH, LDRSW (immediate, not literal).
• LDUR, LDURB, LDURH, LDURSB, LDURSH, LDURSW (immediate).
• LDTR, LDTRB, LDTRH, LDTRSB, LDTRSH, LDTRSW (immediate).
• LDAR, LDARB, LDARH, LDXR, LDXRB, LDXRH, LDAXR, LDAXRB, LDAXRH.
• LDXP, LDAXP.
• STR, STRB, STRH (immediate)
• STUR, STURB, STURH (immediate).
• STTR,STTRB, STTRH (immediate).
• STLR, STLRB, STLRH, STXR, STXRB, STXRH, STLXR, STLXRB, STLXRH.
• STXP, STLXP.
• LDLAR, LDLARB, LDLARH - Armv8.1 instructions.
• STLLR, STLLRBB, STLLRH - Armv8.1 instructions.
• CAS, CASB, CASH, CASP - Armv8.1 instructions.
• SWP, SWPB, SWPH - Armv8.1 instructions.
• LDADD, LDADDB, LDADDH - Armv8.1 instructions.
• LDCLR, LDCLB, LDCLRH - Armv8.1 instructions.
• LDEOR, LDEORB, LDEORH - Armv8.1 instructions.
• LDSET, LDSETB, LDSETH - Armv8.1 instructions.
• LDSMAX, LDSMAXB, LDSMAXH - Armv8.1 instructions.
• LDSMIN, LDSMINB, LDSMINH - Armv8.1 instructions.
• LDUMAX, LDUMAXB, LDUMAXH - Armv8.1 instructions.
• LDUMIN, LDUMINB, LDUMINH - Armv8.1 instructions.
• STADD, STADDB, STADDH - Armv8.1 instructions.
• STCLR, STCLB, STCLRH - Armv8.1 instructions.
• STEOR, STEORB, STEORH - Armv8.1 instructions.
• STSET, STSETB, STSETH - Armv8.1 instructions.
• STSMAX, STSMAXB, STSMAXH - Armv8.1 instructions.
• STSMIN, STSMINB, STSMINH - Armv8.1 instructions.
• STUMAX, STUMAXB, STUMAXH - Armv8.1 instructions.
• STUMIN, STUMINB, STUMINH - Armv8.1 instructions.
• LDAPR, LDAPRB, LDAPRH - Armv8.3 instructions.
• LDAPURH, LDAPURSH, LDAPUR, LDAPURSW, LDAPURSB, LDAPURB - Armv8.4 instructions.
• STLUR, STLURH, STLURB - Armv8.4 instructions.
6、Move immediate to general-purpose register
• MOVZ, MOVN, MOVK (immediate).
• MOV (between a general-purpose register and the stack pointer)
7、System instructions, Send Event, NOP, and Clear Exclusive
• IC.
• DC.
• TLBI.
• AT.
• SEV, SEVL.
• NOP.
• CLREX.
8、Memory Tagging Extension Instructions(ARMv8.5-MemTag)
• ADDG <Xd|SP>, <Xn|SP>, #, #
• SUBG <Xd|SP>, <Xn|SP>, #, #
• STG , [<Xn|SP>{, #}], signed offset.
• STZG , [<Xn|SP>{, #}], signed offset.
• ST2G , [<Xn|SP>{, #}], signed offset.
• STZ2G , [<Xn|SP>{, #}], signed offset.
• LDG , [<Xn|SP>{, #}]
• LDGM , [<Xn|SP>]
• STGM , [<Xn|SP>]
• STZGM , [<Xn|SP>]
• STGP , , [<Xn|SP>{, #}]
9、Exception-generating instructions
• SVC.
• HVC.
• SMC.
• BRK.
• HLT.
10、Instructions that explicitly write to the PC (branches)
B, B.cond, BL, BLR, BR, CBZ, CBNZ, RET, TBZ, TBNZ
11、Exception return and related instructions
• ERET.
12、Instructions that request entry to a low-power state
• WFE, WFI.
13、Instructions that read the PC
• LDR (literal), LDRSW (literal).
• ADR, ADRP.
• PRFM (literal).
14、Instructions that explicitly modify PSTATE, other than DCPS and DRPS
• ADDS, SUBS, ADCS, SBCS, ANDS, BICS, CCMN, CCMP.
• FCMP, FCMPE, FCCMP, FCCMPE.
• MSR DAIFSet (immediate), MSR DAIFClr (immediate), MSR SPSel (immediate).
• MSR NZCV (register), MSR DAIF (register), MSR SPSel (register).
15、Instructions that read PSTATE.{N, Z, C, V} or other PSTATE fields
• CSEL, CSINC, CSINV, CSNEG, CCMN, CCMP, FCSEL, FCCMP, FCCMPE.
• ADC, ADCS,SBC, SBCS.
• CFINV.
• MRS NZCV, MRS DAIF, MRS SPSel, MRS CurrentEL.
[ARM-assembly]-A64指令集合总结相关推荐
- ARM assembly instruction set 汇总(一)
ARM Core指令现在越来越强大,同时又因此能耗低,现在越来越广泛地应用于移动设备中.随着3G时代的到来,各种移动终端设备中都有多媒体功能,而且是功能越多且性能越优.很多smartphone上都能播 ...
- 汇编语言0x2c,ARM汇编语言(4) 指令、伪操作、伪指令学习
LDR指令与LDR伪指令的4种形式: LDR R0,[R1]:指令,将R1指向的内存地址存放的内容加载到R0中: LDR R0,LABEL:指令,将标号LABEL所代表的内存地址处存放的内容加载到R0 ...
- 【ARM】协处理器指令
00. 目录 文章目录 00. 目录 01. 协处理器指令概述 02. ARM寄存器到协处理器寄存器的数据传送指令MCR 2.1 指令编码格式 2.2 指令的语法格式 2.3 指令举例 2.4 指令的 ...
- Git简单基本操作指令集合
Git简单基本操作指令集合 常用置顶 新添加到暂存区中文件前面有绿色的 A 标记 (这是精简的方式查询出来的状态 git status -s), 非精简方式查询出来的是 文件名全绿色的 修改过的.没有 ...
- arm中clz指令_JavaScript中带有示例的Math.clz32()方法
arm中clz指令 JavaScript | Math.clz32()方法 (JavaScript | Math.clz32() Method) Math.clz32() is a function ...
- 大数据学习笔记之一:Hadoop 常用指令集合与启动注意项
常用指令集合: 0. 配置 Hadoop 的 PATH 变量: vim ~/.bashrc export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/had ...
- 【干货来袭】arm程序汇编指令总结,让你更高效的学习!
现在学嵌入式的人也是越来越多了,那当然arm程序也是必须要学的,在这里有很多人对arm程序汇编指令都或多或少的不了解,可以说不熟悉,今天就以arm程序来看,让你对arm程序汇编指令有更深入的学习. 首 ...
- ARM开发基础--指令,异常源及处理过程
本文主要面向初次接触ARM的初学者,主要做基础知识的讲解与科普,希望能对初学者有所帮助. 文章目录 前言 一.什么是指令?指令有哪些? 二.常用指令 1.数据处理指令 2.数据跳转指令 3.Load/ ...
- ARM 9 指令系统指令英文全拼
文章目录 ARM 处理器的寻址方式 寄存器移位寻址 ARM 指令集 条件码 ARM 数据处理类指令 ARM 分支指令 ARM 存储器访问指令 ARM 协处理器指令 ARM 软件中断指令 ARM处理器的 ...
最新文章
- java的关键字与保留字
- crossdomain 可用
- 记一次 Python Web 接口优化,性能提升25倍!
- linux未知的类型名 FILE,smb使用 ------转载自http://blog.csdn.net/tlaff/article/details/5463068...
- 使用Scala,Play和Akka连接到RabbitMQ(AMQP)
- wamp php5.6 mysql5.6,WampServer 3.0.6 多语言版 集成apache2.4.23 mysql5.7.14 php5.6.25-7.0.10 穿墙书店...
- IBM HMC V7R740虚拟机安装实战
- css3之背景属性之background-size
- 字符串指针的地址的传递
- 华为回应关于“获政府巨额补贴”报道;最高法:微信微博聊天记录可作为证据;GoLand 2020.1 路线图公布 | 极客头条...
- vue.js的学习中的简单案例
- Codeforces Round #476 (Div. 2)
- linux远程桌面太卡,确保远程桌面管理顺畅稳定的方法
- linux网络操作系统-实训项目的实现
- [学习]18 SMART原则 如何科学的制定计划
- 关于内部文档的标准格式要求(图文)
- IONIC4 苹果登录-Sign In With Apple Id
- Select 选择器自定义筛选功能(支持简拼\全拼\汉字搜索)
- chrome浏览器表单自动填充默认样式-autofill设置
- 使用vagrant搭建三台虚拟机环境
热门文章
- 特变电工新能源打造绿色数据中心:综合能效提升18%以上
- 塞内加尔将于5月启用全国首个大型数据中心
- 数据中心基础设施故障处理流程
- UPS故障案例集(二)
- GB50174-2017新旧对比
- Python语言学习之文件格式后缀那些事:python和常见各种文件格式后缀介绍、使用方法之详细攻略
- Py之xlutils:xlutils的简介、安装、使用方法之详细攻略
- NVIDIA之AI Course:Getting Started with AI on Jetson Nano—Class notes(五)
- Linux系统管理01
- Spring cloud系列之Zuul配置项中sensitiveHeaders和ignoredHeaders