?? encode37.c
字號(hào):
/* Encode standard input in the r=1/3 K=7 standard convolutional code.
* Encoded output is big-endian, one byte per symbol, with 1 represented
* by 255 and 0 by 0
*/
#include <stdio.h>
#include "viterbi37.h"
extern unsigned char Partab[]; /* Parity lookup table */
main(int argc,char *argv[])
{
unsigned int encstate;
int c,i;
encstate = 0;
while((c = getchar()) != EOF){
for(i=7;i>=0;i--){
encstate = (encstate << 1) | ((c >> 7) & 1);
c <<= 1;
/* 1-sym -> 255, 0-sym -> 0 */
putchar(0 - Partab[encstate & POLYA]);
putchar(0 - Partab[encstate & POLYB]);
putchar(0 - Partab[encstate & POLYC]);
}
}
/* Generate tail */
for(i=5;i>=0;i--){
encstate = encstate << 1;
putchar(0 - Partab[encstate & POLYA]);
putchar(0 - Partab[encstate & POLYB]);
putchar(0 - Partab[encstate & POLYC]);
}
return 0;
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -