Datei: pbits.c


    1   /*
    2    *      pbits.c
    3    *      32-Bit-Integer bitweise ausgeben
    4    *      klin, Sun Nov 21 18:01:08 1999
    5    */
    6   
    7   #include <stdio.h>
    8   
    9   void put_bits(unsigned long);
   10   
   11   void main(void)
   12   {
   13     unsigned long n;
   14   
   15     /* Integerzahl lesen und ausgeben */
   16     while (1) {
   17       printf("Integerzahl eingeben: ");
   18       scanf("%lu", &n);
   19       put_bits(n);
   20     }
   21   
   22   } /* main() */
   23   
   24   /* Integer bitweise ausgeben */
   25   void put_bits(unsigned long n)
   26   {
   27     unsigned long m;      /* Maske   */
   28     int i;                /* Zaehler */
   29   
   30     /* Maske und Zaehler initialisieren */
   31     m = 1 << 31;
   32     i = 0;
   33     /* Schleife ueber alle Bitpositionen */
   34     while (m > 0) {
   35       /* Leerzeichen nach 4 Bits */
   36       if (i > 0 && (i % 4) == 0)
   37         putchar(' ');
   38       /* 1, wenn Bit gesetzt, sonst 0 */
   39       putchar(n & m ? '1' : '0');
   40       /* Maske verschieben, Zaehler hochzaehlen */
   41       m >>= 1;
   42       i++;
   43     }
   44     putchar('\n');
   45   
   46   } /* put_bits() */


Erzeugt von c2html 1.01