LC-3 .BLKW Как это работает

Решено!

Я пишу программу на ассемблере для LC-3, которая должна ждать, пока пользователь напечатает все символы, которые он хочет, а затем печатать их на мониторе только после того, как он нажмет ввод.

Я дошел до решения проблемы, если пользователь нажимает только кнопку ввода. Примеры:

Я нажимаю Enter ---> Программа ведет себя как надо. (переходит на новую строку и останавливается)

Я нажимаю "ABCDEF" ---> программа отображает "F" вместо перехода на новую строку и отображения ABCDEF. решаемая

.BLKW должен сохранить блок памяти. Поэтому, чтобы решить эту проблему, я должен был загрузить.blkw в регистр, затем сохранить новое значение буквы в этом регистре и каждый раз обновлять хранилище, чтобы перейти к следующему местоположению.

            LEA    R2 INPUT
    onemoretime    GETC

        ADD    R3 R1 R0
        BRz    DONE
        STR    R0 R2 0
        ADD    R2 R2 1
        BR     onemoretime        

INPUT      .BLKW 10

1 ответ

Вы просто добавляете значения ascii для ввода в ОДНОМ месте, INPUT. Если вы надеетесь восстановить введенные символы, вам нужно сохранить их в РАЗНЫХ местах.

Другие вопросы по тегам