Ases
2.1
Ases interpreter and debugger
|
Ases is an esoteric programming language developed with the objective of be more useful as possible. You can see examples of code clicking here.
To install, just run:
For see help about usage, run:
The documentation is generated with Doxygen. For see it online, click here.
Command | Description |
---|---|
a .. l | Stores the value of the stack to correspondent register |
A .. L | Gets the value of the correspondent register and stores in the stack |
p | Stores the value of the stack in the Data Pointer |
P | Gets the value of the Data Pointer and stores in the stack |
$ | Stores the address of the next instruction in L register |
* | Jumps for the instruction pointed by the value of L register |
( | Jumps for the address of the symbol @ matched in the right |
) | Jumps for the address of the symbol @ matched in the left |
@ | Does nothing |
! | Stores the value of the stack in the data memory location pointed by Data Pointer |
= | Gets the value in the data memory location pointed by Data Pointer and stores in the stack |
> | Increments the value of Data Pointer |
< | Decrements the value of Data Pointer |
+ | Increments the value of the stack |
- | Decrements the value of the stack |
. | Clears the value of the stack |
? | Only executes the next instruction if the value of the stack is zero |
~ | Only executes the next instruction if the value of the stack not is zero |
# | Commentary of one line |
Function | Description |
---|---|
0 | Gets input of one character and stores in the stack |
1 | Prints a character stored in the stack |
2 | Prints the message "ERROR!" and stops the program (exit status = 255) |
3 | Exits the program with the status code defined by the value of the stack |
4 | Adds the value of the A register with the value of the stack |
5 | Subtracts the value of the A register with the value of the stack |
6 | Adds 10 to the stack |
7 | Subtracts 10 of the stack |
8 | Prints the state of the machine |
9 | If A > B, sets stack to zero. One otherwise |