X=X+(1AND B>>3)-(1AND B>>2) Y=Y+(1AND B>>1)-(1AND B) この処理では、ボタン操作の結果 変数 B をもとに計算式のみで直接、座標X,Yに反映しています。 ここで使う技術は、ビットシフトと、ビット演算です。 ビットシフト ビットシフトとは、数値のビット構成をベルトコンベアー式に、隣の桁に移動させる演算です。 << 左シフト、>> 右シフトがあります(ここでは算術シフト、論理シフトについては割愛します) B>>3 この記述で B を 3ビット右シフトします。 B が 8 (1000) だったとしましょう。 B>>3 の結果は 1 (0001) です、ビットの位置が右に3つ移動しています。