--------------------------パリティチェック
まずはパリティチェックです。
パリティチェックは、一定単位のデータにパリティビットという、誤り検査用のビットを1ビット追加します。
この一定単位のデータをブロックといいます。
このパリティビットを含めて全体で1が偶数個か奇数個になるように、パリティビットに1か0をセットします。、
送り手側は、このパリティビットを含めたデータを送り出し、受け手側はデータを受け取った後に、1の個数を数えて、偶数か奇数かを判断します。
奇数パリティチェックでは、送り手が1の個数が奇数になるように、パリティビットを設定して送り出します。
受け手側では1の個数が奇数かどうかを判断します。
もし、データの1つが壊れていたとすると、1の個数は奇数ではなく偶数になってしまいます。
これで、データ転送の間に誤りが発生したことを検出します。
この方法では、奇数個の誤りが発生したことは分かりますが、偶数個の誤りが発生した場合は検出することができません。
一般的に、この方法を「垂直パリティチェック」と呼びます。
--------------------------水平パリティチェック
では、水平パリティチェックを見ていきましょう。
水平パリティチェックは、一定単位にまとめたブロックの各ブロックの同順位のビットをグループ化して、このグループにパリティビットを付加する方式です。
図では、1ブロックが7ビットで右端がパリティビットで偶数パリティを付加しています。
黄色い部分のビットが、各ブロックのパリティビットになります。
これは、先程説明をした「垂直パリティチェック」になります。
次に7つのブロックをひとまとまりとして、各ブロックの1ビット目をグループ化して、8ブロック目の1ビット目に奇数パリティビットを付加しています。
8ブロック目を、各ブロックをまたがって、パリティチェックすることからBCC(ビーシーシー)と呼びます。
略は、Block Check Character(ブロックチェックキャラクター)です。
図では、緑色のブロックになります。
このように、水平パリティチェックは、各ブロックの同順位ビットにBCCを付加してパリティチェックを行う方式です。
垂直パリティチェックでは、奇数個の誤りは検出できるが、偶数個の誤りは検出できませんでした。
水平パリティチェックと併用することで、より誤り検出の精度が上がります。
--------------------------ハミングコードチェック
ハミングコードチェックは、データを送る前に、送るデータ(ブロック)に一定のルールで計算をしたチェック用データを付加して送りだします。
このチェック用のデータをハミングコードといいます。
通常、4ビットのデータに対して、3ビットのハミングコードを付加します。
データを受け取った側で、ハミングコードを検査して誤りを検出します。
ハミングコードでは、1ブロックにつき1ビットの誤りを検出して、それを訂正することが出来ます。
【基本情報技術者試験対策 ビデオ講座】
基本情報技術者 解説
メモリの誤り検出 基本情報技術者試験
更新日:
--------------------------パリティチェック
まずはパリティチェックです。
パリティチェックは、一定単位のデータにパリティビットという、誤り検査用のビットを1ビット追加します。
この一定単位のデータをブロックといいます。
このパリティビットを含めて全体で1が偶数個か奇数個になるように、パリティビットに1か0をセットします。、
送り手側は、このパリティビットを含めたデータを送り出し、受け手側はデータを受け取った後に、1の個数を数えて、偶数か奇数かを判断します。
奇数パリティチェックでは、送り手が1の個数が奇数になるように、パリティビットを設定して送り出します。
受け手側では1の個数が奇数かどうかを判断します。
もし、データの1つが壊れていたとすると、1の個数は奇数ではなく偶数になってしまいます。
これで、データ転送の間に誤りが発生したことを検出します。
この方法では、奇数個の誤りが発生したことは分かりますが、偶数個の誤りが発生した場合は検出することができません。
一般的に、この方法を「垂直パリティチェック」と呼びます。
--------------------------水平パリティチェック
では、水平パリティチェックを見ていきましょう。
水平パリティチェックは、一定単位にまとめたブロックの各ブロックの同順位のビットをグループ化して、このグループにパリティビットを付加する方式です。
図では、1ブロックが7ビットで右端がパリティビットで偶数パリティを付加しています。
黄色い部分のビットが、各ブロックのパリティビットになります。
これは、先程説明をした「垂直パリティチェック」になります。
次に7つのブロックをひとまとまりとして、各ブロックの1ビット目をグループ化して、8ブロック目の1ビット目に奇数パリティビットを付加しています。
8ブロック目を、各ブロックをまたがって、パリティチェックすることからBCC(ビーシーシー)と呼びます。
略は、Block Check Character(ブロックチェックキャラクター)です。
図では、緑色のブロックになります。
このように、水平パリティチェックは、各ブロックの同順位ビットにBCCを付加してパリティチェックを行う方式です。
垂直パリティチェックでは、奇数個の誤りは検出できるが、偶数個の誤りは検出できませんでした。
水平パリティチェックと併用することで、より誤り検出の精度が上がります。
--------------------------ハミングコードチェック
ハミングコードチェックは、データを送る前に、送るデータ(ブロック)に一定のルールで計算をしたチェック用データを付加して送りだします。
このチェック用のデータをハミングコードといいます。
通常、4ビットのデータに対して、3ビットのハミングコードを付加します。
データを受け取った側で、ハミングコードを検査して誤りを検出します。
ハミングコードでは、1ブロックにつき1ビットの誤りを検出して、それを訂正することが出来ます。
【基本情報技術者試験対策 ビデオ講座】
おすすめ記事
基本情報技術者試験対策テキスト
基本情報技術者試験対策 テキスト クラウドノーツ® 基本情報技術者試験対策 YouTubeを始めたけれど、スマホで見ていたら画面が小さくて見ずらいといったお悩みの方はいらっしゃいませんか? そんな方に ...
システムの稼働率 MTBF 平均故障間隔 基本情報技術者試験対策
システム システムの稼働率 システムの稼働率を計算するにあたって、つぎのような必要な項目があります。 まず、MTBF 平均故障間隔とは、システムや機器が稼働を開始してから次に故障するまでの平均稼働時間 ...
半加算器 全加算器 基本情報技術者試験対策
論理回路 半加算器 全加算器 この講習では、半加算器と全加算器について見ていきましょう。 半加算器回路は、2進数の足し算を行う際に使用される回路です。 入力側AとBから2つの信号を入力し、その入力信号 ...
セキュリティ ディジタル証明書 過去問題2 基本情報技術者試験
セキュリティ セキュリティ ディジタル証明書 過去問題 解説 この問題は「ディジタル証明書」で、検証できることは、「送信者が正しいこと」と「改ざんの有無」となります。 「送信者が正しい」というのは、受 ...
-基本情報技術者 解説
-ハミングコードチェック, パリティチェック, メモリの誤り検出, 基本情報技術者試験対策