из памяти имеет некоторый смысл, но вы могли бы использовать LEA для загрузки небольшой константы в позиционно-зависимом коде, если известно, что ПК находится на низком 256B адресного пространства.)

аюсь распечатать двоичное число на консоли, используя сборку LC-3.

То, что я пробовал до сих пор, включает (но не ограничивается):

        binary .fill b10000110
        lea r0, binary
        puts ; prints garbage
        ld r0, binary
        out ; prints 0 (I know it only prints one character but I don't know why it chooses to print 0)
        lea r1, binary
        and r2, r2, #0
loop    ldr r0, r1, r2
        out
        add r2, r2, #1
        and r3, r3, #0
        not r3, r2
        add r3, r3, #1
        add r3, r3, #8 ; I know all the binary numbers will be exactly 8 bits long
        brz end
        add r3, r3, #0 ; to be safe
        brnzp loop
end
        ; more code...

Ничто из этого не работает особенно хорошо. Я дергаю себя за волосы, пытаясь найти правильный способ сделать это, но все, о чем я думаю, зависит отbinary будучи строкой, что я не могу сделать.

Ответы на вопрос(1)

Ваш ответ на вопрос