全体表示

[ リスト ]

前回に続いてまだ2進数を勉強しているさるです。

問題
0以上255以下の整数nに対して,
イメージ 1と定義する。next(n)と恒等的に等しい式はどれか。ここで,x AND y 及び x OR y は,それぞれxとyを2進数表現にして,けたごとの論理積及び論理和をとったものとする。

回答群
ア. (n+1) AND 255 >>> 正解
イ. (n+1) AND 256
ウ. (n+1) OR 255
エ. (n+1) OR 256

ひつこいですが、日本語がわかりません
「恒等的」ってなに?助けてGoogle先生!
Yhoo!知恵袋から察するに
恒等的に等しい」とは「どのような場合でも等しい」ということらしい


んで論理演算の復習
論理積(AND演算)
絵にした時のこれ
イメージ 2
表示にした時のこれ
x y a AND b
111
100
010
000


論理和(OR演算)
絵にした時のこれ
イメージ 3
表示にした時のこれ
x y a OR b
111
101
011
000

0以上255以下の整数n」ってことは、255は、2進数で書くと
1111111
ということで7bitで書ける範囲ってことです。
next(n) ってのは n + 1 になるってことです。

next (255) = 0
in : 1111111
out : 0000000

next (254) = 255
in : 1111110
out : 1111111

next (2) = 3
in : 0000010
out : 0000011

next (1) = 2
in : 0000001
out : 0000010

next (0) = 1
in : 0000000
out : 0000001

こうなる論理演算を選ぶわけで、
回答群 には (n + 1) と (255 か 256) があるからこの組み合わせの論理演算なわけで、
組み合わせた後に (n + 1) になるってことで、
2進数で「256」と「255」は
(256)10000000
(255)01111111
なわけだ。

論理和(OR)にしちゃうと 255 でも 256 でも (n + 1) と組み合わせると (n + 1) にはならないと思う。
やってみると

(256)10000000
(008)00001000
(OR) 10001000 = 264

(255)01111111
(008)00001000
(OR) 01111111 = 255

ってな感じ。
おや、書くとわかった、おんなじ値が答えになるのは
255 との論理積の場合だってことで答えは
「 ( n + 1) AND 255 」

書かなきゃわかんないって・・・・

他の賢い人々を見てみよう
定義式をみると、0なら1、1なら2と1ずつ足していって255だったら0にもどるという。いわゆる256進カウンタであることがわかります。これを2進数で考えます。255とは11111111です。ここで1を加えると0になるので100000000が0になる処理を考えると選択肢アが正解だとわかります。

さるには最後がさっぱりさっぱりな説明・・・

 ア     『(n +1)AND 255』は、255を2進数で表すと“1111 1111”なので、n =0のとき、next(n )=1になり、n =255のとき、next(n )=0になり、定義と一致する。
 イ     『(n +1)AND 256』は、256を2進数で表すと“1 0000 0000”なので、n =0のとき、next(n )=0になり、定義と一致しない。
 ウ     『(n +1)OR 255』は、255を2進数で表すと“1111 1111”なので、n =0のとき、next(n )=255になり、定義と一致しない。
 エ     『(n +1)OR 256』は、256を2進数で表すと“1 0000 0000”なので、n =0のとき、next(n )=257になり、定義と一致しない。

自分で書いてみないとよくわからない説明・・・

n が 255 の場合・・・
 ↓
255+1=256
 ↓
256と255は2進で
0001 0000 0000
0000 1111 1111
 ↓
これらの AND は
0000 0000 0000
で、ゼロになります。

255未満で、例えば n が 254 については・・・
 ↓
254+1=255
 ↓
255と255は2進で
0000 1111 1111
0000 1111 1111
 ↓
これらの AND は
0000 1111 1111
で、255 。n+1 になりました。

ここまで書いてもらうと「わかった!」ってなる。
ガンバ!自分!

2進数を書くには「等幅フォント」に限りますね


出典

この記事に

閉じる コメント(0)

コメント投稿

顔アイコン

顔アイコン・表示画像の選択

名前パスワードブログ
絵文字
×
  • オリジナル
  • SoftBank1
  • SoftBank2
  • SoftBank3
  • SoftBank4
  • docomo1
  • docomo2
  • au1
  • au2
  • au3
  • au4
投稿

.


みんなの更新記事