在我的输出以-符号开头的地方出现错误

时间:2018-10-23 00:04:10

标签: assembly null arm

这是我编写的汇编代码,可以很好地运行,但是我需要修复学校编译器向我显示此错误消息的某些东西。

  

在程序的输出和的输出之间进行了比较   解决方案。程序的输出以-符号开头,并且为   以红色突出显示。解决方案的输出前面带有+符号   并以绿色突出显示。您的程序和   解决方案没有颜色,并且在该行之前没有符号。   我们试图使您的输出和   解决方案,请更新您的源代码以解决任何问题。如果   您看到{NULL}表示您正在尝试输出NULL   字符。

@@ -1,4 +1,4 @@  ENTER two numbers (i.e '0'....'9')
- r0 x3003 intro     r1 x7fff 32767     r2 x0000 0         r3 x0000 0         
- r4 x0000 0         r5 x0000 0         r6 x0000 0         r7 x3003 intro     
-  cc(+) Now at x3002: halt
+8
+4
+8 - 4 = 4
.ORIG x3000     

        LEA R0, intro ; Load the address of intro string
        PUTS    ; Invokes BIOS routine to output string


        GETC     
        OUT      
        AND R1,R1,#0   
        ADD R1,R1,R0   
        LEA R0, NEWLINE  
        PUTS     
        GETC     
        OUT      
        AND R2,R2,#0   
        ADD R2,R2,R0   
        LEA R0, NEWLINE  
        PUTS     

        AND R3,R3,#0   
        ADD R3,R3,#15
        ADD R3,R3,#15
        AND R4,R4,#0
        ADD R4,R3,#2   
        ADD R3,R3,#15
        ADD R3,R3,#3   

        AND R5,R5,#0   
        ADD R5,R5,R3   

        NOT R3,R3
        ADD R3,R3,#1   


        ADD R1,R1,R3   
        ADD R2,R2,R3   
        AND R6,R6,#0   
        ADD R0,R1,R6
        ADD R0,R0,R5   
        OUT      

        AND R6,R6,#0  
        ADD R0,R4,R6  
        OUT      

        ADD R3,R4,#13
        AND R6,R6,#0  
        ADD R0,R3,R6   
        OUT

        AND R6,R6,#0
        ADD R0,R4,R6  
        OUT      

        AND R6,R6,#0
        ADD R0,R2,R6  
        ADD R0,R0,R5   
        OUT      

        AND R6,R6,#0
        ADD R0,R4,R6  
        OUT      
        ADD R3,R3,#15
        ADD R3,R3,#1     
        AND R6,R6,#0
        ADD R0,R3,R6  
        OUT      
        AND R6,R6,#0
        ADD R0,R4,R6  
        OUT      

        NOT R2,R2
        ADD R2,R2,#1   
        ADD R6,R1,R2   

        BRn neg      
        BR pos       

        neg Not R6,R6    
            ADD R6,R6,#1
            AND R3,R3,#0
            ADD R3,R4,#13
            AND R4,R4,#0  
            ADD R0,R3,R4  
            OUT

        pos ADD R6,R6,R5   
            AND R4,R4,#0   
            ADD R0,R6,R4   
            OUT      

            LEA R0, NEWLINE  
            PUTS     
            HALT    




        intro .STRINGZ   "ENTER two numbers (i.e '0'....'9')\n"
        NEWLINE .STRINGZ "\n"   ; String that holds the newline character

        .END

0 个答案:

没有答案