diff --git a/README.md b/README.md index 6803657..fde18dd 100644 --- a/README.md +++ b/README.md @@ -111,6 +111,10 @@ second argument and store the result in the third argument ### Control Flow - `jmp` jump to the label given by the first argument +- `call` put the next statement to execute on the stack and jump to the label +given by the first argument +- `ret` pop the the next statement to execute off the stack, e.g. returning to +the next execution statement before calling `call` - `lti` execute next statement if argument 1 is less than argument 2 else skip the next statement - `gti` execute next statement if argument 1 is greater than argument 2 else @@ -127,9 +131,11 @@ the first argument ## Interupts -- [0..9] Output to STDOUT +- [0..3] Output to STDOUT - `0` put value of register A as ASCII character on stdout - `1` put value of register A as decimal integer on stdout - `2` put value of register A as hexadecimal integer on stdout - `3` put the string pointed at by register A for the amount of characters - defined by register B on stdout \ No newline at end of file + defined by register B on stdout +- [4..4] Input from STDIN + - `4` get a single ASCII character from STDIN and store it in register A \ No newline at end of file