下载此文档

RAM汇编语言编程.pdf


文档分类:IT计算机 | 页数:约30页 举报非法文档有奖
1/30
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/30 下载此文档
文档列表 文档介绍
RAM汇编语言编程
‹北京微芯力科技有限公司
苏兰冬
数据处理指令
™ 简单的寄存器操作
™ 立即数操作
™ 寄存器移位操作
™ 设置条码
™ 条码的使用
™ 乘法
简单的寄存器操作
¾ 算术操作
¾ 按位逻辑操作
¾ 寄存器传送操作
¾ 比较操作
简单的寄存器操作—算术操作
这类指令对两个32位操作数进行二进制算术操作
加减和反向减后者指把操作数次序颠倒后相

ADD ro, r1, r2 ;r0 = r1+r2
ADD ro, r1, r2 ; r0 = r1+r2+C
SUB ro, r1, r2 ; r0 = r1-r2
SBC ro, r1, r2 ; r0 = r1-r2+C-1
RSB ro, r1, r2 ; r0 = r2-r1
RSC ro, r1, r2 ; r0 = r2-r1+C-1
简单的寄存器操作—按位逻辑操作
这类指令对输入操作数的对应位进行指定的布尔
逻辑操作
ADD r0,r1,r2 ;r0 = r1 and r2
ORR r0,r1,r2 ;r0 = r1 or r2
EOR r0,r1,r2 ;r0 = r1 xor r2
BIC r0,r1,r2 ; r0 = r1 and not r2
简单的寄存器操作—寄存器传送操作
这些指令不用第一操作数它在汇编语言格式中被
省略
MOV r0,r2 ;r0 = r2
MVN r0r,2 ;r0 = not r2
简单的寄存器操作—比较操作
这类指令不产生结果仅根据所选择的操作来设置
CMP r1,r2 ;根据r1-
CMN r1,r2 ;根据r1-
TST r1,r2 ;根据r1 and
TEQ r1,r2 ;根据r1 xor
立即数操作
如果只希望把一个常数加到寄存器而不是两个寄存器
相加可以用立即数值取代第二位操作数
立即数通常是常量 literal) 前面加“#”
ADD r3,r3 #1; r3:=r3+1
AND r8,r7 # & ff; r8:=r7[7:0]
立即数= 0 255 X22n
寄存器移位操作
第三种定义数据操作的方式同第一种类似但
允许第二个寄存器操作数在同第一操作数运算
之前完成移位操作例:
ADD r3, r2, r1, LSL # 3 ;r3:=r2+8xr1
注意它是一条RAM指令在单个时钟周期内执行
设置条件码
如果程序员要那么任何数据处理指令都能设置条件码
N Z C和V 比较操作只能设置条件码
要求以增加S操作码来指明意为“设置条件码例
ADDS r2, r2, r0 ;32位进位输出 C……
ADC r3, r3, r1 ;…再加到高位字节中

RAM汇编语言编程 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数30
  • 收藏数0 收藏
  • 顶次数0
  • 上传人一文千金
  • 文件大小0 KB
  • 时间2012-03-11