文字列“ET”をASCIIコード化したものを16進表記したものはどれか。
ここで、文字コードの8ビット目には、偶数パリティビットがつく。
| b7 | 1 | 1 | ||||
| b6 | 0 | 0 | ||||
| b5 | 0 | 1 | ||||
| b4 | b3 | b2 | b1 | |||
| 0 | 0 | 0 | 0 | @ | P | |
| 0 | 0 | 0 | 1 | A | Q | |
| 0 | 0 | 1 | 0 | B | R | |
| 0 | 0 | 1 | 1 | C | S | |
| 0 | 1 | 0 | 0 | D | T | |
| 0 | 1 | 0 | 1 | E | U | |
| 0 | 1 | 1 | 0 | F | V | |
| 0 | 1 | 1 | 1 | G | W | |
| ア | 4554 |
| イ | A32B |
| ウ | ACA5 |
| エ | C5D4 |
答え エ
【解説】
文字列“ET”の要素“E”と“T”のASCIIコード表の値を読み出すと
Eは(b7, b6, b5, b4, b3, b2, b1)=(1.0, 0, 0, 1, 0, 1)
Tは(b7, b6, b5, b4, b3, b2, b1)=(1.0, 1, 0, 1, 0, 0)
である。
求めるデータは(パリティビット, b7, b6, b5, b4, b3, b2, b1)の形式で、パリティビットは偶数パリティなのでパリティビットを求めると、“E”の1の個数は3個なので、1の個数を偶数個にするためパリティビットは“1”になります。
同様に“T”を見ると1の個数が3個なので、1の個数を偶数個にするためパリティビットは“1”になります。
すなはち、“E”と“T”に偶数パリティビットを付けて、16進表記にすると、
E=(パリティビット, b7, b6, b5, b4, b3, b2, b1)=(1, 1.0, 0, 0, 1, 0, 1)=C5
T=(パリティビット, b7, b6, b5, b4, b3, b2, b1)=(1, 1.0, 1, 0, 1, 0, 0)=D4
になるので、答えはC5D4(エ)になる。
【キーワード】
・偶数パリティ