#include #include #include #include #include #define MAX_ZEICHEN 200 int parity( char zeichen ) { /* Hier muss die Paritaetsberechnung eingefügt werden */ return 1; } /* Kanalsimulation * Verarbeite len Daten aus buffer * Mit der Wahrscheinlichkeit prob wird ein Bit verfälscht. * Rückgabewert: Anzahl der veränderten Bits */ int kanal( char *buffer, int len, double prob ){ int i, j, limit; unsigned int pos; int count = 0; /* Um auch kleine Wahrscheinlichkeiten behandeln zu können, * werden zwei Zufallszahlen erzeugt. Nur wenn beide kleiner * als Wurzel(prob) sind wird das jeweilige Bit gedreht. */ limit = (int) (sqrt(prob) * RAND_MAX); for( i=0; i