Реализация стека LC3

У меня есть проблема, которую я пытаюсь выяснить:

Напишите программу на языке ассемблера LC-3, которая просит пользователя ввести строку (конец строки ввода — это клавиша ввода) и печатает слова этой строки в обратном порядке. Например, если входная строка «Привет, меня зовут Джо», вывод вашей программы должен быть «Джо, меня зовут, привет». Протестируйте свою программу с помощью симулятора LC-3. Ваш код должен быть хорошо документирован. Подсказка: рассмотрите возможность использования стека для упрощения реализации.

Я знаю, как я мог бы использовать стек для возврата чего-то точно обратного, например: ввод «AB CD EF», вывод «FE DC BA», но как я мог бы только изменить порядок сегментов? пример: вход "AB CD EF" выход "EF CD AB"

Спасибо


person CDO    schedule 01.05.2015    source источник


Ответы (1)


Лучше всего было бы увеличить количество блоков памяти, помещаемых в стек за один раз. Например, если вы ожидаете, что пользователь введет только слова, длина которых не превышает 5 символов, то одно нажатие на стек займет 5 блоков памяти.

Это сделало бы так, что вы могли бы «выталкивать» слова из стека без необходимости изменять порядок каждой из букв.

person Chris M    schedule 01.05.2015
comment
Привет, можешь взглянуть на это? stackoverflow .com/questions/29981266/ - person committedandroider; 01.05.2015
comment
Большое спасибо за вашу помощь! - person CDO; 02.05.2015