問題タブ [error-detection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1493 参照

binary - メッセージに追加することによる CRC コードの照合

バイナリ文字列 (以下に 16 進数で表示) があり、CRC-16-CCITT を使用しています。すべての CRC が設定値 0x1D0F になるようにします。元のメッセージの末尾に 2 バイトを追加することで、CRC をこの値と一致させることができることはわかっていますが、追加する必要がある値を見つける方法がわかりません。

元。

0x01 0000 0000 0000 0000 0000 0000 0000 0000 13D8

追加された値は 0x13D8 です

この 13D8 をメッセージに追加することで、CRC は目的の 0x1D0F を提供します。

この 0x13D8 値を計算する方法についての助けをいただければ幸いです。

コードできちんと実行できれば、それはおまけです!

0 投票する
2 に答える
1110 参照

crc - データ ロギング アプリケーションに推奨される CRC16 多項式

通常の組み込みNORタイプのシリアルフラッシュメモリ(この場合はAT25DF161)にデータを書き込むデータロギングアプリケーション(マイクロコントローラ上で実行)を作成しています。

データの各パケット (240 または 496 バイト) は、次々に個別にフラッシュに記録されます。フラッシュ メモリの最も一般的な障害はスタック ビットであると考えています。通常は「0」で、消去されていない状態です。シングル ビット イベントを検出できる必要があります。通常は、レコードごとに最大で 2 つです (これは、100,000 回の書き込みサイクル後の最悪のケースであると想定しています)。

16 ビット CRC 計算モジュールが組み込まれたプロセッサを使用しているため、使用する項が少なくても多くてもパフォーマンスに影響はありません。最適な多項式を決定するには、どのような決定を下す必要がありますか?

0 投票する
1 に答える
680 参照

crc - 複数の小さな CRC チェックか、1 つの大きな CRC チェックか?

余分な 16 ビットを使用して CRC チェックで保護する L = 1024 ビットがあるとします。16 CRC-1 (シングル パリティ チェック) または 1 つの CRC-16 チェックのいずれかを選択できます。エラー検出機能の点でどちらのオプションが優れていますか?

16 CRC-1 の場合、いずれかの CRC-1 が失敗するとエラーが宣言されます。別の言い方をすれば、CRC チェックに合格するには、すべての CRC-1 チェックに合格する必要があります。そうしないと、エラーが宣言されます。

複数の CRC-1 システムは次のように実装されます。1024 ビットは、それぞれ 64 ビットの 16 グループに分割され、各 16 ビット グループには 1 つのパリティ ビットが追加されます。

0 投票する
3 に答える
15624 参照

math - コードのハミング距離を求める

質問があります: 次のコードのハミング距離を見つけてください:

答えは 2 です。これはどのように機能しますか? ハミング距離は2本の弦の間だけだと思っていましたか?

0 投票する
1 に答える
755 参照

networking - パリティ エラー検出、特定のスキームがどのように機能しないかの 4 ビットの例

こんにちは、来週の中間試験に向けて少し修正を行っていますが、資料が見つからない、または答え方を理解できないという質問があります。

ここに画像の説明を入力

シングル エラー、ダブル エラー、またはトリプル エラーがどのように発生するかはわかりますが、4 ビット エラーがどのように見えるかはわかりません。

0 投票する
1 に答える
536 参照

algorithm - 失われたビットのエラー訂正コード

送信者からビットのチャンク(たとえば8ビット)としてデータを受信する必要がある場合。

ただし、転送の信頼性が低いため、ビットが失われます。(ビットフリップではありません)つまり、チャンク内のどのビットも存在しない可能性があり、レシーバーは7ビットしか受信しません。

「ハミング符号」などの誤り訂正符号を研究しました。ただし、このコードは、この状況で失われたビットではなく、反転したビットを回復するように設計されています。

0 投票する
1 に答える
580 参照

redundancy - エラー訂正コード

銀行/電信送金を可能にする支払いシステムの場合、支払いを目的の対応するユーザーアカウントに確実に関連付ける必要があります。このため、ユーザーは自分のアカウントに関連付けられている転送に参照番号を含める必要があります。

次の(おそらく一般的な)エラーのうち最大N個を検出して修正できるように、冗長性(追加のシンボル)が組み込まれたこの番号を生成したいと思います。

  • シーケンス内の誤った記号(タイプミス)
  • 2つのシンボルの交換(これは2つの間違ったシンボルと同じだと思います)
  • シーケンスに欠落しているシンボル
  • シーケンス内の追加の記号

少し調べてみたところ、リードソロモンやBCHがよく使われているコードのようです。私が見つけられなかった唯一のことは、それらが最後のケース、つまり余分な記号をサポートしているかどうかです。

また、ランダムな「修正済み」の結果を表示するのではなく、「これは非常にめちゃくちゃなので、修正できません」というエラーモードをコードに持たせたいと思います。これは、まばらな参照番号を生成し、誤って有効な参照番号にヒットする可能性が低いことを期待するだけで実行できると思いますが、「最大5つのエラーを修正できますが、 3つ以上、私はあきらめます。」

何かご意見は?ありがとうございました!

0 投票する
1 に答える
6327 参照

error-correction - ハミングコードの偶数/奇数パリティ

たとえば2バイトのメッセージが受信され、ハミングコードを使用してエンコードされたことがわかっているが、エンコードに使用されるパリティ(偶数/奇数)が不明な場合、奇数と偶数のパリティを持つ両方のハミングコードを適用します。受信したメッセージのエラーを特定するために作業しますか?

0 投票する
2 に答える
7663 参照

hash - チェックサム: CRC またはハッシュ?

パフォーマンスとセキュリティの考慮事項はさておき、完全な雪崩効果を持つハッシュ関数を想定すると、データのブロックのチェックサムにはどちらを使用する必要がありますか: CRC32 または N バイトに切り捨てられたハッシュ? つまり、どちらがエラーを見逃す確率が小さいでしょうか? 具体的には:

  1. CRC32 対 4 バイト ハッシュ
  2. CRC32 対 8 バイト ハッシュ
  3. CRC64 対 8 バイト ハッシュ

データ ブロックは、ネットワークを介して転送され、ディスクに繰り返し格納されます。ブロックのサイズは 1KB から 1GB です。

私が理解している限り、CRC32 は 100% の信頼性で最大 32 ビットの反転を検出できますが、その後は信頼性が近づき1-2^(-32)、一部のパターンではさらに悪化します。完全な 4 バイト ハッシュの信頼性は常に1-2^(-32)です。

8 バイトのハッシュは、全体的な信頼性 (エラーを見逃す可能性) がはるかに優れている2^(-64)はずですが、CRC32 よりも優先する必要がありますか? CRC64はどうですか?

答えは、そのような操作で予想されるエラーの種類によって異なると思います。まばらな 1 ビット フリップや大規模なブロック破損が発生する可能性はありますか? また、ほとんどのストレージおよびネットワーク ハードウェアが何らかの CRC を実装していることを考えると、偶発的なビット フリップは既に処理されているはずではないでしょうか?

0 投票する
1 に答える
1419 参照

linux - BashでJARコマンドの失敗を検出する

この単純なjarコマンドを bash で実行しています。

このコマンドの実行における失敗の検出を自動化するにはどうすればよいですか? 失敗とは、次のような理由でコマンドの実行に失敗したことを意味します。

  • のエラーManifest
  • jarコマンド自体の不適切な使用、
  • ClassNotFoundErrorなどのランダムなエラー

念のために言っておきますが、正しいクラスのセットがアーカイブされているかどうかは知りません。だから失敗とは思わない。

現在、詳細オプションを使用して、すべてがうまくいったかどうかを調べています。しかし、これは時間がかかると思います。jarコマンドが一連のクラスファイルのアーカイブに成功したかどうかを知りたいだけです。これをbashで行う方法はありますか?


私が見つけたこの問題に関する最も近い他のリソースはこれでした:jarファイルのアーカイブが失敗した場合にエラーを検出する方法は? . しかし、私はバッチファイルについての手がかりがなく、bash シェルでこれを行うことに興味があります。