← Вернуться к программе

Эмулятор машины Тьюринга в четвёрках

О программе

Данное учебное пособие предназначено для изучения алгоритмической модели "Машина Тьюринга". Приложение представляет собой интерпретатор программ МТ в четвёрках.

© Алексей Дубинин
Приложение доступно на github: https://github.com/lxyd/jstu4
Условия лицензионного соглашеия (лицензия MIT) см. в файле COPYING

Дистрибутив включает в себя следующие сторонние компоненты:


Справка

Формат команды: q,a,v,q'
q - текущее состояние;
a - знак, который видим на ленте;
v - знак, который пишем или команда;
q' - состояние, в которое переходим.

Возможные команды МТ:
> - движение головки вправо;
< - движение головки влево;
= - отсутствие движения на данном такте;
# - полная остановка машины.

Можно записывать несколько команд в строку, разделяя их одним или несколькими пробелами.

В программу могут быть добавлены комментарии в стиле Си (//) или shell (#). Обратите внимание: между предыдущей командой и коментарием должен стоять хотя бы один пробел или перенос строки.

Поддерживаются именованные состояния, но имена состояний, состоящие из одних цифр, считаются целыми числами (т.е. 01 и 1 - это одно и то же). Начальное состояние должно иметь имя 0.

В процессе работы выполненые команды помечаются цветом. Сбросить пометки можно в любой момент нажав кнопку "Сбросить метки"

Лента ограничена слева, умолчального пробельного символа не предполагается, старайтесь не забывать его ставить

Команды эмулятора:

Горячие клавиши:

Пример (ненормированная замена 0 на 1 и наоборот):

00, ,<,rep
rep,0,1,mov  rep,1,0,mov  rep, ,>,fin  # переписываем текущую ячейку
mov,0,<,rep  mov,1,<,rep               // двигаемся на шаг влево
fin,0,>,fin  fin,1,>,fin  fin, ,#,fin  # в конце работы перемещаемся в конец слова

← Вернуться к программе