CLEM 演算子

このページでは、利用可能なCLEM言語オペレータをリストアップしています。

表 1. CLEM言語演算子
操作 コメント 優先順位(次のセクションを参照)
or 2つのCLEM表現の間に使用する。 どちらかが真の場合、または両方が真の場合に、値として「真」を返します。 10
and 2つのCLEM表現の間に使用する。 両方とも真の場合、trueを返します。 9
= 比較できる任意の2つの項目間に使用する。 ITEM1 が ITEM2 と等しい場合に true を返します。 7
== = と同じです。 7
/= 比較できる任意の2つの項目間に使用する。 ITEM1 が ITEM2 と等しくない場合に true を返します。 7
/== /= と同じです。 7
> 比較できる任意の2つの項目間に使用する。 ITEM1 が ITEM2 より厳密に大きい場合に真を返します。 6
>= 比較できる任意の2つの項目間に使用する。 ITEM1 が ITEM2 以上の場合に true を返します。 6
< 比較できる任意の2つの項目間に使用する。 ITEM1 が厳密に小さい場合は true を返します。 ITEM2 6
<= 比較できる任意の2つの項目間に使用する。 ITEM1 が ITEM2 以下である場合に true を返します。 6
&&=_0 2つの整数間で使用される。 ブール式 INT1 &amp;&amp; INT2 = 0 と同等。 6
&&/=_0 2つの整数間で使用される。 ブール式 INT1 &amp;&amp; INT2 /= 0 と同等。 6
+ 2つの数値を足します: NUM1 + NUM2。 5
>< 2 つのストリングを連結します (例: STRING1 >< STRING2)。 5
- 2つの数字の一方を引く: NUM1 - NUM2。 数字の前に置くこともできます。 - NUM. 5
* 2つの数を掛けるのに使用する: NUM1 * NUM2。 4
&& 2つの整数間で使用される。 結果は、整数 INT1 と INT2 のビット単位の「and」演算です。 4
&&~~ 2つの整数間で使用される。 結果は、 INT1 のビット単位の「and」と、 INT2 のビット単位の補数です。 4
|| 2つの整数間で使用される。 結果は、 INT1 と INT2 のビット単位の「包含論理和」です。 4
~~ 整数型の前に使用します。 INTのビット単位の補数を生成します。 4
||/& 2つの整数間で使用される。 結果は、 INT1 と INT2 のビット単位の排他的論理和です。 4
INT1 << N 2つの整数間で使用される。 INTのビットパターンをNビット左シフトしたものを生成します。 4
INT1 >> N 2つの整数間で使用される。 INTのビットパターンをNビット分右シフトしたものを生成します。 4
/ ある数を別の数で割るために使用する: NUM1 / NUM2。 4
** 2つの数字の間に使用:B Power。 BASE Power Powerを返します。 3
rem 2つの整数の間での使用: INT1 rem INT2. 余りを返します。 INT1 - ( INT1 div INT2 ) * INT2。 2
div 2つの整数の間で使用される: INT1 div INT2。 整数除算を実行します。 2

演算子優先順位

優先順位は、特に中括弧で囲まれていない、2つ以上の内接演算子を含む複雑な式の解析を決定します。 例:

3 + 4 * 5 

(3 + 4) * 5 ではなく 3 + (4 * 5) として構文解析します。これは、相対的な先行操作により、 *+の前に構文解析されることが指示されるためです。 CLEM 言語のすべての演算子には、優先順位の値が関連付けられています。この値が小さいほど、構文解析リストでの重要性が高くなります。つまり、優先順位の値が大きい他の演算子よりも早く処理されます。