安徽理工大学计算机汇编教程ARMThumb汇编语言.ppt

安徽理工大学计算机汇编教程ARMThumb汇编语言.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
安徽理工大学计算机汇编教程ARMThumb汇编语言

第1章 汇编语言基础知识 寻址方式分类——寄存器寻址 寻址方式分类——立即寻址 寻址方式分类——寄存器移位寻址 寻址方式分类——寄存器间接寻址 寻址方式分类——基址寻址 寻址方式分类——多寄存器寻址 寻址方式分类——堆栈寻址 寻址方式分类——堆栈寻址 寻址方式分类——堆栈寻址 寻址方式分类——堆栈寻址 寻址方式分类——块拷贝寻址 寻址方式分类——相对寻址 1. 数字表达式及运算符 ?“AND”、“OR”、“NOT”及“EOR”按位逻辑运算符 以X和Y表示两个数字表达式,以上的按位逻辑运算符代表的运算如下: X:AND:Y 表示将X和Y按位作逻辑与的操作。 X:OR:Y 表示将X和Y按位作逻辑或的操作。 :NOT:Y 表示将Y按位作逻辑非的操作。 X:EOR:Y 表示将X和Y按位作逻辑异或的操作。 2. 逻辑表达式及运算符 ? “=”、“”、“”、“=”、“= ”、“/=”、“ ” 运算符 以X和Y表示两个逻辑表达式,以上的运算符代表的运算如下: X = Y 表示X等于Y。 X Y 表示X大于Y。 X Y 表示X小于Y。 X = Y 表示X大于等于Y。 X = Y 表示X小于等于Y。 X /= Y 表示X不等于Y。 X Y 表示X不等于Y。 2. 逻辑表达式及运算符 ? “LAND”、“LOR”、“LNOT”及“LEOR”运算符 以X和Y表示两个逻辑表达式,以上的逻辑运算符代表的运算如下: X:LAND:Y 表示将X和Y 作逻辑与的操作。 X:LOR:Y 表示将X和Y作逻辑或的操作。 :LNOT:Y 表示将Y作逻辑非的操作。 X:LEOR:Y 表示将X和Y作逻辑异或的操作。 3. 字符串表达式及运算符 ?LEN运算符 LEN运算符返回字符串的长度(字符数),以X表示字符串表达式,其语法格式如下: :LEN:X ?CHR运算符 CHR运算符将0~255之间的整数转换为一个字符,以M表示某一个整数,其语法格式如下: :CHR:M 第17章 ARM /Thumb汇编语言 计算机科学与技术系 《汇编语言程序设计》 8086/8088和ARM核汇编语言程序设计 第17章 ARM/Thumb汇编语言 17.2 ARM指令的寻址方式 17.3 ARM汇编语言的语句格式 第17章 ARM/Thumb汇编语言 17.1 ARM指令的分类及格式 17.1.1 ARM指令的分类 ARM处理器是基于精简指令集计算机(RISC)原理设计的,指令集和相关译码机制较为简单。ARM 指令归纳起来可分为以下6类: ? 跳转指令 ? 数据处理指令 ? 程序状态寄存器(PSR)传输指令 ? 内存取数/存数操作指令 ? 协处理器指令 ? 异常中断产生指令 17.1.2 ARM指令一般编码格式 其中各位的含义如下: (1) cond (bit31~ bit28)指令执行的操作码 (2) opcode (bit24 ~bit21) 指令操作符编码 (3) S (bit20)决定指令操作是否影响CPSR (4) Rn (bit19~ bit16)包含第一个操作数的寄存器编码 (5) Rd (bit15 ~bit12)目标寄存器编码 (6) shifter_operand(bit11~ bit0)表示第二个操作数 (7) bit27~bit25 为固定值001 17.1.3 ARM指令基本语法格式 一条典型的ARM指令语法格式如下所示: opcode {cond} {S} Rd ,Rn{,operand2} 其中: opcode 指令助记符,如ADD,SUB等。 cond 指令执行条件,如EQ,NE等。 S 决定指令的操作是否影响CPSR寄存器的值,书写时影响CPSR。 Rd 目标寄存器。 Rn 包含第一个操作数的寄存器。 operand2 第二个操作数。 17.1.3 ARM指令基本语法格式 1. 第二个操作数operand2 在ARM指令中灵活使用第二个操作数能够提高代码的效率。第二个操作数operand2通常有下面三种格式: ?立即数方式 ?寄存器方式 ?寄存器移位方式 17.1.3 ARM指令基本语法格式 (1) 立即数方式 每个立即数由一个8位的常数循环右移偶数位得到。其中循环右移的位数由一个4位二进制的两倍表示。即立即数=8位常数imm8循环右移 2*循环移位次数。 立即数方式应用举例:

文档评论(0)

189****7685 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档