X-Git-Url: http://git.subgeniuskitty.com/vvhitespace/.git/blobdiff_plain/7967fb7d404c4f3d20a598c280230a12ca45880d..4fba07dca7fb9275b51e5095a774fe69eeab4660:/stdlib_tests/3002_lshift.pvvs diff --git a/stdlib_tests/3002_lshift.pvvs b/stdlib_tests/3002_lshift.pvvs index 57beaad..192a4fc 100644 --- a/stdlib_tests/3002_lshift.pvvs +++ b/stdlib_tests/3002_lshift.pvvs @@ -2,28 +2,40 @@ SSSTN | PUSH +1 SSSSN | PUSH 0 NSTTSTTSTN | JSR > 101101 (lshift) -NSTTSSTN | JSR > 1001 (print number from stack) +NSTTTTTSTN | JSR > 111101 (debug:printsignednumber) @ Shift by one. SSSTN | PUSH +1 SSSTN | PUSH +1 NSTTSTTSTN | JSR > 101101 (lshift) -NSTTSSTN | JSR > 1001 (print number from stack) +NSTTTTTSTN | JSR > 111101 (debug:printsignednumber) @ Shift by 62. SSSTN | PUSH +1 SSSTTTTTSN | PUSH +62 NSTTSTTSTN | JSR > 101101 (lshift) -NSTTSSTN | JSR > 1001 (print number from stack) +NSTTTTTSTN | JSR > 111101 (debug:printsignednumber) @ Shift by 63. SSSTN | PUSH +1 SSSTTTTTTN | PUSH +63 NSTTSTTSTN | JSR > 101101 (lshift) -NSTTSSTN | JSR > 1001 (print number from stack) +NSTTTTTSTN | JSR > 111101 (debug:printsignednumber) + +@ Shift all ones until a single one remains. +SSTTN | PUSH -1 +SSSTTTTTTN | PUSH +63 +NSTTSTTSTN | JSR > 101101 (lshift) +NSTTTTTSTN | JSR > 111101 (debug:printsignednumber) + +@ Shift all ones to all zeros. +SSTTN | PUSH -1 +SSSTSSSSSSN | PUSH +64 +NSTTSTTSTN | JSR > 101101 (lshift) +NSTTTTTSTN | JSR > 111101 (debug:printsignednumber) @ All done. NNN | DIE #include -#include +#include