SC Workbook
科目 A-1 · 基礎理論

CRC の仕組み

CRC(巡回冗長検査)の説明として,適切なものはどれか。

  1. ア送信データを生成多項式で除算した余りを検査ビットとして付加し,受信側でも同じ生成多項式による除算を行って誤りを検出する。
  2. イ情報ビットの特定の組合せごとにパリティビットを付加し,受信側で求めたシンドロームから 1 ビットの誤りの位置を特定して訂正する。
  3. ウデータ中の値が 1 のビットの個数が偶数又は奇数になるように,1 ビットの検査ビットを付加する。
  4. エデータを 16 ビットごとに区切って 1 の補数和を求め,その結果の 1 の補数を検査用の値として付加する。
正解と解説を見る

正解 ア

この問題の基礎知識

  • 伝送誤りを検出する方式にはパリティチェック,チェックサム,CRC などがあり,誤りを訂正できる符号の代表例にハミング符号がある。
  • CRC は,データのビット列を多項式とみなして生成多項式で割った余りを検査ビットとして付加する方式であり,連続した複数ビットの誤り(バースト誤り)の検出に強い。
  • パリティチェックは 1 の個数の偶奇をそろえる 1 ビットを付加する方式で,偶数個のビットが同時に誤ると検出できない。
  • ハミング符号は複数の検査ビットから求めたシンドロームで 1 ビットの誤りの位置を特定して訂正する。IP や TCP のチェックサムは 1 の補数和を用いる方式である。
ア送信データを生成多項式で除算した余りを検査ビットとして付加し,受信側でも同じ生成多項式による除算を行って誤りを検出する。正解

CRC はデータをビット列の多項式とみなし,生成多項式で割った余りを検査ビットとして付加する。受信側は同じ生成多項式で除算して余りを検査し,誤りを検出する。バースト誤りの検出能力が高い。

イ情報ビットの特定の組合せごとにパリティビットを付加し,受信側で求めたシンドロームから 1 ビットの誤りの位置を特定して訂正する。

複数のパリティビットとシンドロームによって 1 ビット誤りの位置を特定し訂正するのは,ハミング符号の説明である。CRC は誤りの検出を目的とする方式である。

ウデータ中の値が 1 のビットの個数が偶数又は奇数になるように,1 ビットの検査ビットを付加する。

1 の個数の偶奇をそろえるビットを 1 ビット付加するのはパリティチェックの説明である。偶数個のビットが同時に誤ると検出できないなど,CRC より検出能力は低い。

エデータを 16 ビットごとに区切って 1 の補数和を求め,その結果の 1 の補数を検査用の値として付加する。

16 ビット単位の 1 の補数和の補数を付加するのは,IP ヘッダや TCP などで用いられるインターネットチェックサムの説明であり,生成多項式による除算を用いる CRC とは異なる。

検証用の出典出典照合済み
IPA 応用情報技術者試験(レベル 4)シラバス / RFC 1071 Computing the Internet Checksum / RFC 3309 SCTP Checksum Change / RFC 3385 iSCSI CRC/Checksum Considerations
照合の根拠(5 件)
  • ア(正解): CRC はビット列を多項式とみなし多項式の除算で求める
    CRC computation uses polynomial division. A message bit-string M is transformed to a polynomial, M(X), and the CRC is calculated from M(X) using polynomial arithmetic [Peterson 72].
    RFC 3309 · Section 2 (CRC32c)(新しいタブで開きます)
  • ア(正解): 検査ビットは生成多項式に基づいて情報ビットから計算される
    The block of r parity bits is computed from the block of k information bits. The code has a degree r generator polynomial g(x).
    RFC 3385 · Section 3(新しいタブで開きます)
  • ア(正解): 受信側でも同じ計算を行って誤りを検出する(イのシンドロームによる誤り訂正,ウの 1 ビットのパリティは生成多項式による除算ではないので CRC ではないと論理的に排除される)
    Error detection at the receiving end is made by computing the parity bits from the received information block, and comparing them with the received parity bits.
    RFC 3385 · Section 3(新しいタブで開きます)
  • ア(正解)の解説: バースト誤りの検出能力が高い
    Those codes have been used extensively in communications and magnetic recording as they demonstrate good "burst error" detection capabilities
    RFC 3385 · Section 1(新しいタブで開きます)
  • エ(誤り): 16 ビット単位の 1 の補数和の補数はインターネットチェックサムである
    (2) To generate a checksum, the checksum field itself is cleared, the 16-bit 1's complement sum is computed over the octets concerned, and the 1's complement of this sum is placed in the checksum field.
    RFC 1071 · Section 1(新しいタブで開きます)

イ(ハミング符号)とウ(パリティチェック)は個別の一次資料を取得していないが,どちらも生成多項式による除算を用いないため,CRC の定義(RFC 3309/3385)から CRC ではないと排除できる。

問題 ID A1-BAS-0507 · AI 作成のオリジナル問題 · 正解と各選択肢の根拠を出典の原文で確認しています。 照合日 2026-11-07

非公式の学習用アプリです(IPA とは関係ありません)。問題はすべて AI が作成したオリジナルで、誤りを含む場合があります。