
- •Теоретические сведения по языку Turbo-Jaols.
- •Работа в Turbo-Jaols.
- •Существуют следующие команды редактора:
- •Работа с программой
- •Программирование в Turbo-jaols. Основные операторы на языке программирования.
- •Пример программы с простейшими операциями
- •- Вычитание
- •/ Логическое сложение (или)
- •& Логическое умножение (и)
- •@ Сложение по модулю 2 (mod2)
Цель работы: Выучить основные команды языка Turbo-Jaols.
Теоретические сведения по языку Turbo-Jaols.
Интегрированная среда Turbo-Jaols для IBM совместимых ПЭВМ представляет собой специальный алгоритмический язык, предназначенный для описания функциональной структуры узлов и блоков ЦВМ, связей между ними, задания микропрограммы работы описанного устройства и моделирования его работы.
Работа в Turbo-Jaols.
Для начинающих программистов предусмотрен удобный интерфейс, а для более опытных пользователей переход в тот или иной режим работы возможен по нажатию Горячих клавиш:
Существуют следующие команды редактора:
│
Клавиши │ Выполняемое действие
──────────────┼───────────────────────────────────────────────────
Alt+ │
В │ Оператор JAOLSa 'ВВЕСТИ'
Е │ Оператор JAOLSa 'ЕСЛИ'
И │ Оператор JAOLSa 'ИДТИ_К'
К │ Оператор JAOLSa 'КОНЕЦ'
О │ Оператор JAOLSa 'ОПЕРЕЦИЯ'
П │ Оператор JAOLSa 'ПЕЧАТЬ'
│
Enter │ Новая строка
Esc │ Прервать редактирование
│
F1 │ Помощь
F2 │ Сохранение редактируемого файла без выхода
F3 │ Открыть файл
F4 │ Пошаговое выполнения
F6 │ Компиляция
F9 │ Изменение размеров окна редактора
Alt+X │ Вход из программы
Работа с системой происходит в одном из трех окон соответcтвующиx режимам Микропрограмма, Структура, Результаты.
Работа с программой
Описание структуры моделируемого устройства производится в окне Структура. Задание структуры моделируемого устройства Вы можете выполнить с использованием абстрактных ячеек памяти и регистров. Вы можете указать объем необходимой Вам памяти, но не более чем 255 ячеек с разрядностью не более 32 бита. Количество регистров не более 40 с разрядностью не более 32 бита.
Разрядность для каждого регистра устанавливается индивидуально, а для памяти задается одинаковая для всех ячеек.
В режиме Микропрограмма Вы получаете возможность полноэкранного редактирования своих текстовых файлов. В редакторе можно производить любые из вышеуказанных действий над текстовыми файлами от 1К до 64К.
Программирование в Turbo-jaols. Основные операторы на языке программирования.
Операторы:
ОПЕРАЦИЯ - предназначен для выполнения различных действий над регистрами, ячейками памяти и константами таких как:
-сложение
-вычитание
-логическое И
-логическое ИЛИ
-присвоение
-сложение mod2
-циклический сдвиг
-логический сдвиг
-сложение с циклическим переносом.
-логическое НЕ
При помощи специального знака ~ можно указать режим, при котором в операции будет участвовать инверсное значение второго операнда, а сам он при этом не изменится. В операциях может участвовать непосредственно регистр или ячейка памяти, отдельный бит или группа разрядов, константы в двоичной, десятичной или шестнадцатиричной системе счисления, а так же регистры или ячейки памяти адресуемые косвенно.
Пример:
ОПЕРАЦИЯ р1 [функция] р {~}
функция - любое из перечисленных ниже действий над операндами
= присвоение
+ сложение
- вычитание
/ логическое сложение (ИЛИ)
& логическое умножение (И)
@ сложение по модулю 2 (mod2)
>> сдвиг вправо логический
<< сдвиг влево логический
>] сдвиг вправо циклический
[< сдвиг влево циклический
++ сложение с циклическим переносом (только для версий 2.10 и старше)
~ : признак инверсии второго операнда
Оператор ВВЕСТИ предназначен для изменения в ходе выполнения микропрограммы содержимого какого-либо регистра или ячейки памяти. При этом в специальное окно ВВОДА выводится текущее содержимое указанного регистра или ячейки памяти в двоичном коде. Выполнение микропрограммы приостанавливается для ввода нового значения или изменения старого. После ввода выполнение микропрограммы продолжается.
Пример:
ВВЕСТИ р1
Оператор ПЕЧАТЬ дает возможность вывода значений регистров или ячеек памяти, а также текстовых сообщений в ходе выполнения микропрограммы.
Пример:
ПЕЧАТЬ р1
ПЕЧАТЬ " любой текст "
Оператор ИДТИ_К предназначен для передачи управления на какую-либо метку. При этом программа продолжает выполняться со строки с указанной меткой. Метка должна стоять в начале строки и находиться в диапазоне значений 1..999. В операторе ИДТИ_К может быть указано непосредственно значение метки, регистр или ячейка памяти значение которых будет воспринято как метка или регистр или ячейка памяти адресуемые косвенно.
Пример:
ИДТИ_К [метка]
Вместо метки можно использовать например числа.
Оператор ЕСЛИ выполняет операции отношения над операндами, такие как =, <>, <=, >=. Если отношение истинно, то следующей выполняется команда, указанная в этой же строке за оператором ЕСЛИ, иначе будет выполняться следующая строка.
Пример:
ЕСЛИ р1 [отношение] 2 [оператор]
Отношение: любое из перечисленных ниже отношений между операндами
= равно
< меньше
> больше
<= меньше или равно
>= больше или равно
<> неравно
Оператор: любой из перечисленных операторов :
Операция
Идти_К
Ввести
Печать
Конец
Комментарий
кроме оператора Если
Оператор КОНЕЦ прекращает выполнение микропрограммы.
Пример:
Конец
Комментарии. Оператор ремарки (одинарная кавычка) предназначен для указания в тексте микропрограммы комментариев, что резко повышает наглядность микропрограммы.