LC3: TRAP x21 не работает должным образом в простой программе. Показывает как TRAP xD0 в симуляторе - PullRequest
0 голосов
/ 30 апреля 2018

Я пишу программу, которая принимает входной номер (n) от 0 до 9 и выводит его дважды (2n).

Однако, как только симулятор достигает инструкции TRAP x21, , как показано здесь, не работает. Вы можете видеть, как я ввел 5 и 10 в R0 до этой инструкции. Вместо вывода 10 он ничего не печатает и выдает ошибку A trap was executed with an illegal vector number. Что я здесь не так делаю?

Спасибо!

МОЙ КОД:

    .ORIG x3000

    LD R1, ASCII
    TRAP x23
    ADD R1, R1, R0
    AND R0, R0, #0
    ADD R0, R1, R1
    TRAP x21                            

ASCII   .FILL #-48      

    .END

КОД РЕШЕНИЯ:

    .ORIG x3000
    LD R6, ASCII
    LD R5, NEGASCII
    TRAP x23
    ADD R1,R0,x0                                    
    ADD R1,R1,R5                            
    ADD R2,R1,R1                                    
    ADD R0,R2,R6                                    
    TRAP x21                                        
ASCII .FILL x30                                          
NEGASCII .FILL xFFD0                               
    .END
...