Class CodeBCH

java.lang.Object
   |
   +----CodeBCH

public class CodeBCH
extends Object
Code correcteur d'erreur BCH (Bose - Chaudluri - Hocquenghem).


Variable Index

 o corps
Corps fini sur lequel est basé ce code BCH.
 o d
Nombre d'erreurs que ce BCH peut corriger (d-correcteur).
 o dimensionBCH
Dimension du BCH (c'est la longueur des messages à coder).
 o generateurBCH
Polynôme génerateur de ce code BCH.
 o n
Longueur du BCH (longueur finale des messages codés).

Constructor Index

 o CodeBCH(int, int, Polynome)
Crée un code BCH de longueur n sur F2, d-correcteur.

Method Index

 o calculeSyndromes(Polynome)
Calcule les 2 * d syndromes du message codé.
 o code(Polynome)
Code un message.
 o decode(Polynome)
Decode un message.
 o decode1(Polynome[])
Corrige un erreur d'un message codé, au moyen de calculs sur les syndromes.
 o decode2(Polynome[])
Corrige jusqu'à 2 erreurs d'un message codé, au moyen de calculs sur les syndromes.
 o decode3(Polynome[])
Corrige jusqu'à 3 erreurs d'un message codé, au moyen de calculs sur les syndromes.

Variables

 o n
 int n
Longueur du BCH (longueur finale des messages codés).

 o d
 int d
Nombre d'erreurs que ce BCH peut corriger (d-correcteur).

 o generateurBCH
 Polynome generateurBCH
Polynôme génerateur de ce code BCH.

 o dimensionBCH
 int dimensionBCH
Dimension du BCH (c'est la longueur des messages à coder).

 o corps
 Corps corps
Corps fini sur lequel est basé ce code BCH.

Constructors

 o CodeBCH
 public CodeBCH(int n,
                int d,
                Polynome irreductible) throws CorpsException
Crée un code BCH de longueur n sur F2, d-correcteur.

Parameters:
irreductible - le polynôme irreductible (à coefficient en Z/2Z, donc = {0, 1}) générateur du corps fini sur lequel est basé ce code BCH

Methods

 o code
 public Polynome code(Polynome message)
Code un message.

Parameters:
message - le message à coder, de longueur dimensionBCH
Returns:
le message codé, de longueur n
 o decode
 public Polynome decode(Polynome messageCode)
Decode un message. Il fait appel à la méthode decode pour la correction de d erreurs.

Parameters:
messageCode - le message à décoder
Returns:
le message decodé
 o calculeSyndromes
 private Polynome[] calculeSyndromes(Polynome messageCode)
Calcule les 2 * d syndromes du message codé.

Parameters:
messageCode - un message codé, sous forme de polynôme
Returns:
un array de 2 * d polynômes; chacun d'eux est un syndrome de messageCode
 o decode1
 public int[] decode1(Polynome syndromes[])
Corrige un erreur d'un message codé, au moyen de calculs sur les syndromes.

Parameters:
syndromes - les syndromes du message à décoder
Returns:
un array d'entiers qui contient la position de l'erreur dans le message
 o decode2
 public int[] decode2(Polynome syndromes[])
Corrige jusqu'à 2 erreurs d'un message codé, au moyen de calculs sur les syndromes.

Parameters:
syndromes - les syndromes du message à décoder
Returns:
un array d'entiers qui contient les positions des erreurs dans le message
 o decode3
 public int[] decode3(Polynome syndromes[])
Corrige jusqu'à 3 erreurs d'un message codé, au moyen de calculs sur les syndromes.

Parameters:
syndromes - les syndromes du message à décoder
Returns:
un array d'entiers qui contient les positions des erreurs dans le message