第3章_C54x的指令系统.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(3)异或运算指令 异或运算指令共计5条。 指令格式:操作码 源操作数 [,移位数] ,目的操作数 1 Smem [,SHFT] ,src XOR 2 #lk ,src[,dst] XOR 16 3 #lk ,src[,dst] XOR [,SHIFT] 4 src [,dst] XOR 5 #lk ,Smem XORM 异或运算指令 序号 指 令 功 能 说 明 1 XOR Smem , src src = src?Smem 源操作数与累加器异或运算 2 XOR #lk[,SHFT],src[,dst] dst = src?#lkSHFT 长立即数移位后与累加器异或运算 3 XOR #lk,16,src[,dst] dst = src?#lk16 长立即数左移16位与累加器异或运算 4 XOR src[,SHIFT][,dst] dst=dst?srcSHIFT 源累加器移位后与目标累加器异或运算 5 XORM #lk, Smem Smem = Smem?#lk 目标操作数与长立即数异或运算 (4)移位操作指令 ’C54x共有6条移位指令,可实现带进位位循环移位、带TC位循环左移、算术移位、条件移位和逻辑移位等操作。 指令格式:操作码 源操作数 [,移位数] [,目的操作数] 操 作 码: ROL、ROLTC、ROR、SFTA、SFTC、SFTL 源操作数: src 移 位 数: SHIFT 目的操作数:dst (4)移位操作指令 ① 带进位位循环左移 操作数src:累加器A或B 指令功能: 累加器src与进位位C循环左移一位。 执行过程: C → src(0) src(30~0)→ src(31~1) src(31)→ C 0 → src(39~32) 指令格式: ROL src ;C的值移入src的最低位 ;src左移一位 ;src的最高位移入C ;src的保护位清0 ② 带测试位循环左移 操作数src:累加器A或B 指令功能: 累加器src与测试位TC循环左移一位。 执行过程: 指令格式: ROLTC src 39 ~ 32 31 0 累加器src 保护位 TC ① ① TC的值移入src的最低位 ② 累加器src左移一位 ② ③ src的最高位移入TC ③ ④ src的保护位清0 ④ 0 ③ 带进位位循环右移 操作数src:累加器A或B 指令功能: 累加器src与进位位C循环右移一位。 执行过程: 指令格式: ROR src ① C的值移入src的31位 ② 累加器src右移一位 ③ src的最低位移入C ④ src的保护位清0 39 ~ 32 31 0 累加器src 保护位 C ① ② ③ ④ 0 ④ 算术移位 指令格式: SFTA src, SHIFT [, dst] 指令功能: 根据SHIFT,src的内容算术移位。 操作数src:累加器A或B If SHIFT 0 Then src((-SHIFT)-1) → C src(39~0)SHIFT →src或dst If SXM=1 Then src(39)→src(39~(39+SHIFT+1)) 或 src(39)→dst(39~(39+SHIFT+1)) Else 0→src (39~(39+SHIFT+1)) 或 0→dst (39~(39+SHIFT+1)) Else src(39-SHIFT)→C (src)SHIFT→src或dst 0→src ((SHIFT-1)~0) 或 0→dst ((SHIFT-1)~0) ④ 算术移位 执行过程: 当SHIFT 0时,进行算术右移 1) src的第(-SHIET-1)位复制到进位位C; 2) 40位src右移SHIFT位,结果存入src或dst; 3) 符号扩展处理 若SXM=1,进行符号位扩展。

文档评论(0)

xiaohuer + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档