blob: 583a978db5fea6f9a0556f29b31f8a565595b343 [file] [log] [blame]
#include <stdio.h>
void printbin(unsigned long val);
int main(int argc, char *argv[])
{
FILE *handle;
unsigned int c;
unsigned long val;
int i;
handle = fopen(argv[1], "rb");
if (handle == NULL) {
fprintf(stderr, "Cannot open %s\n", argv[1]);
return -1;
}
i = 0;
while ((c = fgetc(handle)) != EOF) {
if (i == 0) {
val = 0;
}
val += ((c & 0xff) << (i << 3));
if (i == 3) {
printbin(val);
}
if (++i == 4) {
i = 0;
}
}
if (i != 0) {
fprintf(stderr, "File not an integral number of 32 bit words\n");
printbin(val);
return -2;
}
return 0;
}
void printbin(unsigned long val)
{
int i;
for (i = 31; i >= 0; i--) {
putchar('0' + ((val >> i) & 1));
}
printf("\n");
}