[0151] ASCIIコード,偶数パリティ

平成12年度秋期 (旧)第2情報処理技術者試験より
文字列“STAR”をASCIIでコード化したものを16進表記したものはどれか。ここで、文字コードの8ビット目には、偶数パリティビットが付くものとする。

1DA50C95
53D441D2
659541A5
D354C152

正解

解説

 ASCIIコードと偶数パリティに関する問題です。

 ASCIIコードは、アルファベットの大文字小文字、数字と必要最小限の記号を表現するためのコードです。7ビット、つまり 16進数の 00h ~ 7Fh でこれらの文字を表現できることが特徴です。コンピュータが英語圏で発達してきた経緯もあり、7ビットのASCIIコードは長く利用されてきました。

 偶数パリティは、データ通信の分野で広く利用されています。送信するデータを、キャラクタ単位にパリティビットとよばれるデータを付加し、受信側がキャラクタ単位で “1” の出現数とパリティビットの値を照合して、データ誤りが発生したかどうかを検出するためのものです。偶数パリティの場合、キャラクタ単位での“1” の出現数が偶数のとき、“0”のパリティビットを付加します。偶数パリティに関する詳しい説明は、バックナンバーの0139号を参考にしてください。

 それでは、文字列“STAR”の最初の一文字目、“S" をASCIIコード化してみましょう。ASCIIコード表の“S" から、b1 ~ b7 の値を拾います。



 したがって、“S" は、ASCIIコードの2進数表記で、“1010011”となります。この7ビットの値に、偶数パリティを付加します。“1010011”で“1”の出現数は4、つまり偶数なので、パリティビットは、“0”です。パリティビットをb8となる位置に付加すると、
    01010011”
となり、これは16進数表記で、“53”です。

 以下同様にして、
“T”は、“11010100”、16進数表記で、“D4”です。
“A”は、“01000001”、16進数表記で、“41”です。
“R”は、“11010010”、16進数表記で、“D2”です。


 よって、イが正解となります。
※ 解説の内容は執筆時点のものであり,含まれている情報の正確性,妥当性について保証するものではありません。ご注意ください・・・

関連する(かもしれない)問題