Commit | Line | Data |
---|---|---|
7359501c AT |
1 | @ +1 should remain +1 |
2 | SSSTN | PUSH +1 | |
3 | NSTTSSSTN | JSR > 10001 (abs) | |
4 | NSTTSSTN | JSR > 1001 (print number from stack) | |
5 | ||
6 | @ -1 should become +1 | |
7 | SSTTN | PUSH -1 | |
8 | NSTTSSSTN | JSR > 10001 (abs) | |
9 | NSTTSSTN | JSR > 1001 (print number from stack) | |
10 | ||
11 | @ 0 should remain 0 | |
12 | SSSSN | PUSH 0 | |
13 | NSTTSSSTN | JSR > 10001 (abs) | |
14 | NSTTSSTN | JSR > 1001 (print number from stack) | |
15 | ||
16 | @ Test the most negative number. | |
17 | @ It is impossible to return the true absolute value but should return zero. | |
18 | SSSTN | PUSH +1 | |
19 | SSSTTTTTTN | PUSH +63 | |
20 | NSTTSTTSTN | JSR > 101101 (lshift) | |
21 | NSTTSSSTN | JSR > 10001 (abs) | |
22 | NSTTSSTN | JSR > 1001 (print number from stack) | |
23 | NNN | DIE | |
24 | ||
25 | #include <logic.pvvs> | |
26 | #include <stdio.pvvs> |