亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? rs.cpp

?? 在GF(8)域內(nèi)
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
        u++ ;
        if (d[u]==-1)
          { l[u+1] = l[u] ;
            for (i=0; i<=l[u]; i++)
             {  elp[u+1][i] = elp[u][i] ;
                elp[u][i] = index_of[elp[u][i]] ;
             }
          }
        else
/* search for words with greatest u_lu[q] for which d[q]!=0 */
          { q = u-1 ;
            while ((d[q]==-1) && (q>0)) q-- ;
/* have found first non-zero d[q]  */
            if (q>0)
             { j=q ;
               do
               { j-- ;
                 if ((d[j]!=-1) && (u_lu[q]<u_lu[j]))
                   q = j ;
               }while (j>0) ;
             } ;

/* have now found q such that d[u]!=0 and u_lu[q] is maximum */
/* store degree of new elp polynomial */
            if (l[u]>l[q]+u-q)  l[u+1] = l[u] ;
            else  l[u+1] = l[q]+u-q ;

/* form new elp(x) */
            for (i=0; i<nn-kk; i++)    elp[u+1][i] = 0 ;
            for (i=0; i<=l[q]; i++)
              if (elp[q][i]!=-1)
                elp[u+1][i+u-q] = alpha_to[(d[u]+nn-d[q]+elp[q][i])%nn] ;
            for (i=0; i<=l[u]; i++)
              { elp[u+1][i] ^= elp[u][i] ;
                elp[u][i] = index_of[elp[u][i]] ;  /*convert old elp value to index*/
              }
          }
        u_lu[u+1] = u-l[u+1] ;

/* form (u+1)th discrepancy */
        if (u<nn-kk)    /* no discrepancy computed on last iteration */
          {
            if (s[u+1]!=-1)
                   d[u+1] = alpha_to[s[u+1]] ;
            else
              d[u+1] = 0 ;
            for (i=1; i<=l[u+1]; i++)
              if ((s[u+1-i]!=-1) && (elp[u+1][i]!=0))
                d[u+1] ^= alpha_to[(s[u+1-i]+index_of[elp[u+1][i]])%nn] ;
            d[u+1] = index_of[d[u+1]] ;    /* put d[u+1] into index form */
          }
      } while ((u<nn-kk) && (l[u+1]<=tt)) ;

      u++ ;
      if (l[u]<=tt)         /* can correct error */
       {
/* put elp into index form */
         for (i=0; i<=l[u]; i++)   elp[u][i] = index_of[elp[u][i]] ;

/* find roots of the error location polynomial */
         for (i=1; i<=l[u]; i++)
           reg[i] = elp[u][i] ;
         count = 0 ;
         for (i=1; i<=nn; i++)
          {  q = 1 ;
             for (j=1; j<=l[u]; j++)
              if (reg[j]!=-1)
                { reg[j] = (reg[j]+j)%nn ;
                  q ^= alpha_to[reg[j]] ;
                } ;
             if (!q)        /* store root and error location number indices */
              { root[count] = i;
                loc[count] = nn-i ;
                count++ ;
              };
          } ;
         if (count==l[u])    /* no. roots = degree of elp hence <= tt errors */
          {
/* form polynomial z(x) */
           for (i=1; i<=l[u]; i++)        /* Z[0] = 1 always - do not need */
            { if ((s[i]!=-1) && (elp[u][i]!=-1))
                 z[i] = alpha_to[s[i]] ^ alpha_to[elp[u][i]] ;
              else if ((s[i]!=-1) && (elp[u][i]==-1))
                      z[i] = alpha_to[s[i]] ;
                   else if ((s[i]==-1) && (elp[u][i]!=-1))
                          z[i] = alpha_to[elp[u][i]] ;
                        else
                          z[i] = 0 ;
              for (j=1; j<i; j++)
                if ((s[j]!=-1) && (elp[u][i-j]!=-1))
                   z[i] ^= alpha_to[(elp[u][i-j] + s[j])%nn] ;
              z[i] = index_of[z[i]] ;         /* put into index form */
            } ;

  /* evaluate errors at locations given by error location numbers loc[i] */
           for (i=0; i<nn; i++)
             { err[i] = 0 ;
               if (recd[i]!=-1)        /* convert recd[] to polynomial form */
                 recd[i] = alpha_to[recd[i]] ;
               else  recd[i] = 0 ;
             }
           for (i=0; i<l[u]; i++)    /* compute numerator of error term first */
            { err[loc[i]] = 1;       /* accounts for z[0] */
              for (j=1; j<=l[u]; j++)
                if (z[j]!=-1)
                  err[loc[i]] ^= alpha_to[(z[j]+j*root[i])%nn] ;
              if (err[loc[i]]!=0)
               { err[loc[i]] = index_of[err[loc[i]]] ;
                 q = 0 ;     /* form denominator of error term */
                 for (j=0; j<l[u]; j++)
                   if (j!=i)
                     q += index_of[1^alpha_to[(loc[j]+root[i])%nn]] ;
                 q = q % nn ;
                 err[loc[i]] = alpha_to[(err[loc[i]]-q+nn)%nn] ;
                 recd[loc[i]] ^= err[loc[i]] ;  /*recd[i] must be in polynomial form */
               }
            }
          }
         else    /* no. roots != degree of elp => >tt errors and cannot solve */
           for (i=0; i<nn; i++)        /* could return error flag if desired */
               if (recd[i]!=-1)        /* convert recd[] to polynomial form */
                 recd[i] = alpha_to[recd[i]] ;
               else  recd[i] = 0 ;     /* just output received codeword as is */
       }
     else         /* elp has degree has degree >tt hence cannot solve */
       for (i=0; i<nn; i++)       /* could return error flag if desired */
          if (recd[i]!=-1)        /* convert recd[] to polynomial form */
            recd[i] = alpha_to[recd[i]] ;
          else  recd[i] = 0 ;     /* just output received codeword as is */
    }
   else       /* no non-zero syndromes => no errors: output received codeword */
    for (i=0; i<nn; i++)
       if (recd[i]!=-1)        /* convert recd[] to polynomial form */
         recd[i] = alpha_to[recd[i]] ;
       else  recd[i] = 0 ;
 }



main()
{
  register int i;

/* generate the Galois Field GF(2**mm) */
  generate_gf() ;
  printf("Look-up tables for GF(2**%2d)\n",mm) ;
  printf("  i   alpha_to[i]  index_of[i]\n") ;
  for (i=0; i<=nn; i++)
   printf("%3d      %3d         %3d\n",i,alpha_to[i],index_of[i]) ;
  printf("\n\n") ;

/* compute the generator polynomial for this RS code */
  gen_poly() ;
  for (i=0; i<=nn-kk; i++)
    printf("%3d    %3d\n",i, gg[i]) ;

/* for known data, stick a few numbers into a zero codeword. Data is in
   polynomial form.
*/
for  (i=0; i<212; i++)   data[i] = 0 ;

/* for example, say we transmit the following message (nothing special!) */
data[0] = 8 ;
data[1] = 6 ;
data[2] = 8 ;
data[3] = 1 ;
data[4] = 2 ;
data[5] = 4 ;
data[6] = 15 ;
data[7] = 9 ;
data[8] = 9 ;

/* encode data[] to produce parity in bb[].  Data input and parity output
   is in polynomial form
*/
  encode_rs() ;

/* put the transmitted codeword, made up of data plus parity, in recd[] */
  for (i=0; i<nn-kk; i++)  recd[i] = bb[i] ;
  for (i=0; i<kk; i++) recd[i+nn-kk] = data[i] ;

/* if you want to test the program, corrupt some of the elements of recd[]
   here. This can also be done easily in a debugger. */
/* Again, lets say that a middle element is changed */
  data[nn-nn/2] = 3 ;


  for (i=0; i<nn; i++)
     recd[i] = index_of[recd[i]] ;          /* put recd[i] into index form */

/* decode recv[] */
  decode_rs() ;         /* recd[] is returned in polynomial form */

/* print out the relevant stuff - initial and decoded {parity and message} */
//  printf("Results for Reed-Solomon code (n=%3d, k=%3d, t= %3d)\n\n",nn,kk,tt) ;
//  printf("  i  data[i]   recd[i](decoded)   (data, recd in polynomial form)\n");
//  for (i=0; i<nn-kk; i++)
//    printf("%3d    %3d      %3d\n",i, bb[i], recd[i]) ;
//  for (i=nn-kk; i<nn; i++)
//    printf("%3d    %3d      %3d\n",i, data[i-nn+kk], recd[i]) ;
 
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美大片国产精品| 日本一区二区不卡视频| 精品剧情在线观看| 日本一区二区三级电影在线观看 | 免费在线观看成人| 成人小视频免费在线观看| 91老司机福利 在线| 欧美一区二区视频在线观看2020| 久久精品欧美一区二区三区麻豆 | 成人精品鲁一区一区二区| 91高清视频在线| 国产欧美一区二区精品性| 香蕉成人啪国产精品视频综合网 | 精品国产凹凸成av人网站| 亚洲欧美综合网| 极品销魂美女一区二区三区| 欧美精品vⅰdeose4hd| 久久久久国产精品人| 日韩一区欧美二区| 色妞www精品视频| 国产精品天天看| 成熟亚洲日本毛茸茸凸凹| 精品三级av在线| 免费高清在线一区| 欧美一区二区在线免费播放| 亚洲一区二区免费视频| 在线区一区二视频| 一区二区不卡在线播放| 欧美亚洲禁片免费| 亚洲mv在线观看| 欧美日韩亚洲丝袜制服| 亚洲午夜在线电影| 欧美日韩激情一区二区三区| 天天操天天色综合| 91精品国产乱| 国产精品一区二区男女羞羞无遮挡 | 欧美大黄免费观看| 国产91色综合久久免费分享| 中文一区二区在线观看| 色综合久久久久综合体| 亚洲国产cao| 国产人成一区二区三区影院| 成人免费视频app| 亚洲h在线观看| 精品成人一区二区| 91美女在线看| 国产**成人网毛片九色 | 成人午夜电影网站| 日韩激情视频在线观看| 日韩中文字幕区一区有砖一区| 日韩你懂的在线观看| 一本大道久久精品懂色aⅴ| 一区二区三区加勒比av| 国产网红主播福利一区二区| 欧美丝袜自拍制服另类| 欧美一区二区三级| 久久久久久亚洲综合影院红桃| 国产午夜亚洲精品午夜鲁丝片| 久久九九久精品国产免费直播| 久久久精品蜜桃| 亚洲天堂成人网| 人人狠狠综合久久亚洲| 久久不见久久见中文字幕免费| 久久激情五月激情| 国产成人丝袜美腿| 色综合一个色综合亚洲| 欧美探花视频资源| 国产亚洲精品7777| 日韩av在线免费观看不卡| 成人黄色在线视频| 911精品产国品一二三产区| 久久久久久久久99精品| 亚洲gay无套男同| 成人免费视频国产在线观看| 7777精品伊人久久久大香线蕉超级流畅 | 久久免费的精品国产v∧| 自拍偷自拍亚洲精品播放| 日韩电影在线免费观看| 91丨porny丨户外露出| 精品日韩一区二区| 亚洲国产精品自拍| 99vv1com这只有精品| 26uuu精品一区二区在线观看| 一区二区三区中文字幕| 国产精品亚洲一区二区三区妖精| 欧美午夜一区二区三区| 国产精品久久久久7777按摩| 奇米888四色在线精品| 91久久精品一区二区三| 久久精品亚洲乱码伦伦中文| 另类小说一区二区三区| 欧美一区二区三区白人| 爽爽淫人综合网网站| 91精品啪在线观看国产60岁| 亚洲国产成人91porn| 在线观看91精品国产麻豆| 奇米777欧美一区二区| 久久久五月婷婷| 色婷婷激情一区二区三区| 免费视频最近日韩| 亚洲图片欧美激情| 91精品国产黑色紧身裤美女| 懂色av中文字幕一区二区三区| 国产精品久久久久aaaa樱花 | 日韩成人精品在线| 精品国产免费久久 | 婷婷久久综合九色国产成人| 91精品视频网| 成人免费视频视频| 爽爽淫人综合网网站| 久久精品一区二区三区不卡| av在线播放不卡| 丝袜亚洲精品中文字幕一区| 精品久久久久av影院| aaa亚洲精品| 日韩黄色免费网站| 亚洲欧洲精品天堂一级| 777奇米成人网| 91欧美一区二区| 久久精品二区亚洲w码| 综合精品久久久| 久久人人爽爽爽人久久久| 欧亚一区二区三区| 国产精品资源站在线| 日韩av在线免费观看不卡| 亚洲色图丝袜美腿| 国产亚洲精品资源在线26u| 91麻豆精品国产91久久久| 色拍拍在线精品视频8848| 丰满少妇在线播放bd日韩电影| 日韩黄色免费网站| 亚洲一二三专区| 亚洲一区二区三区免费视频| 亚洲日本在线天堂| ●精品国产综合乱码久久久久| 久久看人人爽人人| www国产亚洲精品久久麻豆| 欧美一卡二卡在线| 欧美一卡二卡在线观看| 91精品午夜视频| 日韩视频123| 日韩欧美国产一区二区三区 | 亚洲欧美另类在线| 亚洲欧美另类综合偷拍| 亚洲女人小视频在线观看| 樱花影视一区二区| 午夜视频在线观看一区二区三区| 一区二区在线观看视频| 亚洲国产sm捆绑调教视频| 日本美女一区二区| 国产一区二区在线视频| 国产福利一区在线| 91在线丨porny丨国产| 日本精品一区二区三区高清 | 宅男在线国产精品| 精品免费日韩av| 国产精品精品国产色婷婷| 一区二区三区加勒比av| 蜜臀a∨国产成人精品| 国产伦精品一区二区三区免费| 成人性生交大片免费| 91视频精品在这里| 欧美卡1卡2卡| 成人欧美一区二区三区小说| 一区二区欧美国产| 国产精品一级黄| 日本道在线观看一区二区| 欧美成人一区二区三区在线观看| 国产精品久久久久久久蜜臀 | 国产精品美女久久久久av爽李琼| 亚洲观看高清完整版在线观看| 国产又黄又大久久| 欧美三级视频在线播放| 欧美一区二区三级| 亚洲欧洲日产国产综合网| 日韩影院免费视频| 99国产精品99久久久久久| 精品国产露脸精彩对白| 天天综合日日夜夜精品| 成人黄色在线视频| 欧美成人一区二区三区| 亚洲国产精品久久久久秋霞影院 | 极品少妇xxxx偷拍精品少妇| 色偷偷久久一区二区三区| 亚洲国产精品v| 国产乱码精品一区二区三区av| 精品美女被调教视频大全网站| 亚洲国产aⅴ天堂久久| 99久久精品免费看| 国产精品国产馆在线真实露脸| 美女网站色91| 日韩精品一区二区三区视频 | 9i在线看片成人免费| 国产精品乱码妇女bbbb| 粉嫩aⅴ一区二区三区四区| 国产精品网站在线| 日韩一区二区电影| 日韩av午夜在线观看| 日韩一区二区三区视频在线| 久久99国产精品麻豆|