![]()
平成22年 秋期 基本情報技術者 午後 問03
問03 5問選択CRC(巡回冗長検査)に関する次の記述を読んで,設問1〜3に答えよ。 CRC は,誤り検出方式の一つである。送信側でデータに誤り検出符号(以下,符号という)を 付加して送信し,受信側で検査することによって,転送の際の誤りの有無を判断する。
設問1 次の記述中の
CRC を採用したパケット転送システムでは,送信側でパケットに符号が付加され,
受信側で誤りの有無を検査する。受信側で誤りが検出されると,
送信側に対して該当パケットの再送を要求する。
100 個のパケットに格納されたデータの転送において,受信側が実際に受信したパケットが,
再送されたパケットも含めて 解答群 設問2 次の記述中の ![]() 任意の長さのビット列の符号を求める計算手順を次に示す。ここで,符号の長さは,n ビットとする。 [ n ビットの符号を求める計算手順〕 (1) 左端及び右端のビットが1である( n + 1 )ビットのビットパターン(以下,マスクという)を定める。 (2) 符号計算対象のビット列の右端に n ビットの0を付加したビット列を作る。 (3) (2) で作ったビット列に対して次の操作を行う。 @ ビット列の左端から調べ,最初に値が1であるビットの位置 p を見つける。 A p を左端とし,p + n を右端とする部分ビット列に対し,マスクで排他的論理和(XOR)を取る。 B ビット列の右端 n ビット以外がすべて 0 になるまで,@及びAを繰り返す。 (4) (3) の操作で得られたビット列の右端 n ビットが符号となる。 図に,マスクが 101 のときの符号(2ビット)を計算する例を示す。
![]() 図 マスクが 101 のときの符号(2ビット)を計算する例
マスク 101 で計算した,符号計算対象のビット列 0010 0110 の
2ビットの符号は 解答群 設問3 次の記述中の ![]() 誤りの有無の検査は,次の手順で行う。 〔誤りの有無の検査手順〕 (1) 受信したビット列に対して,送信側で符号の計算に利用したものと同じマスクを使い, 〔 n ビットの符号を求める計算手順〕の (3) と同じ処理を行う。 (2) 右端 n ビットの値によって,誤りの有無を判断する。
受信したビット列(符号が付加されたビット列)を,誤りの有無の検査手順に従って検査すると,
誤りがなければ最後に残った右端 n ビットの値は 〔手順〕 (1) 符号計算対象のビット列を一つの数値 D と見ると,符号 C は次の式で表せる。
(2) 〔誤りの有無の検査手順〕で得られた結果の右端 n ビットの値 T は,次の式で表せる。
式A (3) 式Aを変形すると次の式となる。
式B (4) 式@と式Bによって ,
マスク 101 で計算した符号を右端に付加したビット列 1001001101 を受信した。
このビット列には a に関する解答群
ウ 符号と同じ エ 符号の各ビットを反転させたものと同じ b に関する解答群 ![]() ![]() c に関する解答群 ウ 誤りが含まれるか否かは判断できない
[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2024 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
|