This program is written for students studying algorithmic theory.
© Alexey Dubinin
Application is available on the github: https://github.com/lxyd/jstu4
This software is distributed under the terms of the MIT License. See COPYING for details
The following third-party components are included:
Command format: q,a,v,q'
q - current state;
a - symbol currently seen on a tape;
v - command or symbol to write;
q' - new state.
Available commands:
> - move right;
< - move left;
= - don't move at this turn;
# - stop the machine.
You can write several commands in one separating them with any number of spaces.
C-style (//) or shell-style comments can be added to program. Note: there must be at least one space/linebreak between a command and a comment.
Named states are supported. State names which consist of digits only are interpreted as decimal numbers, so 01 and 1 represent the same state.
While program is running commands are marked with different color. You can clear thouse marks by clicking the "Unmark" button
The tape is limited at the left edge.
Buttons description:
Hotkeys:
Example (will replace 0 to 1 and 1 to 0 in place):
00, ,<,rep
rep,0,1,mov rep,1,0,mov rep, ,>,fin // rewrite cell
mov,0,<,rep mov,1,<,rep # do a step to the left
fin,0,>,fin fin,1,>,fin fin, ,#,fin // finally, move to the right