BIT型変数はどうして使用されるのでしょうか? ソースファイルの可読性が悪くなるように思えます
bit変数(SHORT INT)は大幅にRAMエリアを節約する効果があります。
次の例を見てください。: ここに示された例でbxとbyに使用されている算術演算子(+と−,*)がある場合、最初にbxとbyは byte(int)に拡張され、これはまずいことです。実行スピードとコードサイズを節約するためには次のように書き換えてみます。
例えば: 多少はましになりました(型変換の数が少なくなっている)が、やはりあまりよい形とはいえません。このような演算を行なわせるには、IF文でまずビット操作を行なった後、byte演算を行なわせます。勿論、IF文で使用される演算子は、&&、||、!が効果的です。
例を見てみます。: !と~、&&と&、||と|の違いを思い出してください。
同様に、input()関数も返される値は、bit型です。これをif文で判定するには次の例を使用します。: NOT: int x,y;
short int bx, by;
x=5;
y=10;
bx=0;
by=1;
x = (x+by)-bx*by+(y-by);
z=by;
x = (x+z)-bx*z+(y-z);
if (by || (bx && bz) || !bw)
z=0;
if ( !input( PIN_B0 ) )
if( input( PIN_B0 ) == 0)
1の例はビット演算で処理され、2の例では、byte型へキャストされてから演算されますので悪い例です。
このように、プロセッサーの特色をいかしたコードを出力するように作成されたコンパイラーですから、なるべくコンパクトで実行スピードの速いソースコードを書くべきです。
可読性はコードの書き方とコメント文でかなりカバーできます。