Я пишу программу, которая принимает входной номер (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