7.7.演算
演算には主に算術式、関係式、論理式、文字式の4つがあります。
そのうち今回は算術式を説明します。
要は数値の加減乗除などの数値演算を算術式と言います。演算式は2つの数値または変数の間に演算子を指定する事で記述します。算術演算子の種類には以下のものがあります。
なお、演算の結果が-2,147,483,648〜2,147,483,647の範囲を超えた場合は、超えた値を切り捨てますので注意してください。
演算子
内容
+
加算(左辺と右辺を加算します)
−
減算(左辺と右辺を減算します)
*
乗算(左辺と右辺を乗算します)
/
除算(左辺と右辺を除算します)
%
剰余(左辺と右辺を除算したときの剰余を得ます)
<<
左シフト(2の倍数での乗算:左辺を右辺に指定した数だけ左にシフトします)
>>
右シフト(2の倍数での除算:左辺を右辺に指定した数だけ右にシフトします)
「+−*/」はそれぞれ加減乗除になります。「%」は除算時のあまりを求めるもので、例えば「5%3」ならば「5/3」のあまり「2」が演算結果となります。
次に「<<、>>」というシフト演算子ですが、これは左辺に2の右辺乗を掛けます。つまり、右辺をnとした場合、左辺に2
n
を乗除算(<<は乗算、>>は除算)するのです。
これは、コンピュータが2
n
の演算を得意とする為の特殊な演算法です。2
n
の乗算をするのならばシフトを使ったほうが高速に処理を行います。
算術式の書き方は「X=10+5」などと書けば「10+5」の結果である「15」が変数Xに代入されます。まあ「10+5」のように計算させるまでもなく演算結果が決まっているものは、最初から「X=15」と書くべきでしょうが・・・
まあ単純なものならば、「X=10+5+3」は「X=18」に、「Y=X*16」は「Y=X<<4」にLGPが自動で変更します。