プログラムを少し変更してみよう
次に、いったんPM plusへ戻って(SM+は終了させなくてOKです)、プログラムを変更してみます。図14のように、8行目のP2 = 1;をP2 = 3;にしてみましょう。

修正したら、ビルドしてSM+で動作させます。これまではビルドとディバグは個々に呼び出していましたが、たぶんすでにお気づきのように[ビルド]メニューには「ビルド->ディバグ(A)」という、一連の動作を連続して行ってくれる便利な項目もあります(図15)。
![図15:プログラムを修正したら、[ビルド->ディバグ]を行う](http://cz-cdn.shoeisha.jp/static/images/article/3727/15.gif)
P2 = 1;をP2 = 3;に変更しただけですから、ほとんどの方が文法エラーなどなしにSM+へ制御が移ったと思います。ミスタイプしてしまってエラーが出たときは、落ち着いて修正し、再度[ビルド->ディバグ]をしてください。SM+ではこれまで同様、
アイコンで1行ずつ実行してみてください。
P2 = 3;を実行すると(黄色いカーソル行が10行目にある状態)、ポート2は3、つまり2進数で0011になるので、図16のように下位2桁分のLEDが点灯します。次に10行目から1ビット左シフトを実行していきますが、このとき表示がどのように変化するか予想を立ててから1行ずつ実行してみてください。さて、予想通りになりましたでしょうか?
あとはみなさんで、P2の初期値(8行目の代入値)や、シフトの量や向きを変えたりして、いろいろ試してみてください。もうあなたは、歌番組や街の光が流れる電飾を見たとき、シフト演算子が頭に浮かぶようになってしまったことでしょう。実際にあのような表示は、実現方法はハードウェア(回路)かソフトウェアかの違いはあっても、「シフト動作(演算)」で実現しているのです。

