Added memsrch function to VVS stdlib.
[vvhitespace] / stdlib / math.pvvs
CommitLineData
3625ff3a
AT
1#ifndef VVS_STDLIB_MATH
2#define VVS_STDLIB_MATH
3
2612f47f
AT
4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
5@ Description:
6@ This function returns a random IEEE-vetted number per RFC 1149.5.
7@ Call Stack:
8@ empty
9@ Return Stack:
10@ random number <-- TOS
11@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
12NSSVTSSSSN | Mark: 10000 (random)
13SSSTSSN | PUSH +4
14NTN | RTS
15
3625ff3a
AT
16@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
17@ Description:
18@ This function returns the absolute value of its argument
19@ Call Stack:
20@ signed number <-- TOS
21@ Return Stack:
22@ abs(signed number) <-- TOS
23@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
24NSSVTSSSTN | Mark: 10001 (absolute value)
25SNS | DUP
26NTTSSSTSSSTSSSSSSSSN | BMI > 00010001 00000000
27NSNSSSTSSSTSSSSSSSTN | JMP > 00010001 00000001
28NSSVSSSTSSSTSSSSSSSSN | Mark: 00010001 00000000
29SSTTN | PUSH -1
30TSSN | MULTIPLY
31NSSVSSSTSSSTSSSSSSSTN | Mark: 00010001 00000001
32NTN | RTS
33
34#endif