通信路を介して、LDPC符号化がなされるとともにCRCが付加されたデータを入力する入力部と、前記入力部において入力したデータをもとに、通信路の品質が悪化している区間を検出する悪化区間検出部と、前記入力部において入力したデータを復号する復号部と、前記復号部において復号したデータに対して、CRCによる誤り検出を実行する誤り検出部と、前記誤り検出部において誤りが検出された場合、前記復号部において復号したデータのうち、前記悪化区間検出部において検出した区間であって、前記入力部において入力したデータに対する検査行列の列重みがより小さい区間を優先的に、ビット値を反転させるべきビットとして特定する特定部とを備え、前記誤り検出部は、前記特定部において特定したビットに対するビット値が反転されたデータに対して、CRCによる誤り検出を実行することを特徴とする復号装置。前記特定部は、ビット値が反転されたデータに対しても前記誤り検出部において誤りが検出された場合、前記悪化区間検出部において検出した区間だけをもとに、前記復号部において復号したデータのうち、ビット値を反転させるべきビットを特定することを特徴とする請求項1に記載の復号装置。前記特定部は、ビット値が反転されたデータに対しても前記誤り検出部において誤りが検出された場合、前記復号部において復号したデータのうち、前記入力部において入力したデータに対する検査行列の列重みがより小さい区間を優先的に、ビット値を反転させるべきビットとして特定することを特徴とする請求項1または2に記載の復号装置。前記特定部は、悪化区間検出部において区間が未検出である場合、前記復号部において復号したデータのうち、前記入力部において入力したデータに対する検査行列の列重みがより小さい区間を優先的に、ビット値を反転させるべきビットとして特定することを特徴とする請求項1に記載の復号装置。前記特定部は列重みが所定の値より小さいと判定された区間のみをビット値を反転させるべきビットとして特定することを特徴とする請求項1から4のいずれかに記載の復号装置。通信路を介して、LDPC符号化がなされるとともにCRCが付加されたデータを入力するステップと、入力したデータをもとに、通信路の品質が悪化している区間を検出するステップと、入力したデータを復号するステップと、復号したデータに対して、CRCによる誤り検出を実行するステップと、誤りが検出された場合、復号したデータのうち、通信路の品質が悪化している区間であって入力したデータに対する検査行列の列重みがより小さい区間を優先的に、ビット値を反転させるべきビットとして特定するステップと、特定したビットに対するビット値が反転されたデータに対して、CRCによる誤り検出を実行するステップと、を備えることを特徴とする復号方法。LDPCは無線通信に適用可能である。無線通信では、フェージングの影響によって受信振幅が大きく変動する。そのため、受信振幅が小さくなっている区間やLDPCの列重みが小さい区間において誤りが発生しやすい。一方、復号処理の過程で得られる尤度を示す情報にもとづいて、検出された行の中の信頼性の小さい順に所定数のビットを抽出しても、前述の状況は反映されていない。その結果、ビット反転を行うべきビットの決定精度が高くなく、正しくビット反転を行えないおそれがある。これより、無線通信における通信状況を反映させて、ビット反転すべきビットを決定することが望ましい。本発明はこうした状況に鑑みてなされたものであり、その目的は、品質が変動する通信路においてLDPC符号を適用する場合に、誤りが生じたビットの推定精度を向上させる技術を提供することにある。上記課題を解決するために、本発明のある態様の復号装置は、通信路を介して、LDPC符号化がなされるとともにCRCが付加されたデータを入力する入力部と、入力部において入力したデータをもとに、通信路の品質が悪化している区間を検出する悪化区間検出部と、入力部において入力したデータを復号する復号部と、復号部において復号したデータに対して、CRCによる誤り検出を実行する誤り検出部と、誤り検出部において誤りが検出された場合、復号部において復号したデータのうち、悪化区間検出部において検出した区間であって、入力部において入力したデータに対する検査行列の列重みがより小さい区間を優先的に、ビット値を反転させるべきビットとして特定する特定部とを備える。誤り検出部は、特定部において特定したビットに対するビット値が反転されたデータに対して、CRCによる誤り検出を実行する。この態様によると、通信路の品質が悪化している区間であって列重みがより小さい区間を優先的にビット値を反転させるべきビットとして特定するので、反転すべきビットの特定精度を向上できる。特定部は、ビット値が反転されたデータに対しても誤り検出部において誤りが検出された場合、悪化区間検出部において検出した区間だけをもとに、復号部において復号したデータのうち、ビット値を反転させるべきビットを特定してもよい。この場合、通信路の品質が悪化している区間だけでもビットを反転させるので、修正能力を向上できる。特定部は、ビット値が反転されたデータに対しても誤り検出部において誤りが検出された場合、復号部において復号したデータのうち、入力部において入力したデータに対する検査行列の列重みがより小さい区間を優先的に、ビット値を反転させるべきビットとして特定してもよい。この場合、列重みが小さい区間だけでもビットを反転させるので、修正能力を向上できる。特定部は、悪化区間検出部において区間が未検出である場合、復号部において復号したデータのうち、入力部において入力したデータに対する検査行列の列重みがより小さい区間を優先的に、ビット値を反転させるべきビットとして特定してもよい。この場合、通信路の品質が悪化している区間が検出されなくても、列重みがより小さい区間だけでビットを反転させるので、修正能力を向上できる。特定部は列重みが所定の値より小さいと判定された区間のみをビット値を反転させるべきビットとして特定してもよい。本発明の別の態様は、復号方法である。この方法は、通信路を介して、LDPC符号化がなされるとともにCRCが付加されたデータを入力するステップと、入力したデータをもとに、通信路の品質が悪化している区間を検出するステップと、入力したデータを復号するステップと、復号したデータに対して、CRCによる誤り検出を実行するステップと、誤りが検出された場合、復号したデータのうち、通信路の品質が悪化している区間であって入力したデータに対する検査行列の列重みがより小さい区間を優先的に、ビット値を反転させるべきビットとして特定するステップと、特定したビットに対するビット値が反転されたデータに対して、CRCによる誤り検出を実行するステップと、を備える。なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。本発明によれば、品質が変動する通信路においてLDPC符号を適用する場合に、誤りが生じたビットの推定精度を向上できる。本発明を具体的に説明する前に、まず概要を述べる。本発明の実施例は、LDPC符号化を実行する送信装置と、送信装置において符号化されたデータ以下、符号化データというに対して検査行列をもとに繰り返し復号を実行する受信装置とを含む通信システムに関する。特に、受信装置は、min-sumアルゴリズムを実行する。LDPC符号を適用する場合であっても、通信路の品質が変動すれば、誤り発生の確率が増加する。誤り発生のビットを正確に推定できれば、当該ビットの値を修正することによって、誤りが訂正される。誤りが訂正されると、再送の必要がなくなるので、伝送効率が向上する。誤り発生のビットの推定精度を向上するために、本実施例に係る通信システム、特に受信装置は、次のように構成される。受信装置は、受信した信号をもとに通信路の状況を推定する。ここでは、例えば、通信路の状況として受信振幅を測定する。また、受信装置は、受信振幅がしきい値よりも小さくなっている区間を検出する。一方、受信装置は、受信した信号をLDPC復号し、復号結果に対してCRCによる誤り検出を実行する。誤りが検出されれば、受信装置は、LDPCの検査行列のうち、列重みの小さい部分が使用された区間を特定する。さらに、受信装置は、受信振幅がしきい値よりも小さくなっている区間と列重みの小さい部分が使用された区間との重複部分に含まれたビットを優先的にビット反転させる。受信装置は、ビット反転させた信号に対してCRCによる誤り検出を実行する。図1は、本発明の実施例に係る通信システム100の構成を示す。通信システム100は、送信装置10、受信装置12を含む。送信装置10は、情報データ生成部20、LDPC符号化部22、変調部24を含む。受信装置12は、復調部26、復号部28、情報データ出力部30を含む。情報データ生成部20は、送信すべきデータを取得し、情報データを生成する。なお、取得したデータがそのまま情報データとされてもよい。情報データ生成部20は、情報データをLDPC符号化部22へ出力する。LDPC符号化部22は、情報データ生成部20から、情報データを入力する。LDPC符号化部22は、情報データに対して、所定のフレーム単位でCRCを付加する。さらに、LDPC符号化部22は、LDPCでの検査行列をもとにしたパリティ以下、LDPCパリティというも情報データに付加する。LDPCパリティを付加した情報データが、前述の符号化データに相当する。LDPC符号化部22は、符号化データを変調部24に出力する。図2は、LDPC符号化部22において使用される検査行列を示す。検査行列Hmnは、m行n列の行列である。図2では、検査行列Hmnが3行6列としている。なお、LDPC符号にはレギュラーLDPC符号とイレギュラーLDPC符号が存在する。レギュラーLDPC符号は、各行の重みと各列の重みがそれぞれ一定とされた検査行列により定義される。一方、イレギュラーLDPC符号は、各行の重みおよび各列の重みがそれぞれ一定でないLDPC行列により定義される。各行の重みおよび各列の重みの分布が適切なイレギュラーLDPC符号を用いれば、レギュラーLDPC符号を用いた場合よりも良好なBERBitErrorRate:ビット誤り率特性が得られることが知られている。図3a-bは、LDPC符号化部22において使用される別の検査行列を示す。これらは、IEEE802.16e規格にて採用されている。図3aは、符号化率R=2/3Aの場合である。この場合では、パリティビットの列重みが2および3であり、システマチックビットの列重みが3および6である。図3bは、符号化率R=5/6の場合である。この場合では、パリティビットの列重みが2および3であり、システマチックビットの列重みが2、3、4である。各行列の数字は巡回シフト行列を示しており、1ブロックあたりのビット数は24~96であり、符号長は576~2304ビットである。本実施例では、検査行列として、図2、図3a-bのいずれが使用されてもよいとする。さらに、これら以外の検査行列が使用されてもよい。図1に戻る。変調部24は、LDPC符号化部22から符号化データを入力する。変調部24は、符号化データを変調する。変調方式として、PSKPhaseShiftKeying、FSKFrequencyShiftKeying等が使用される。変調部24は、変調した符号化データを変調信号として送信する。復調部26は、変調部24から通信路、例えば無線伝送路を介して変調信号を受信する。復調部26は、変調信号を復調する。復調には公知の技術が使用されればよいので、ここでは説明を省略する。復調部26は、復調結果以下、復調データというを復号部28へ出力する。また、復調部26は、AGCAutomaticGainControlを含み、AGCによって復調データの振幅が一定値に近づくように制御する。復調部26は、AGC制御電圧も復号部28へ出力する。ここでは、受信した変調信号の振幅が小さくなると、AGC制御電圧が大きくなり、受信した変調信号の振幅が大きくなると、AGC制御電圧が小さくなる傾向にある。復号部28は、復調部26からの復調データを入力するとともに、復調部26からのAGC制御電圧も入力する。復号部28は、復調データに対して、LDPCでの検査行列による復号処理を繰り返し実行する。復号処理として、例えば、min-sumアルゴリズムが実行される。min-sumアルゴリズムは、次の手順で実行される。1.初期化:事前値比を初期化し、最大復号繰り返し回数を設定する。2.チェックノード処理:検査行列の行方向に対して外部値比を更新する。3.変数ノード処理:検査行列の列方向に対して事前値比を更新する。4.一時推定語を計算する。これらの手順の詳細な説明は省略するが、これらの処理の終了後、CRCによる誤り検出が実行される。誤りが検出されなければ、復号部28は、復号結果以下、復号データというを情報データ出力部30へ出力する。誤りが検出されれば、所定のビット値を反転させてから、CRCによる誤り検出が再度実行される。それでも誤りが検出される場合、反転させるビットを変えながら、CRCによる誤り検出が繰り返される。最終的に、誤りが存在する場合、受信装置12は、送信装置10に対して再送を要求する。ここで、復号部28は、受信振幅が小さくなっている区間と、検査行列の列重みが小さくなっている区間との重複部分に含まれたビットを優先的に反転させる。受信振幅が小さくなっている区間は、フェージングなどの影響を多く受けている区間といえる。情報データ出力部30は、復号部28からの復号データを入力する。情報データ出力部30は、復号データをもとに情報データを生成する。なお、復号データがそのまま情報データとされてもよい。この構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。図4は、復号部28の構成を示す。復号部28は、受信振幅変動検出部40、変動位置記憶テーブル42、LDPC復号部44、列重みテーブル46、特定部48、CRC部50、反転部52を含む。復号部28は、図示しない復調部26からの復調データを入力する。復調データは、通信路を介して、LDPC符号化がなされるとともにCRCが付加されたデータといえる。なお、復調データは、フレームを形成しているものとする。また、フレーム同期については公知の技術が使用されればよいので、ここでは説明を省略する。受信振幅変動検出部40は、図示しない復調部26からのAGC制御電圧を入力する。受信振幅変動検出部40は、AGC制御電圧がしきい値よりも大きくなった区間を検出する。AGC制御電圧がしきい値よりも大きくなる場合、受信した信号の振幅が小さくなっており、フェージングの影響を受けているともいえる。そのため、AGC制御電圧がしきい値よりも大きくなった区間を検出することは、通信路の品質が悪化している区間を検出することに相当する。ここでは、図5a-iを使用して受信振幅変動検出部40の処理を説明する。図5a-iは、復号部28の動作概要を説明する図である。すべてに共通して、横軸が時間を示す。図5aは、図1の復調部26にて受信される変調信号を示す。ここでは、nフレームからn3フレームまでを示す。図示のごとく、n1フレームにおいて振幅はほぼ一定であるが、nフレーム、n2フレーム、n3フレームにおいて振幅が変動している。図5bは、図1の復調部26から出力されるAGC制御電圧を示す。前述のごとく、復調部26にはAGCが備えられているので、復調データの振幅は、すべてのフレームにおいてほぼ一定になっている。そのため、図5aにおいて振幅が変動している部分に対応して、図5bのnフレーム、n2フレーム、n3フレームではAGC制御電圧が大きくなっている。受信振幅変動検出部40は、AGC制御電圧としきい値とを比較し、AGC制御電圧がしきい値よりも大きくなっている場合、フェージングが発生していると判定する。このしきい値は、例えば、フェージングの影響が小さい状況、つまり通常の状況でのAGC制御電圧に対して6dB加算した値に設定される。図5cは、フェージング発生の推定結果を示す。フェージングの発生が推定された場合に、推定結果はHighレベルに設定され、フェージングの発生が推定されない場合に、推定結果はLowレベルに設定される。ここで、受信振幅変動検出部40は、受信開始からのデータ数をカウントしながら、Highレベルになったデータのフレーム内での開始位置と終了位置とを取得する。図5dは、フェージング発生による振幅変動がフレームに含まれているかを示す。図5cに示した推定結果のHighレベルがフレーム内に含まれていれば、当該フレームでは、振幅変動有りと示される。一方、図5cに示した推定結果のHighレベルがフレーム内に含まれていなければ、当該フレームでは、振幅変動無しと示される。ここでは、n1フレームにおいて振幅変動無しと示され、他のフレームにおいて振幅変動有りと示される。図5e-iについては後述する。図4に戻る。変動位置記憶テーブル42は、受信振幅変動検出部40から、Highレベルになったデータのフレーム内での開始位置と終了位置とに関する情報を入力し、これらをテーブル化して記憶する。この情報は、図5cのように示され、受信振幅変動中の受信データ位置情報ともいえる。LDPC復号部44は、復調データを入力する。LDPC復号部44は、復調データに対してmin-sumアルゴリズムを実行することによって、復調データを復号する。ここでは、min-sumアルゴリズムを説明する。図6は、復号部28の動作を模式的に表したタナーグラフを示す。これは、図2の検査行列に対応する。タナーグラフでは、b1からb6が変数ノードと呼ばれ、c1からc3がチェックノードと呼ばれる。ここでは、変数ノードの数をnとし、bnをn番目の変数ノードとする。また、チェックノードの数をmとし、cmをm番目のチェックノードとする。変数ノードb1からb6には、LDPC復号部44に入力されたデータy1からy6が接続されている。図4に戻る。チェックノード処理では、チェックノードにつながる変数ノードとの間で、cmからbmへの外部値比αmnが更新される。αmnの計算は、検査行列Hmn=1を満たすすべての組m、nについて、次のようになされる。αmn=aΠsignβmn’min|βmn’|1ここで、n’はAm\n:Amはチェックノードmに接続する変数ノード集合で、\nはnを含まない差集合を示す。また、signはシグネチャ関数、min|βmn’|は絶対値の最小値選択を示す。ここで、aは正規化定数である。図7は、復号部28における外部値比の概要を示す。これも、図2の検査行列に対応する。外部値比α11は、β11’から導出される。図4に戻る。変数ノード処理では、αmnから変数ノードにつながるチェックノードとの間で、bnからcmへの事前値比βmnが更新される。βmnの計算は、検査行列Hmn=1を満たすすべての組m、nについて、次のようになされる。βmn=Σαm’nλn2ここで、λnは、入力データynに等しい。入力データynは、復調部26からの復調データに相当する。また、m’はBn\m:Bnは変数ノードnに接続するチェックノード集合で、\mはmを含まない差集合を示す。図8は、復号部28における事前値比の概要を示す。これも、図2の検査行列に対応する。事前値比β11は、α1’1から導出される。図4に戻る。LDPC復号部44は、チェックノード処理と変数ノード処理を所定回数繰り返した後、一時推定語を計算して終了する。LDPC復号部44は、一次推定語を復号データとして出力する。列重みテーブル46は、通信システム100にて使用されうる少なくともひとつの検査行列に対する列重みに関する情報を記憶しており、LDPC復号部44から、LDPC復号部44が復号に使用している検査行列の指定を入力する。ここで、列重みに関する情報は、検査行列ごとにテーブル形式で記憶されているので、列重みテーブルとも呼ばれる。また、複数の検査行列は、図2、図3a-bであるとする。そのため、列重みテーブル46は、複数の符号化率のそれぞれに応じた列重みテーブルを記憶しているといえる。列重みテーブル46は、フレームに同期して、列重みの小さい区間を列重みテーブルから出力する。CRC部50は、LDPC復号部44から復号データを入力する。CRC部50は、復号データに対して、CRCによる誤り検出を実行する。誤りが検出されない場合、CRC部50は、復号データを図示しない情報データ出力部30に出力する。誤りが検出された場合、CRC部50は、その旨を特定部48に出力するとともに、復号データを反転部52に出力する。特定部48は、CRC部50から誤り検出を通知された場合、変動位置記憶テーブル42から、Highレベルになったデータのフレーム内での開始位置と終了位置とに関する情報を入力する。当該情報は、受信振幅が小さくなった区間に関する情報に相当する。また、特定部48は、列重みテーブル46から、列重みが小さい区間に関する情報も入力する。特定部48は、受信振幅が小さくなった区間に関する情報と列重みが小さい区間に関する情報とをもとに、復号データのうち、ビット値を反転させるべきビットを特定する。具体的に説明すると、受信振幅が小さくなった区間と列重みが小さい区間とが一致する区間に含まれたビットを特定する。複数のビットが特定された場合、特定部48は、列重みが小さくなるほど高くなるような優先順位であって、かつ同一の列重みの場合、フレームの前方に配置されているほど高くなるような優先順位を付与する。これらのビットがビット値の反転候補である。一方、受信振幅が小さくなった区間が変動位置記憶テーブル42に記憶されていない場合、特定部48は、列重みテーブル46から、列重みが小さい区間に関する情報をもとに、復号データのうち、ビット値を反転させるべきビットを特定する。ここでも、複数のビットが特定された場合、特定部48は、列重みが小さくなるほど高くなるような優先順位であって、かつ同一の列重みの場合、フレームの前方に配置されているほど高くなるような優先順位を付与する。特定部48は、ビット値の反転候補を反転部52に通知する。その際、特定部48は、優先順位も反転部52に通知する。反転部52は、CRC部50から、復号データを入力するとともに、特定部48から、ビット値の反転候補および優先順位を入力する。反転部52は、復号データのうち、優先順位にしたがって反転候補のビット値を反転する。これは、復号処理で誤っている可能性の高いビットを選択してビット値を反転させることに相当する。なお、同時に複数ビットのビット値を反転させてもよい。反転部52は、反転後の復号データをCRC部50に出力する。CRC部50は、反転部52においてビット値が反転された復号データに対して、CRCによる誤り検出を再度実行する。誤りが検出されなければ、前述のごとく、復号データが情報データ出力部30に出力される。誤りが検出された場合、反転部52は、復号データのうち、次に優先順位が高いビットのビット値を反転させ、CRC部50は、ビット値が反転された復号データに対してCRCによる誤り検出を実行する。誤りが検出されなくなるまで、このような処理が繰り返される。なお、繰り返し回数の上限値が決められていてもよいし、反転候補がなくなるまで繰り返されてもよい。図5eは、列重みテーブル46から出力される情報であって、かつ列重みの小さい区間に関する情報を示す。ここでは、Highレベルになっている区間が、列重みの小さい区間に相当する。図5fは、特定部48にて特定された区間であって、かつ受信振幅が小さくなった区間と列重みが小さい区間とが一致する区間である。これは、図5cのHighレベルと図5eのHighレベルとが重複する区間に相当する。また、図5fにおけるHighレベルの区間が、ビット値を反転させるべきビットに相当する。図5gは、CRC部50おける誤り検出の結果である。CRCチェック失敗と示されたフレームにおいて誤りが検出されている。図5hは、反転部52においてビット値が反転されたビットの位置を示す。Highレベルになっているビットのビット値が反転される。図5iは、ビット値が反転された復号データに対する誤り検出の結果である。図示のごとく、1回目の誤り検出においてCRCチェック失敗と示されたフレームでも、CRCチェック成功に変わる。図9a-eは、復号部28の動作概要を説明する別の図である。これらは、図5c、e、fを詳細にした図である。ここでは、説明を簡単にするために、1フレームが24ビットの符号化率5/6であるとし、図3bの検査行列を使用する場合を想定する。図9aは、検査行列の列重みを示す。図示のごとく、列重みは2~4で、反転ビット候補は、パリティビットの4ビットを除いて、システマチックビットの列重み2と3とする。優先順位は列重みが小さい順に高くする。もし列重みが同じ場合には、フレームの先頭から順番に優先順位を付与する。その結果、図9b、cのように、優先順位が1~9の順に付与される。ここで、図9bが列重み2のタイミングを示し、図9cが列重み3のタイミングを示す。図9dは、図5cに相当する。図9eは、特定部48において決定された反転ビットの優先順位を示す。以上の操作により、優先順位が高い順にビット反転優先順位1~3のビット反転位置が決定される。反転部52は、優先順位1のビット値を反転させる。それでもCRC部50において誤りが検出される場合、優先順位2のビット値を反転させる。優先順位を下げていきながら、このような処理が繰り返し実行される。1ビット反転処理でも誤りが検出されれば、2ビット反転がなされる。この場合も優先順位が高いビットの組合せから順にビット反転がなされる。なお、無限ループにならないように、繰り返し数に上限値が設けられる。以上の構成による通信システム100の動作を説明する。図10は、復号部28による復号手順を示すフローチャートである。LDPC復号部44は、LDPC復号処理を実行するS10。CRC部50においてCRCチェックが成功すればS12のY、処理は終了される。一方、CRC部50においてCRCチェックが成功しなければS12のN、特定部48は、列重みテーブル46から列重みを取得するS14。受信振幅変動検出部40において受信振幅変動が検出されればS16のY、特定部48、反転部52は、受信振幅変動位置とLDPC列重みの小さい順よりビット反転候補の順位をつけてビット反転を実行するS18。CRC部50においてCRCチェックが成功せずS20のN、所定回数に達していなければS22のN、ステップ18に戻る。一方、所定回数に達すればS22のY、CRC部50は、CRCチェックNGを出力するS24。CRC部50においてCRCチェックが成功すればS20のY、処理は終了される。受信振幅変動検出部40において受信振幅変動が検出されなければS16のN、特定部48、反転部52は、LDPC列重みの小さい順よりビット反転候補の順位をつけてビット反転を実行するS26。CRC部50においてCRCチェックが成功せずS28のN、所定回数に達していなければS30のN、ステップ26に戻る。一方、所定回数に達すればS30のY、CRC部50は、CRCチェックNGを出力するS32。CRC部50においてCRCチェックが成功すればS28のY、処理は終了される。本発明の実施例によれば、受信振幅が小さくなっている区間と列重みが小さい区間とが重複した区間に含まれたビットを優先的に反転するので、誤りが生じやすいビットを特定できる。また、誤りが生じやすいビットを修正するので、修正能力を向上できる。また、修正能力が向上されるので、再送回数を低減できる。また、再送回数が低減されるので、伝送効率を向上できる。また、受信振幅が小さくなっている区間が検出されなくても、列重みがより小さい区間を優先的にビット反転させるので、修正能力を向上できる。また、受信時にフェージングなどの振幅変動があって復号後に誤りが検出されても、誤りをなくすためのビット反転位置の特定精度を向上できる。以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。本発明の実施例において、通信システム100は無線通信システムを前提としているので、送信装置10および受信装置12は、無線通信装置に含まれる。しかしながらこれに限らず例えば、通信システム100は有線通信システムを前提としてもよい。その際、送信装置10および受信装置12は、有線通信装置に含まれる。本変形例によれば、本発明をさまざまな装置に適用できる。本発明の実施例において、特定部48、反転部52は、受信振幅が小さくなっている区間のうち、列重みが小さい区間に含まれたビットを反転させている。しかしながらこれに限らず例えば、ビット値が反転されたデータに対しても誤りが検出された場合、特定部48、反転部52は、受信振幅が小さくなっている区間だけをもとに、復号データのうち、ビット値を反転させるべきビットを特定してもよい。本変形例によれば、受信振幅が小さくなっている区間だけでもビットを反転させるので、修正能力を向上できる。また、ビット値が反転されたデータに対しても誤りが検出された場合、特定部48、反転部52は、復号データのうち、列重みがより小さい区間を優先的に、ビット値を反転させるべきビットとして特定してもよい。本変形例によれば、列重みがより小さい区間を優先的にビットを反転させるので、修正能力を向上できる。また、本発明の実施例において、特定部48、反転部52は、列重みが所定の値より小さいと判定された区間を特定し、列重みが小さくなるほど高くなるような優先順位であって、かつ同一の列重みの場合、フレームの前方に配置されているほど高くなるような優先順位にして、ビットを反転させている。しかしながら、これに限らず特定部48、反転部52は、列重みが所定の値より小さいと判定された区間に関しては列重みによる優先順位をつけることなくフレームの前方に配置されているほど高くなるような優先順位をつけてもよい。また、特定部48、反転部52は、列重みが所定の値より小さいと判定された区間を特定せず、列重みが小さくなるほど高くなるような優先順位であって、かつ同一の列重みの場合、フレームの前方に配置されているほど高くなるような優先順位にして、すべての区間を優先順位の順番にビットを反転させてもよい。本変形例によれば、処理を簡略することができる。なお、特定部48は列重みが同じ場合にフレームの前方からに限らず例えばフレーム後方から優先順位をつけてもよい。