2進数とANDを理解していると解りやすいのですが…。 ボタンが押されると以下のような値がそれぞれ返ってきます。 2進数 10進数 十字キー 1000  8   ↑ 0100  4   ↓ 0010  2   ← 0001  1   → 15は以下の通り 1111  8+4+2+1=15 ANDすると同じ位置が1のところだけのこります。 何も押されていない場合は0、↓の場合は0100となり4の結果となります。よって15でANDすると↑↓←→のどれかが押されると0でない値となります。 14の場合は以下の様になるので→が押されても0000となり、 1110  8+4+2+0=14 13の場合は以下の様になるので←が押されても0000 1101  8+4+0+1=13 よって上手く動きません。