Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly IAR Embedded workbench非法操作码错误_Assembly_Msp430 - Fatal编程技术网

Assembly IAR Embedded workbench非法操作码错误

Assembly IAR Embedded workbench非法操作码错误,assembly,msp430,Assembly,Msp430,我写这段代码,目的是返回1)SP寄存器未初始化,因此您正在将内存推到0x0000,这取决于您的MCU可以是任何内容。这也会把电话和ret弄得一团糟 2) 您的代码以堆栈段结尾,因为RSEG CSTACK位于RSEG代码之后和代码之前 改变 RSEG CODE ; ORG 0x3100 - place program in 'CODE' segment in to Flash memory RSEG CSTACK Main 到 假设

我写这段代码,目的是返回1)SP寄存器未初始化,因此您正在将内存推到0x0000,这取决于您的MCU可以是任何内容。这也会把电话和ret弄得一团糟

2) 您的代码以堆栈段结尾,因为RSEG CSTACK位于RSEG代码之后和代码之前

改变

    RSEG   CODE                  ; ORG   0x3100 - place program in 'CODE' segment in to Flash memory
    RSEG   CSTACK

Main


假设您正在执行
RET
指令的时间点上,堆栈顶部没有正确的返回地址。使用调试器找出这可能是如何发生的。顺便说一下,你的乘法似乎不正确。如果
A
为0怎么办?(因为你的测试数据会有一次)。嗨,迈克尔,谢谢。我会看看回信地址。等我好了再检查一遍。
     RSEG   CSTACK
     RSEG   CODE                  ; ORG   0x3100 - place program in 'CODE' segment in to Flash memory

Main     MOV     #SFE(CSTACK), SP