エラー修正コード。 ソフトウェア実装オプション

すぐに「キックオフ」しないようにお願いしました、私は試しましたが、これは私のような学生に役立ちます。


エラー修正コード。



バイナリコードのエラーを修正するための多くのコードがあります。 情報の保存または送信中に多くの情報が悪化するため、これは非常に便利です。 これらのコードの例の1つは、「ハミングコード」です(別の著者が既に詳細に記述していますhttp://habrahabr.ru/post/140611/ )。 追加のコードビットをバイナリテキストに追加し、受信したエラーを修正できます。



このようなコードにはそれぞれ、kとnという2つの特性があります。 このようなコードは(n、k)コードと呼ばれます。 ここで、「n」はエンコードされたテキストブロック内の文字の総数を表し、「k」は重要な文字の数です。

たとえば、最も単純なコードは繰り返しコードです。 このコードでは、n-1コードビットがバイナリコードの各文字に追加されます。これにより、重要な文字が複製され、その結果、エラーを修正できます。 たとえば、(3,1)-codeはバイナリシステムの各文字に同じものを2つ追加し、ノイズが多い場合、ブロックの1つの文字が変更された場合、2は同じままで、元の文字を返します。



プロジェクトの説明



私のプログラムでは、このようなコードを2種類使用しました。これは、(3,1)-繰り返しのあるコードと(7,4)-コードで、いわゆる「ハミングコード」の1つです。 しかし、私のプログラムは、他の型コード(n、k)を多くの労力と時間なしで追加できるように書かれています。



目標を達成するために、プレーンテキストをバイナリに変換し、コードビットを追加してテキストを回復する必要がありました。 また、バイナリコードでエラーを発生させるために、テキストをノイズの多いものにする(バイナリコードでエラーを発生させる)プロシージャを作成しました。



次に、ノイズの多いコードをプレーンテキストに変換して、ノイズの効果をユーザーに示しました。 次のステップまでに、残りのノイズの多いコードを修正し、プレーンテキストに変換しました。



プログラムを作成するために、Pascalのヘルプ、自分の知識、および「すばらしい」Google.comを使用しました。



結論と展望。



情報を含むファイルの転送または長期保存中に取得したテキストのエラーを修正するための2つのコードを実装するプログラムを作成しました。 また、Pascalプログラミング言語のスキルも向上しました。



ソースコード



「ユダヤ人のコード」とターボパスカルもおforびします(通常のコンピューターが故障し、2番目のペンティアムに書き込みました)。 このコードは、コンピューターサイエンスのクラスやオリンピックの生徒を支援できます。



All Articles