汇编程序在CCS中运行时出现4个错,请问该如何修改?

问题描述

汇编程序在CCS中运行时出现4个错,请问该如何修改?
 ;---------------------------------------------------------------;
;输入参数: ;
;ar0 -->指向输入缓冲起始地址的指针,也就是待交织的数据的首地址 ;
;ar1 -->指向交织表起始地址的指针 ;
;ar2 -->指向输出缓冲起始地址的指针,也就是交织完的数据的地址 ;
;ar3 -->待交织数据的长度,以比特表示 ;
;----------------------------------------------------------------
;uninter_word -->待交织的数据的长度,以字表示 ;
;inter_bit -->交织数据的比特位置 ;
;loc_bit -->待交织数据的比特位置 ;
;loc_word -->待交织数据的字的位置 ;
;---------------------------------------------------------------;
.def inter_R
inter_R: ldm ar3,a ;待交织数据的长度
         sftl a,-4 ;长度/16 得到待交织数据所占的字数
         stl  a,uninter_word  ;存储待交织数据的长度(字的个数)
         stm #15,BRC ;循环的次数为 16
outstart: st  #0000h,inter_bit  ;字内比特起始位置为 0
inerstart: rptb i_inner-1 ;循环开始
         ld  *ar1,-4,a ;由交织表的数据得到此输出比特在待交织数据中的 WORD 位置
         stl  a,loc_word  ;将此 WORD 位置保存起来
         ld  #15,b  ;由交织表的数据得到此输出比特在待交织数据
         and *ar1+,b ;中的 BIT 位置
         stl  b,loc_bit ;将此 BIT 位置保存起来
         ld  #1,a
         rsbx c ;清 C
         rpt loc_bit
         rol a  ;将 1<<loc_bit+1
         ror a
         stlm a,ar4 ;保存 A 中的数据
         ldm ar0,b  ;保存 AR0 中的数据
         ldm ar0,a ;在输入缓冲区中寻找要交织的 BIT 的字的位置
         add loc_word,a  ;ar0+loc_word
         stlm a,ar0
         ldm ar4,a
         and *ar0,a  ;a 中的第 loc_bit 个比特就是需要交织到此比特位置的数据
         stlm b,ar0
              rsbx c
         rpt loc_bit
         ror a  ;数据右移到 A 的最低位中
         rol a
         rsbx c
         rpt inter_bit
         rol a  ;A<<inter_bit,inter_bit 是输出缓冲当前字中
         ror a  ;要处理的比特位置
         ssbx c ;置 C
         ld  #0ffffh,16,b
         or  #0fffeh,b
         rpt inter_bit
         rol b
         ror b
         and *ar2,b  ;清除输出缓冲此比特位置原有的数据
         or  a,b ;将 A 中的数据通过“或”操作写入输出 B 中
         stl  b,*ar2  ;将 B 中的数据写入输出缓冲区中
         addm  #0001h,inter_bit  ;输出缓冲中待操作的比特位置加 1
         nop
i_inner  mar *ar2+  ;输出缓冲中待操作的字位置加 1
         ld uninter_word,a
         sub #1,a  ;待交织数据的字的长度减 1
         stl  a,uninter_word
         and #0ffffh,a ;判断整字的待交织数据是否交织完
         bc  outstart,aneq ;没有交织完则继续交织,否则去判断剩下的数据够不够一个字
         ldm ar3,a ;如果待交织数据长度除以 16 所得余不为 0
         and #15,a ;的话,还要继续处理最后一个字的数据
         bc  endprog,aeq
         sub #1,a
         stlm a,brc
         stm #0000h,ar3
         B  inerstart
endprog: ret

不知道图片能否上传,再把错误陈列下:

 "c:tic5500cgtoolsbincl55" -g -q -fr"C:/ti/tutorial/jiaozhi2/Debug" -d"_DEBUG" -@"Debug.lkf" "jiaozhi.asm"
"jiaozhi.asm", ERROR!   at line 13: [E9999] Syntax Error
    .def inter_R
    ^           

"jiaozhi.asm", ERROR!   at line 13: [E9999] Invalid mnemonic specified
    .def inter_R
    ^           

"jiaozhi.asm", REMARK   at line 55: [R5571] This instruction may corrupt the
                                            carry bit if the M40 bit is set
                                            (see the C55x silicon exceptions
                                            errata; Advisory CPU_41)
             addm  #0001h,inter_bit  ;输出缓冲中待操作的比特位置加 1

"jiaozhi.asm", REMARK   at line 57: [R5573] Any BKxx and BSAxx updates are not
                                            pipline protected against MAR
                                            operations within 5 cycles (see
                                            line 55) (see the C55x silicon
                                            exceptions errata; Advisory CPU_43)
    i_inner  mar *ar2+  ;输出缓冲中待操作的字位置加 1

"jiaozhi.asm", ERROR!   at EOF: [E0300] The following symbols are undefined:
3 Assembly Errors, No Assembly Warnings
  uninter_word
  loc_word
  loc_bit
  inter_bit

Errors in Source - Assembler Aborted

Compile Complete,
  4 Errors, 0 Warnings, 2 Remarks.

解决方案

直接删掉.def inter_R
开头的中文字符及分号删掉,定义四个变量
uninter_word
inter_bit
loc_bit
loc_word

解决方案二:

http://bbs.csdn.net/topics/391954650

时间: 2024-10-31 18:18:21

汇编程序在CCS中运行时出现4个错,请问该如何修改?的相关文章

asp.net-ASP.NET中运行时输入信息没有经过规则判断就直接添加了

问题描述 ASP.NET中运行时输入信息没有经过规则判断就直接添加了 而且会出现这种情况, 解决方案 说明你的判断没起作用,你在看看它有什么隐错

visual studio 2010-OpenCV2.4.9自带的Camshift程序,在VS2010中运行时频繁异常终止

问题描述 OpenCV2.4.9自带的Camshift程序,在VS2010中运行时频繁异常终止 如题,我在运行OpenCV2.4.9自带的camshift.cpp时,几乎每次运行都异常终止.我发现一般情况下,是在跟丢目标(目标移动稍快)时,或者Smin值调节过大时异常终止. 提示为: Runtime Error! This application has requested the Runtime to terminate it in an unusual way. 我的OpenCV配置应该没有

谢谢-各位亲,帮帮忙看一下这个程序那里有问题,在浏览器中运行,rs.next()有错

问题描述 各位亲,帮帮忙看一下这个程序那里有问题,在浏览器中运行,rs.next()有错 这是dbBean页面 package com.regist; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Stateme

为什么logback在tomcat中运行时日志文件输出到eclipse目录下

问题描述 使用相对路径时,同样的logback日志配置文件,在jetty中运行会输出日志到当前项目的路径下,而部署到tomcat中就输出到eclipse根目录下了,有什么办法可以解决这个问题?我想了很久都不知道为什么.logback部分配置如下<appendername="FILE"class="ch.qos.logback.core.rolling.RollingFileAppender"><rollingPolicyclass="ch

小白,docker中运行nodejs网页保报错,Object function Object() { [native code] } has no method

问题描述 TypeError:ObjectfunctionObject(){[nativecode]}hasnomethod'assign'atObject.build(/p3/node_modules/node-xlsx/lib/index.js:46:57)atrouter.post.start(/p3/routes/index.js:322:26)atLayer.handle[ashandle_request](/p3/node_modules/express/lib/router/lay

ASP.NET HTTP运行时组成详解

asp.net|详解 简介 不管使用哪种底层平台可靠性和性能都是对所有 Web 应用程序的主要要求尽管从某种意义上讲这两个要求是相互矛盾的.例如要构建更可靠.更健壮的应用程序可能需要将 Web 服务器与具体的应用程序分离使应用程序在进程外工作.但是如果在不同于 Web 服务器进程的内存环境中工作应用程序将变慢.因此需要采取合理的措施以确保进程外代码尽可能快地运行. 在构建 Microsoft? ASP.NET 运行时环境时依据的设计原则即充分考虑可靠性和性能.得到的 ASP.NET 进程模型包含

举例讲解Java的RTTI运行时类型识别机制_java

1.RTTI:运行时类型信息可以让你在程序运行时发现和使用类型信息. 在Java中运行时识别对象和类的信息有两种方式:传统的RTTI,以及反射.下面就来说下RTTI. RTTI:在运行时,识别一个对象的类型.但是这个类型在编译时必须已知. 下面通过一个例子来看下RTTI的使用.这里涉及到了多态的概念:让代码只操作基类的引用,而实际上调用具体的子类的方法,通常会创建一个具体的对象(Circle,Square,或者Triangle,见下例),把它向上转型为Shape(忽略了对象的具体类型),并在后面

eclipse中运行monkeyrunner脚本之环境搭建(4)_Android

monkeyrunner脚本使用Python语法编写,但它实际上是通过Jython来解释执行. Jython是Python的Java实现,它将Python代码解释成Java虚拟机上的字节码并执行,这种做法允许在Python中继承一个Java类型,可以调用任意的 Java API . 本文档主要是可以实现在eclipse环境中运行Monkeyrunner脚本.所需要的环境和工具如下:win7 os.jdk.eclipse.sdk.python.jython.模拟器或真机设备. 在前两章中,我们分别

eclipse中运行monkeyrunner脚本之环境搭建(4)

monkeyrunner脚本使用Python语法编写,但它实际上是通过Jython来解释执行. Jython是Python的Java实现,它将Python代码解释成Java虚拟机上的字节码并执行,这种做法允许在Python中继承一个Java类型,可以调用任意的 Java API . 本文档主要是可以实现在eclipse环境中运行Monkeyrunner脚本.所需要的环境和工具如下:win7 os.jdk.eclipse.sdk.python.jython.模拟器或真机设备. 在前两章中,我们分别