## MOUSE Computer Programming Language

 Home Mouse-79 Mouse-83 Mouse-2002 Contact Me David Simpson

### MOUSE-83 REFERENCE

Symbol
Function   Description
<blank>
-   No action.
\$
Program terminator.   Exit.
<number>
Number.   Push a number onto the stack.
+
Add.   Pop two operands from the stack and push their sum.
-
Subtract.   Pop two operands from the stack and push their difference.
*
Multiply.   Pop two operands from the stack and push their product.
/
Divide.   Pop two operands from the stack and push their quotient.
\
Remainder.   Pop two operands from the stack and push the remainder of the first divided by the second.
?
Input number.   Read a number from the keyboard and push it onto the stack.
?'
Input character.   Read a character from the keyboard and push its ASCII code onto the stack.
!
Output number.   Pop a number from the stack and display it on the terminal.
!'
Output character.   Pop an ASCII code from the stack and display the corresponding character on the terminal.
'<char>
Character literal.   Push the ASCII code corresponding the the character onto the stack.
"
Output string.   Display each character between the " and the next " on the terminal. Translate the character ! to <new-line>.
<letter>
Variable.   Convert the letter to an integer in the range 0..25 (A=a=0, B=b=1,...,Z=z=25).
:
Assignment.   Pop two operands from the stack and store the value of the second at the address specified by the first.
.
Dereference.   Pop an address from the stack and push the value stored at that address onto the stack.
<
Comparison.   Pop two operands from the stack. If the first is less than the second, push 1, else push 0 onto the stack.
=
Comparison.   Pop two operands from the stack. If they are equal, push 1, else push 0 onto the stack.
>
Comparison.   Pop two operands from the stack. If the first is greater than the second, push 1, else push 0 onto the stack.
[
Conditional.   Pop a value from the stack. If it is zero or negative, skip over the character until a matching ] is found.
]
-   No action.
(
Start loop.   No action.
)
^
Exit loop.   Exit loop.
#<letter>
Macro call.   Macro call.
@
Exit from macro.   Exit from macro.
%
Replace formal parameter by actual.   Replace formal parameter by actual.
,
End of actual parameter.   End of actual parameter.
;
End of actual parameter.   End of actual parameter.
{
Switch on tracing.   Switch on tracing.
}
Switch off tracing.   Switch off tracing.
~
Comment.   Start of comment.

#### Contact Information

I may be contacted at: