2桁の2進数x1x2が表す整数を x とする。2進数x2x1が表す整数を、x の式で表したものはどれか。ここで、int(r) は非負の実数 r の小数点以下を切り捨てた整数を表す。
ア 2x + 4int(x/2)
イ 2x + 5int(x/2)
ウ 2x − 3int(x/2)
エ 2x − 4int(x/2)
ウ
例えば2桁の2進数の数字を10として考えてみる。
この時、x1 = 1、x2 = 0、x = 2
であり、2進数で01が表す整数は1になる。
ア 2×2 + 4int(2/2) = 4+4×1 = 8
イ 2×2 + 5int(2/2) = 4+5 = 9
ウ 2×2 − 3int(2/2) = 4−3 = 1
エ 2×2 − 4int(2/2) = 4−0 = 4
選択肢で1になるのは ウ である。
【別解】
2進数 x1x2 を10進数で表すと、
x1×21+x2 ×20 = 2×x1+x2 であり、これが整数 xとなる。
また、
x1は、xを使って表すと、int (x/2) であり、
x2は、x − 2×x1 = x − 2int (x/2) である。
従って、 2進数 x2x1を整数で表すと、
(x2x1)2 = 2×x2+x1 = 2×(x − 2int (x/2))+int (x/2)
= 2x−4int (x/2) + int (x/2)
= 2x − 3int(x/2)
目次 | 問2 |