問題タブ [sequencing]
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.
merge - BamTools を使用して BAM ファイルをマージするには、並べ替えが必要ですか?
バリアント コール用に単一の細菌分離株から生成された 1 組のイルミナ ペアエンド読み取りファイル (たとえば、A_1.fastq.gz と A_2.fastq.gz) があります。まず、読み取り長 (100 bp)、挿入サイズ (約 230 bp)、およびその標準偏差 (約 50 bp) のために、FLASHを使用して重複する読み取りをマージしました。FLASH は、重複しないペアエンド読み取り用に 2 つ、マージされた読み取り (シングルエンド) 用に 1 つの、3 つの読み取りファイルを生成しました。次に、ボウタイを使用してそれらを共通の参照ゲノムに対して整列させ、2 つの bam ファイル (1 つはペアエンド リード用、もう 1 つはシングルエンド リード用) を生成しました。
バリアント呼び出しのカバレッジと読み取り深度を高めるために、両方の BAM ファイルを 1 つにマージしたいと考えています。BAM ファイルの処理専用のBamToolsをこのタスクに使用する予定です。しかし、「bamtools merge」コマンドを呼び出す前に、入力 BAM ファイルをソートする必要があるかどうかはわかりません。ソフトウェアのチュートリアルや他の場所では説明されていません。お役に立てれば幸いです。
c++ - 関数の引数に課される要件は初期化子リストにも適用されますか?
だから私はここで読みました: https://stackoverflow.com/a/598150/2642059これは違法です:
しかし、それは強制的なシーケンスがないためだと思います。これは、イニシャライザ リストの場合に当てはまります。では、これは法規ですか?
gcc - 代入の C++17 シーケンス: まだ GCC に実装されていませんか?
R
とB
バイトのスワッピングをABGR
単語に実装する単純な試みとして、次のコードを試しました
驚いたことに、このコードは C++17 モードの GCC で「機能」しました - バイトがスワップされました
http://coliru.stacked-crooked.com/a/43d0fc47f5539746
しかし、バイトをスワップすることは想定されていません! C++17 では、代入の RHS が LHS の前に [完全に] シーケンスされることになっていることが明確に述べられており、これは複合代入にも適用されます。これは、上記の式で、それぞれの各 RHS が^=
の元の値を使用することになっていることを意味しますabgr
。したがって、最終的な結果は、abgr
単純にB
バイトごとに XOR されたR
バイトである必要があります。これは、Clang が生成するように見えるものです (面白いことに、シーケンスの警告が表示されます)。
http://coliru.stacked-crooked.com/a/eb9bdc8ced1b5f13
GCC アセンブリの概要
それが逆にシーケンスされているように見えることを明らかにします: RHS の前に LHS です。これはバグですか?それとも、これはGCC側のある種の意識的な決定ですか? それとも私は何かを誤解していますか?