清华MSP430课件第5章MSP430汇编语言幻灯片.ppt

清华MSP430课件第5章MSP430汇编语言幻灯片.ppt

  1. 1、本文档共82页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
NAME lookup_table RSEG CONST table DW addsubr , subsubr , clrsubr RSEG CODE addsubr ADD R4 , R5 RET subsubr SUB R4 , R5 RET clrsubr CLR R4 RET END 两个可重定位的段 汇编语言程序设计 设计步骤 分析实际问题(专业知识) 确定解决问题的方法(专业知识+计算机知识) 设计算法(如程序流程图) 按流程图编写程序 上机调试,运行程序 第二节 汇编语言程序设计举例 二进制数→压缩BCD码转换 B3 B2 B1 B0 千 百 十 个 高字节 低字节 压缩BCD码 byte 二进制数 255 D7 D0 …… X= D7*2 +D6*2 +D5*2 +D4*2 +D3*2 +D2*2 +D1*2 +D0 =(((((((D7)*2 +D6)*2 +D5)*2 +D4)*2 +D3)*2 +D2)*2 +D1)*2 +D0 7 6 5 4 3 2 1 十进制加法指令 DADD(.B) src , dst CLR R6 RLA.B R4 ;逻辑左移1位,D7-C DADD R6 , R6 ; R6=R6+R6+D7= (R6)*2 +D7=D7 RLA.B R4 ;逻辑左移1位,D6-C DADD R6 , R6 ; R6= ((R6)*2 +D7)*2 +D6 = (D7)*2 +D6 RLA.B R4 ;逻辑左移1位,D5-C DADD R6 , R6 ; R6= (((R6)*2 +D7)*2 +D6)*2 +D5 = ((D7)*2 +D6)*2 +D5 RLA.B R4 ;逻辑左移1位,D4-C DADD R6 , R6 ; R6= (((D7)*2 +D6)*2 +D5)*2 +D4 RLA.B R4 ;逻辑左移1位,D3-C DADD R6 , R6 ; R6= ((((D7)*2 +D6)*2 +D5)*2 +D4)*2 +D3 RLA.B R4 ;逻辑左移1位,D2-C DADD R6 , R6 ; R6= (((((D7)*2 +D6)*2 +D5)*2 +D4)*2 +D3)*2 +D2 RLA.B R4 ;逻辑左移1位,D1-C DADD R6 , R6 ; R6= ((((((D7)*2 +D6)*2 +D5)*2 +D4)*2 +D3)*2 +D2)*2 +D1 RLA.B R4 ;逻辑左移1位,D0-C DADD R6 , R6 ; R6= (((((((D7)*2 +D6)*2 +D5)*2 +D4)*2 +D3)*2 +D2)*2 +D1)*2 +D0 例1:byte→压缩BCD码子程序设计 ;将R4低字节中8bit二进制数 ;转换为压缩BCD码, ;结果存放在R7(B2)和R6(B1 , B0)中 W_BCD MOV #8 , R15 CLR R7 ;MOV #0 , R7 CLR R6 LOOP RLA.B R4 ;逻辑左移1位,MSB-C DADD R6 , R6 ;十进制加法:R6=R6+R6+C DADD R7 , R7 ;十进制加法:R7=R7+R7+C DEC R15 JNZ LOOP RET B3 B2 B1 B0 十万 万 千 百 十 个 高字节 中字节 低字节 压缩BCD码 word 二进制数 高字节 低字节 65535 B5 B4 例2:word→压缩BCD码子程序设计 ;将R4中16bit二进制数 ;转换为压缩BCD码, ;结果存放在R7(高4位)和R6(低4位)中 W_BCD MOV #16 , R15 CLR R7 CLR R6 LOOP RLA R5 DADD R6 , R6 DADD R7 , R7 DEC R15 JNZ LOOP RET 例3:32bit二进制数→压缩BCD码子程序设计 ;将R5(高16位)和R4(低16位)中32bit二进制数 ;转换为压缩BCD码,结果存放在R8(高4位) ;R7(中4位)和R6(低4位)中 DW_BCD MOV #32 , R15 CLR R8 CLR R7 CLR R6 L

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档