演算子

NCプログラムでは数学と同じように、四則演算(+,-,×,÷)や比較(<,=,>)、論理演算(AND,OR)などを行うことができます。数学とは少し異なった記号を使用しますので、間違えないように注意しましょう。


算術演算子

NCコード 意味
+加算(+)
-減算(−)
*乗算(×)
/除算(÷)
=代入

他のページでも書きましたが、NCプログラムでは"="は、等しいという意味ではなく代入です。"#100=10."のように代入は変数に行い、それ以外には使用しません。

四則演算では"#100=10. + 5. * 10."となっていれば、右辺側の計算結果が#100に代入されます。計算される順番は数学と同じで、基本的には左側から計算され、乗算、除算がある場合は、加算、減算よりも先に計算されます。この場合は"60."が"#100"に代入されます。

また、"[]"を使用することで計算が行われる順番を変えることもできます。"#100=[10. + 5.] * 10."とした場合はまず、"[]"の中の"10. + 5."が先に計算されてから、"* 10."の計算が行われます。この場合"#100"には"150."が代入されます。

四則演算は変数への代入だけでなく、アドレスの後に続く数値にも使用することができます。この場合は"X[10.+20.] Y[5.-2.]"のように、計算式を"[]"で括る必要があります。

除算を行う時の注意点として、"#100 = 0 / 1"では、"#100"には"0"が代入されます。"0 / 1"は"0"になりますから、当然と言えば当然なのですが、逆に"#100 = 1 / 0"は、"0で除算されました"というアラームが出て計算できません。これは、"1 / 0"は"0"にはならないためです。変数を使用する場合にも、割る数が"0"になるとアラームが出ますので、注意が必要です。

詳しくは0で割ると計算できない理由のページに載せてありますので、興味がある方はご覧ください。

比較演算子

NCコード 意味
EQ左辺と右辺が等しい
(=)
NE左辺と右辺が等しくない
(≠)
LT左辺が右辺より小さい
(<)
LE左辺が右辺以下である
(<=)
GT左辺が右辺より大きい
(>)
GE左辺が右辺以上である
(>=)

比較演算子は主に条件分岐(IF)や繰り返し(WHILE)などで使用されます。

"IF [#100 EQ 1] GOTO200"のように、比較演算を行っている部分は"[]"で括る必要があります。

"IF [[#100+1] EQ #1] GOTO300"のように、計算式を入れることもできます。この場合も計算式を"[]"で括る必要があります。

論理演算子

NCコード 意味
OR 論理和
どちらか一方でも成立すれば真
XOR 排他的論理和
両方が成立しなければ真
AND 論理積
両方が成立すれば真
当サイトのPDF版を作成しました

教育資料やリファレンスとして使用して頂ければと思います。NCプログラムの教科書


メニュー
NC旋盤
サブメニュー
OSP(オークマ)
雑学
NCプログラマの為の数学