In brainease, you can assign and change the value of a specific cell with 4 main
You can increment or decrement a cell with the
dec instructions. They are a
1:1 mapping to brainf*ck with the
- operators. The only catch is that you
can increment or decrement a cell multiple times in a row.
The syntax is pretty simple:
# Syntax: (inc|dec) <value> in *<cell>
# Increments the cell 2 by 1 inc 1 in *2 # Decrements the pointer cell by 84 dec 84 in *@
You need to be careful, because with these two instructions is pretty easy to overflow a cell. Read more about cell overflow.
To prevent you from programming with a ASCII table on the second monitor, there's a "special" instruction that allows you to save the ASCII value of a character in a specific cell.
This improves the readability of your code when interacting with characters. Because
inc 97 in *5, you can just write
save 'a' in *5.
# Syntax: save '<char>' at *<cell>
# Saves the ASCII value of 'a' in the cell 3 save 'a' at *3 # the same as `inc 97 in *3`, but more readable # Saves the new line character in the cell 6 save '\n' at *6 # the same as `inc 10 in *6`...
With the default
Io Handler implementation, you can read a character from STDIN and
save his ASCII value in a specific cell.
To understand better the IO concept and how it works, learn how to handle I/O operations.
# Syntax: read *<cell>
# Reads whatever is written in STDIN and saves it in the cell 7 read *7 # Reads the next character from STDIN to the current pointer read *@