【 R-CODE Operator 早見表 】
演算
算術演算を行い、結果を変数
<var> に格納します。
<var> 変数名
<value> 値(変数名もしくは定数)
ADD:<var>:<value> <var>
← <var> +
<value> 加算
SUB:<var>:<value> <var>
← <var> - <value> 減算
MUL:<var>:<value> <var>
← <var> * <value> 乗算
DIV:<var>:<value> <var>
← <var> / <value> 除算
MOD:<var>:<value> <var>
← <var> %
<value> 剰余
AND:<var>:<value> <var>
← <var> &
<value> ビット毎の論理積
IOR:<var>:<value> <var>
← <var> |
<value> ビット毎の論理和
XOR:<var>:<value> <var>
← <var> ^
<value> ビット毎の排他的論理和
NOT:<var>:<value> <var>
← ~
<value> ビット毎の論理否定
LAND:<var>:<value>
<var> ← <var> AND
<value> 論理積
LIOR:<var>:<value>
<var> ← <var>
OR <value> 論理和
LNOT:<var>:<value>
<var> ← NOT
<value> 論理否定
RND:<var>:<from>:<to> <var>
← 範囲 <from>〜<to> の一様乱数値
乱数の種は
SET:Seed:<seed> で設定できます。
上記演算に加え、下記に揚げたスタック演算が用意されています。
被演算数をスタックより POP し、結果をスタックに
PUSH します。
ADD <push>
← <pop2> + <pop1> 加算
SUB <push>
← <pop2> - <pop1> 減算
MUL <push>
← <pop2> * <pop1> 乗算
DIV <push>
← <pop2> / <pop1> 除算
MOD <push>
← <pop2> % <pop1> 剰余
AND <push>
← <pop2> &
<pop1> ビット毎の論理積
IOR <push>
← <pop2> |
<pop1> ビット毎の論理和
XOR <push>
← <pop2> ^
<pop1> ビット毎の排他的論理和
NOT <push>
← ~
<pop1> ビット毎の論理否定
LAND
<push> ← <pop2> AND
<pop1> 論理積
LIOR
<push> ← <pop2>
OR <pop1> 論理和
LNOT
<push> ← NOT
<pop1> 論理否定
EQ
<push> ← <pop2> == <pop1>
等しい
NE
<push> ← <pop2> <>
<pop1> 等しくない
LT
<push> ← <pop2>
< <pop1> より小さい
LE
<push> ← <pop2> <=
<pop1> より小さいか等しい
GT
<push> ← <pop2>
> <pop1> より大きい
GE
<push> ← <pop2> >=
<pop1> より大きいか等しい
RND:<from>:<to> <push>
← 範囲 <from>〜<to> の一様乱数値
RND:<to>
<push> ← 範囲 0 〜<to> の一様乱数値
※
スタックから POP される順に
<pop1> <pop2> です。
PUSH:x
PUSH:y
SUB
POP:z
…とした場合、z の内容は x - y になります。(
y - x ではありません)
スタック
PUSH:<var> 変数値または定数をスタックに積みます。
POP[:<var>]
変数にスタックから値を取り出します。
<var>
を指定しない場合は、取り出した値は捨てられます。
DUP
スタックトップを複製しスタックに積みます。
JT:<label> スタックを
POP し、その内容が真であれば <label> にジャンプします。
JF:<label> スタックを
POP し、その内容が偽であれば <label> にジャンプします。
注意:サブルーチンまたはスコープをまたがってのスタック操作は出来ません。