| + |
( nu1 nu2 -- sum )
|
nu1 + nu2の加算を行います。
|
| - |
( nu1 nu2 -- diff )
|
nu1 - nu2の減算を行います。
|
| * |
( nu1 nu2 -- prod )
|
nu1 * nu2の乗算を行います。
|
| / |
( n1 n2 -- quot )
|
n1 をn2 で割ります。剰余は捨てられます。
|
| /mod |
( n1 n2 -- rem quot )
|
n1 / n2の剰余と商。
|
| << |
( x1 u -- x2 )
|
lshiftの同義語。
|
| >> |
( x1 u -- x2 )
|
rshiftの同義語。
|
| >>a |
( x1 u -- x2 )
|
x1 を u ビット 右に算術シフトします。
|
| */ |
( n1 n2 n3 -- quot )
|
n1 * n2 / n3。
|
| */mod |
( n1 n2 n3 -- rem quot )
|
n1 * n2 / n3の剰余と商。
|
| 1+ |
( nu1 -- nu2 )
|
1を足します。
|
| 1- |
( nu1 -- nu2 )
|
1を引きます。
|
| 2* |
( nu1 -- nu2 )
|
2 を掛けます。
|
| 2+ |
( nu1 -- nu2 )
|
2 を足します。
|
| 2- |
( nu1 -- nu2 )
|
2 を引きます。
|
| 2/ |
( nu1 -- nu2 )
|
2 で割ります。
|
| abs |
( n -- u )
|
絶対値。
|
| aligned |
( n1 -- n1 | a-addr)
|
n1 を次の 4 の整数倍に切り上げます。
|
| and |
( n1 n2 -- n3 )
|
ビット単位の論理積。
|
| bounds |
( startaddr len -- endaddr startaddr )
|
do ループ用に startaddr len をendaddr startaddr に変換します。
|
| bljoin |
( b.low b2 b3 b.hi -- quad )
|
4 バイトを結合して 32 ビットの 4 バイトワードを作ります。
|
| bwjoin |
( b.low b.hi -- word )
|
2 バイトを結合して 16 ビットのワードを作ります。
|
| d+ |
(d1 d2 -- d.sum )
|
2 つの 64 ビット数値の加算を行います。
|
| d- |
(d1 d2 --d.diff )
|
2 つの 64 ビット数値の減算を行います。
|
| even |
( n -- n | n+1 )
|
最も近い偶数の整数 >= n に丸めます。
|
| fm/mod |
( d n -- rem quot )
|
d を n で割ります。
|
| invert |
( x1 -- x2 )
|
x1の全ビットを反転します。
|
| lbflip |
( quad1 -- quad2 )
|
32 ビットの 4 バイトワード内のバイトをスワップします。
|
| lbsplit |
( quad -- b.low b2 b3 b.hi )
|
32 ビットの 4 バイトワードを 4 バイトに分割します。
|
| lwflip |
( quad1 -- quad2 )
|
32 ビットの 4 バイトワードの半分をスワップします。
|
| lwsplit |
( quad -- w.low w.hi )
|
32 ビットの 4 バイトワードを 2 つの 16 ビットワードに分割します。
|
| lshift |
( x1 u -- x2 )
|
x1 を u ビット左シフトし、下位ビットにゼロを埋め込みます。
|
| max |
( n1 n2 -- n3 )
|
n1 と n2 の大きいほうの値を n3 とします。
|
| min |
( n1 n2 -- n3 )
|
n1 と n2 の小さいほうの値を n3 とします。
|
| mod |
( n1 n2 -- rem )
|
n1 / n2
の剰余を計算します。
|
| negate |
( n1 -- n2 )
|
n1 の符号を変更します。
|
| not |
( x1 -- x2 )
|
invert の同義語。
|
| or |
( n1 n2 -- n3 )
|
ビット単位の論理和。
|
| rshift |
( x1 u -- x2 )
|
x1 を u ビット右シフトし、上位ビットにゼロを埋め込みます。
|
| s>d |
( n1 -- d1 )
|
数値を倍精度数に変換します。
|
| sm/rem |
( d n -- rem quot )
|
d を n で割ります。対称除算。
|
| u2/ |
( x1 -- x2 )
|
1 ビット右へ論理シフトし、上位ビットにゼロをシフトします。
|
| u* |
(u1 u2 -- uprod )
|
符号なしの 2 つの数値を乗算し、符号なしの積を生じます。
|
| u/mod |
( u1 u2 -- urem uquot )
|
符号なし 32 ビット数値を符号なし 32 ビット数値で割り、32 ビットの剰余と商を生じます。
|
| um* |
( u1 u2 -- ud )
|
符号なしの 2 つの 32 ビット数値を乗算し、符号なし倍精度数の積を生じます。
|
| um/mod |
( ud u -- urem uprod )
|
ud を u で割ります。
|
| wbflip |
( word1 -- word2 )
|
16 ビットワード内のバイトをスワップします。
|
| wbsplit |
( word -- b.low b.hi )
|
16 ビットワードを 2 バイトに分割します。
|
| wljoin |
( w.low w.hi -- quad )
|
2 ワードを結合して 4 バイトワードを作ります。
|
| xorxor |
( x1 x2 --x3 )
|
ビット単位排他的の論理和。
|