Assembly 程序集索引模式

Assembly 程序集索引模式,assembly,msp430,addressing-mode,Assembly,Msp430,Addressing Mode,这是作业: 在汇编中编写一个程序,使其包含一个子例程,该子程序使用寄存器R6和十六进制#0001h的条目执行AND运算。然后通过对五个连续的内存位置应用相同的操作来重复该操作。使用适当的寻址模式 对于第一部分,我只做了和.w#0001h,R6。对于第二部分,我被暗示使用索引模式并使用此格式: Loop mov.w (0)R4, R6 call and_subroutine add 2, R4 jmp Loop 并使用cmp退出此循环。在我找出如何解决问题的其余部分之前,我想测试一下bits,然

这是作业:

在汇编中编写一个程序,使其包含一个子例程,该子程序使用寄存器
R6
和十六进制#0001h的条目执行AND运算。然后通过对五个连续的内存位置应用相同的操作来重复该操作。使用适当的寻址模式

对于第一部分,我只做了
和.w#0001h,R6
。对于第二部分,我被暗示使用索引模式并使用此格式:

Loop
mov.w (0)R4, R6
call and_subroutine
add 2, R4
jmp Loop
并使用
cmp
退出此循环。在我找出如何解决问题的其余部分之前,我想测试一下bits,然后输入:

mov.w #0200h, R4
mov.w (0)R4, R6
and.w #0001h, R6
mov.w (2)R4, R6
对于
(0)R4
(2)R4
行,它给出了以下错误:

意外的尾随操作数


我试着用
(0)R4
,去掉最后两行,但这对错误没有帮助。有人知道我做错了什么吗?

你在用哪种汇编程序?TI还是GNU?我知道了,但谢谢你!