第4章 TMS320C54x的指令系统4.1-4.3.ppt

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

2003.2.16 第4章 TMS320C54x指令系统 4.1 指令系统概述 4.2 汇编源程序格式 4.3 汇编语言指令系统 4.4 寻址方式 4.5 汇编伪指令 4.6 宏语言 4.7 链接伪指令 ’C54x的指令系统包含助记符指令和代数指令两种形式。 助记符指令:是一种采用助记符号表示指令; LD #0FFH,A 代数指令:是一种比汇编语言更高级,类似于高级语言的代数形式指令。 A=#0FFH 两种指令具有相同的功能。本章着重介绍助记符指令。两种指令不能混用。 1.标号 标号是可选项,但伪指令.set和.equ必须要标号。 标号后可以加也可以不加冒号(:)。 标号必须从第一列开始,其最多可长达32个字符(A~Z,a~z,0~9,_和$),但第一个字符不能是数字。引用标号时,标号的大小写必须一致,可在启动汇编器时用-c选项取消。 标号的值就是所指语句所在单元的值。 若不用标号,则第一个字母必须为空格、分号或星号(*)。 2.助记符/指令 助记符跟在标号的后面。助记符不能从第一列开始。 助记符包含汇编语言指令、汇编伪指令、宏命令和宏调用。 汇编语言指令,一般用大写;伪指令和宏命令则以句号(.)开始,且为小写。 3.操作数 操作数之间必须用逗号(,)分开。 汇编器允许在操作数前使用前缀来指定操作数(常数、符号或表达式)是地址还是立即数或间接地址:#前缀、*前缀、@前缀。 LD #0FFH,A LD *AR4,A;AR4中的内容作为地址 ST #1234H, @ DAT0 ; @可省略 4.注释 注释从分号(;)开始,可以放在指令或伪指令的后面,也可以单独占一行或数行。 注释在汇编文件列表中显示,但不影响汇编。 如果注释从第1列开始,也可以用星号(*)。 编写汇编语句遵循的规则: 语句的开头只能是标号、空格、星号或分号。 标号是可选项,使用时必须从第一列开始。 每个域之间必须由一个或多个空格来分开。制表符等同于空格的作用。 注释是可选项。开始于第一列的注释用星号或分号(*或;)来标明,开始于其它列的注释必须由分号开头。 源语句的字符数每行不能超过200个。 .title ex1 .mmregs .def _c_int00 DAT0 .set 60H DAT1 .set 61H .text ADD3 .macro P1,P2,P3,ADDRP LD P1,A ADD P2,A ADD P3,A STL A,ADDRP .endm _c_int00: B start start: LD #004h,DP ;置数据页指针 STM #1000h,SP ;置堆栈指针 SSBX INTM ;禁止中断 bk0: ST #0012h,DAT0 LD #0023h,A ADD DAT0,A ;加法操作 NOP NOP NOP NOP . . . bk6: B bk0 ;循环执行 .end 4.2.2 汇编语言常量 常数就是指令中出现的那些固定值。汇编器支持7种类型的常数: 二进制数(其后缀为B或b) 十进制数 八进制数(后缀为Q或q) 十六进制数(后缀为H或h,它必须由十进制值0-9开始,也可以由前缀0x标明) 字符常数(由单引号括住的一个或两个字符组成) 汇编时常量(用.set伪指令给一个符号赋值,则这个符号等效于一个常量) 浮点常数(由一串十进制数字及小数点、小数部分和指数部分组成,如+314.59e-2)。 4.2.3字符串 是由双引号括起来的一串字符。 4.2.4符号 可用于标号、常量和替代其它字符。 4.3 汇编语言指令系统 指令系统中的符号和缩写P118 指令系统中的记号和运算符 TMS320C54X指令系统 TMS320C54X共有205条指令 按功能分为4大类(每大类又分为若干小类) : ? 算术运算指令; ? 逻辑运算指令; ? 程序控制指令; ? 存储和装入指令。 1. 算术运算指令(79条分为6小类,附录A) ? 加法指令(ADD); ? 减法指令(SUB); ? 乘法指令(MPY); ? 乘加指令(MAC)和乘减指令(MAS); ? 双数/双精度指令(DADD、DSUB); ? 特殊操作指令(ABDST、SQDST)。 (

文档评论(0)

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

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

1亿VIP精品文档

相关文档