• ベストアンサー

データ伝送の誤り訂正の技術について

nuubouの回答

  • ベストアンサー
  • nuubou
  • ベストアンサー率18% (28/153)
回答No.2

crcで使われる多項式の係数は普通は0と1からなる体です その体上での足し算は 0+0=0,0+1=1,1+0=1,1+1=0でありまさにmod2の足し算なのです その体上でのかけ算は 0・0=0,0・1=0,1・0=0,1・1=1です 係数が実数の普通の多項式間除算によって余りを出す場合には 「割る方の多項式」にxのべき乗と適当な実数をかけたものを「割られる多項式」から引く演算を繰り返して実行して最終的に「割る方の多項式」の多項式より次数が小さい多項式を余りとして求めますね 今回は同じことを上の体を係数とする多項式で行うだけで同じです ただ引き算は足し算と同じですし0と1しか現れないのでむしろ簡単です 「割られる多項式」の次数をn-1とし「割る方の多項式」の次数をmとすれば 最大n-m回多項式間の足し算をすれば余りが得られます

1976no12ri29
質問者

お礼

ありがとうございました。参考になりました。また機会があればよろしくお願いします。

関連するQ&A

  • モジュロ除算について教えて下さい。お願いします。

    現在、CRC演算回路(Cyclic Redundancy Check)の勉強をしているのですが、モジュロ2除算というものがよくわからないので、教えて下さい。何か、Ex-ORを使用して演算しているのですが、どうしてそのような演算結果で、余りが出るのかわからないので、よろしければ、詳しく教えて下さい。よろしくお願いします。

  • BCH誤り訂正

    BCH誤り訂正なんですが 受信した符号を多項式で割ってあまりから誤りビットがでるのですが 訂正能力を超えた場合はどうでしょうか? 例えば2ビットまで訂正できるBCHで3ビット誤った符号を受信したときは 全く異なる訂正をしてしまうと思うのですが 何か手はあるのでしょうか? 普通はBCHのあとにCRCを行うのですがBCH内で演算して誤りビット数は出せるのでしょうか?

  • 技術者試験などに「メモリの誤り制御方式」と言って

    技術者試験などに「メモリの誤り制御方式」と言って ハミング符号 奇数パリティ 偶数パリティ 水平パリティ チェックサム CRC などありますが、これらは実際にどのような場面で有効活用されている のでしょうか。 「主記憶」と「HDD」の間でデータの送受信をする時に、情報に誤りがないか どうかを検出したり訂正するという解釈なのでしょうか。 以上、よろしくお願いします。

  • 誤り制御について教えてください!

    情報処理試験の勉強をしているのですが、データ伝送の誤り制御(パリティチェック、CRCなど)は実際には、具体的にどのように、どんな技術と併せて使われるのでしょうか? 個人的な考えでは同期方式などと組み合わせて使い、同期フレーム等ごとに誤りをチェックするのでは、と考えているのですが、どの参考書やサイトでも、基本的な用語解説以上のことは書いてないので、中途半端な知識のままで腑に落ちません。 大事な分野だと思うのでしっかりした知識を身につけたいです。 お判りになられる方、また詳しい解説があるサイトがありましたら教えてください。よろしくお願いします。

  • 差動符号化(NRZI)について

    通信の「符号化技術」についてなのですが なぜ符号化をするのか がわかりません。 いろいろ本屋に行ってデータ通信に関する本を読んだのですが 「これ」というものがありません。  また、論理回路でOR、AND、Ex-ORなどの操作をすることの「意味」はどのように考えればよいのでしょうか。演算の仕方はわかってきたのですが、これらの操作の「意味」がわかりません。  もし知っている方、わかりやすい本を知っている方がいましたら是非教えて下さい。よろしくお願いします。

  • 最先端の誤り訂正技術について

    単純に興味があるのですが、最先端の誤り訂正技術はどのようなものがあるのでしょうか? かなり漠然とした質問で申し訳ないのですが、詳しく載っている論文やサイト等をお教えいただければ幸いです。 よろしくお願いいたします。

  • 誤りを訂正

    次の文の誤りを訂正しなさい。 Shadows grow longer and longer when it gets dark. という問題がわかりません。教えてください。

  • 論理演算

    ビットの判定するために次のコードをしました。 if ( A And 2 = 2 ) or ( A And 4 = 4 ) Then ~ Aの論理積の結果が2か4ならばThen以下の処理の中に入っていってもらいたいのです。 ところが上記のコードでは演算式になってしまっているようで、 結果的にAが0以外ならば全てThenに入ってしまうザルコードになってしまいました。 散々つつきまわって以下のように( ) で括ればいいことが分かりました。 if (( A And 2 ) = 2 ) or (( A And 4 ) = 4 ) Then ~ ( )で括ればいいというのは分かりましたが、理由はさっぱり分かりません。 一番最初に書いたコードでも正常に見えるからです。 納得がいきませんので、どなたか説明よろしくお願い致します。

  • 誤り訂正符号

    3誤り訂正符号と4誤り訂正符号のロケーションを求める方程式を教えてください(>_<)

  • 文法の誤りの訂正

    1.Columbus has discovered America. 2.Man first walked on the moon. 3.I travelled all my life.I went everywhere. 4.I've learnt English. 5.I've been losing my passport. の文法の誤りを訂正する問題なのですが、私には1番しか分かりません。 1番は歴史上の事なので、現在完了ではなく過去形で Columbus discovered America.となると思います。 教えて下さい。