誤り検出・訂正符号とは?あやまりけんしゅつ・ていせいふごう
誤り検出・訂正符号とは、伝送や記憶の途中で起きるビットの誤りを、冗長なビットを付加することで検出、あるいは自動的に訂正する技術。パリティビットは1ビットの誤り検出、ハミング符号は1ビット誤りの訂正と2ビット誤りの検出、CRC(巡回冗長検査)は連続した誤りを含む伝送誤りの検出に使われる。冗長ビットを増やすほど扱える誤りの範囲は広がるが、そのぶん実効的な伝送効率が落ちるという取引になる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
通信路や記憶媒体から雑音を完全に取り除くことはできない。誤りを起こさない努力の限界を認めたうえで、起きた誤りに受信側で気づける形へデータを作り替える、という方向へ転じたのが符号理論である。往復に時間がかかる相手や再送を頼めない相手(宇宙探査機、光ディスクの傷)では、検出して再送を求めるのではなく受け取った側だけで復元できなければならない——検出と訂正が別の技術として並ぶのはこのためである。
具体例
7ビットのデータに偶数パリティを1ビット付けると、1ビットの反転が起きたときに1の個数の偶奇が崩れて誤りを検出できる。ECCメモリはハミング符号系の符号で1ビット誤りの訂正と2ビット誤りの検出(SEC-DED)を行い、イーサネットのフレームは末尾のFCSにCRC-32を持ち、誤りのあるフレームを破棄する。
試験での引っ掛け
パリティビットは誤りの「検出」はできても、どのビットが誤ったかの特定や「訂正」は基本的にできない。偶数パリティでは2ビットが同時に反転すると偶奇が元に戻るため検出もできない。CRCは検出専用で訂正はしない、という役割の線引きも定番の出題である。
関連用語
出た過去問
出典:平成30年度 秋期 応用情報技術者試験 午前 問9(IPA)
メモリの誤り制御方式で,2ビットの誤り検出機能と,1ビットの誤り訂正機能をもたせるのに用いられるものはどれか。
正解:ハミング符号
要点:ハミング符号は1ビット誤り訂正と2ビット誤り検出を担う。
ハミング符号は、データビットに複数の検査ビットを付加し、誤りの有無だけでなく誤った位置まで特定できる誤り訂正符号である。メモリ(ECCメモリ)では一般にSEC-DED方式として用いられ、1ビット誤りの訂正と2ビット誤りの検出を同時に実現する。パリティやチェックサムは検出のみで、訂正はできない。
出典:平成30年度 春期 応用情報技術者試験 午前 問3(IPA)
ハミング符号とは、データに冗長ビットを付加して、1ビットの誤りを訂正できるようにしたものである。ここでは、X1, X2, X3, X4の4ビットから成るデータに…
正解:0110011
要点:ハミング符号は不成立の検査式の共通ビットが誤り位置
与えられた符号1110011をX1X2X3P3X4P2P1=1,1,1,0,0,1,1と対応させ、3つの検査式を計算する。P1の式は1⊕1⊕0⊕1=1、P2の式は1⊕1⊕0⊕1=1、P3の式は1⊕1⊕1⊕0=1と、3式すべてが0にならない。3つの式すべてに共通して現れるのはX1だけなので、誤りビットはX1であり、これを0に反転した0110011が正しい符号となる。
出典:令和元年度 秋期 応用情報技術者試験 午前 問23(IPA)
出典:令和2年度 10月試験 応用情報技術者試験 午前 問10(IPA)
メモリの誤り検出及び訂正を行う方式のうち、2ビットの誤り検出機能と、1ビットの誤り訂正機能をもつものはどれか。
正解:ハミング符号
要点:ハミング符号は1ビット訂正・2ビット検出ができる
ハミング符号は複数の検査ビットを付けることで、1ビットの誤りなら位置を特定して訂正でき、2ビットの誤りは検出できる(SEC-DED)。パリティやチェックサムは誤りの有無を知るだけで、誤った位置を特定できないため訂正はできない。
出典:令和3年度 秋期 応用情報技術者試験 午前 問4(IPA)
図のように16ビットのデータを4×4の正方形状に並べ、行と列にパリティビットを付加することによって何ビットまでの誤りを訂正できるか。ここで、図の網掛け部分はパリ…
正解:1
要点:水平垂直パリティは1ビット訂正・2ビット検出が限界
行と列にパリティを付ける水平垂直パリティでは、1ビットの誤りが起きると誤りのある行と列がそれぞれ1つずつ特定でき、その交点のビットを反転すれば復元できる。したがって訂正できるのは1ビットまでである。2ビット誤りは検出できる場合があっても位置を一意に特定できず、訂正はできない。
出典・参考
公式シラバスの1 基礎理論 > 4. 通信に関する理論 > (1) 伝送理論に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。