## new features request

SHL(value;n) - shift left

this essentially integer multiplies value by 2 n times.

anything that gets shifted off the end is lost.

incoming new bits are 0's.

sign bits are kept.

SHR(value;n) - shift right

this essentially integer divides value by 2 n times.

anything that gets shifted off the end is lost.

incoming new bits are 0's.

sign bits are kept.

ROL(value;n;numbits) - rotate a word that is numbits bits wide left n bits

this is similar to SHL, except that bits rotated off the end wind up on the other end.

ROR(value;n;numbits) - rotate a word that is numbits bits wide right n bits

this is similar to SHL, except that bits rotated off the end wind up on the other end.

OR(a;b) - bit or of a, b

truth table is

a b out

-------

0 0 0

0 1 1

1 0 1

1 1 1

XOR(a;b) - exclusive or of a,b

truth table is

a b out

-------

0 0 0

0 1 1

1 0 1

1 1 0

NOR(a;b) - not or of a,b

truth table is

a b out

-------

0 0 1

0 1 0

1 0 0

1 1 0

XNOR(a;b) - exclusive Nor of a,b

truth table is

a b out

-------

0 0 1

0 1 0

1 0 0

1 1 1

AND(a;b) - and of a,b

truth table is

a b out

-------

0 0 0

0 1 0

1 0 0

1 1 1

NAND(a;b) - not and of a,b

truth table is

a b out

-------

0 0 1

0 1 1

1 0 1

1 1 0

NOT(a) - not of a

truth table

a out

-----

0 1

1 0

pow(x,y) - raise x to the power of y

fact(n) - factorial of n

prime(n) - return the nth prime

isprime(n) - returns 1 if number is prime, 0 if not.

CS(y) - basically pow(1024;y), can be negative

SI(y) - basically pow(1000;y), can be negative