File tree Expand file tree Collapse file tree 4 files changed +33
-2
lines changed
Expand file tree Collapse file tree 4 files changed +33
-2
lines changed Original file line number Diff line number Diff line change 1+ 1.3: zvezdochiot <mykaralw@yandex.ru>
2+
3+ * magic word
4+
5+ 1.2: zvezdochiot <mykaralw@yandex.ru>
6+
7+ * added warnings
8+ * optimize io, time gain 50-70%
9+
10+ 1.1: zvezdochiot <mykaralw@yandex.ru>
11+
12+ * simplify invert
13+ * simplify hammingdec
14+ * strip code
15+ * bit operations, remove math, time gain 50-70%
16+
17+ 1.0: Dmitrii Zagalskij
18+
19+ * init version
Original file line number Diff line number Diff line change 11CC = gcc
22CFLAGS = -Wall -std=c99
33LDFLAGS = -s
4+ SRCP = src
45PROGS = hammingenc hammingdec
56
67all : $(PROGS )
78
8- hammingenc : hammingenc.c
9+ hammingenc : $( SRCP ) / hammingenc.c
910 $(CC ) $(CFLAGS ) $^ -o $@ $(LDFLAGS )
1011
11- hammingdec : hammingdec.c
12+ hammingdec : $( SRCP ) / hammingdec.c
1213 $(CC ) $(CFLAGS ) $^ -o $@ $(LDFLAGS )
1314
1415clean : $(PROGS )
Original file line number Diff line number Diff line change @@ -75,6 +75,13 @@ int main(int argc, char *argv[])
7575 printf ("coded: %s\n" , argv [1 ]);
7676 printf ("file: %s\n" , argv [2 ]);
7777 int c = 8 ;
78+ char mc [7 ] = {"\0" };
79+ fread (mc , 6 , 1 , f );
80+ if (strcmp (mc , "HECC8" ) && strcmp (mc , "HECC12" ) &&
81+ strcmp (mc , "HECC16" ) && strcmp (mc , "HECC32" ) &&
82+ strcmp (mc , "HECC64" ))
83+ fprintf (stderr , "WARNIND: Bad MAGIC number: %s\n\n" , mc );
84+ sscanf (mc , "HECC%d" , & c );
7885 if (argc > 3 ) c = atoi (argv [3 ]);
7986 printf ("decoding length: %d\n\n" , c );
8087 if (c == 8 )
Original file line number Diff line number Diff line change @@ -73,6 +73,10 @@ int main(int argc, char *argv[])
7373 int c = 8 ;
7474 if (argc > 3 ) c = atoi (argv [3 ]);
7575 printf ("coding length: %d\n\n" , c );
76+ char mc [2 ];
77+ fwrite ("HECC" , 4 , 1 , t );
78+ sprintf (mc , "%d" , c );
79+ fwrite (mc , 2 , 1 , t );
7680 if (c == 8 )
7781 {
7882 int x , kod [12 ];
You can’t perform that action at this time.
0 commit comments