线性汇编的两个问题

lafeng_tianxia 2008-04-09 03:26:34
1,如何在线性汇编中实现32位数的乘法?
2,如何在线性汇编中使用宏定义?
我在文件中如此定义:
sadd4 .macro r1,r2,r3,r4
SADD r1 , r2 , r1
SADD r1 , r3 , r1
SADD r1 , r4 , r1
.endm
...下面是程序主体。
但是编译无法通过。请高手指点迷津呀!
...全文
329 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
gzgzlxg 2009-08-14
  • 打赏
  • 举报
回复
你这个玩意儿好像弄错了吧?你是否想弄两个宏嵌套使用?

sadd4 .macro r1 , r2 , r3 , r4
SADD r1 , r2 , r1
SADD r1 , r3 , r1
SADD r1 , r4 , r1
.endm

应该是

sadd4 .macro r1 , r2 , r3 , r4
ADD r1 , r2 , r1
ADD r1 , r3 , r1
ADD r1 , r4 , r1
.endm
goodider 2009-08-13
  • 打赏
  • 举报
回复
看着很晕
nklgvictor 2009-08-13
  • 打赏
  • 举报
回复
顶dddddddddddd
neipe2003 2009-01-06
  • 打赏
  • 举报
回复
不知,帮顶
meiZiNick 2008-05-01
  • 打赏
  • 举报
回复
不知,帮顶
knowledge_Is_Life 2008-04-30
  • 打赏
  • 举报
回复
等待牛人来答.
lafeng_tianxia 2008-04-10
  • 打赏
  • 举报
回复
我是在使用过程中想使用宏定义,例如

sadd4 .macro r1 , r2 , r3 , r4
SADD r1 , r2 , r1
SADD r1 , r3 , r1
SADD r1 , r4 , r1
.endm
.global _test_a
_test_a: .cproc r1 , r2 , r3 , r4
sadd4 r1 , r2 , r3 , r4
.return r1
.endproc
这段代码是保存在 test_a.sa 文件中,但是在CCS中编译会出现如下错误:
ERROR! at line 8: Illegal mnemonic specified
SADD r1 , r2 , r1
^

说的是没有sadd这条伪指令,为什么呢?
cnzdgs 2008-04-10
  • 打赏
  • 举报
回复
嘛叫线形汇编?是没有跳转指令吗?还是不分段的FLAT模式?
我用的汇编定义宏时MACRO和ENDM前面都是不加.的。
用户 昵称 2008-04-09
  • 打赏
  • 举报
回复
是否标号重复了?使用宏时要注意。
BAYNPU 2008-04-09
  • 打赏
  • 举报
回复
请把整个源程序贴出来吧,让大伙帮你分析一下.

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧