optimized and added more/better comment
authorHansjürg Wenger <wgh1@bfh.ch>
Wed, 23 Sep 2015 20:26:27 +0000 (22:26 +0200)
committerHansjürg Wenger <wgh1@bfh.ch>
Wed, 23 Sep 2015 20:26:27 +0000 (22:26 +0200)
ntest.c

diff --git a/ntest.c b/ntest.c
index c340b77..515654e 100644 (file)
--- a/ntest.c
+++ b/ntest.c
 void main (void){
 
        int tv=0x1A2B3C4D;      // test variable "tv"
-       int so;                 // size of (tv)
+       int so;                 // size of "tv" (in bytes)
        int i;                  // used for iteration
        unsigned char *b;       // a pointer to a byte
        unsigned char lob;      // low oder byte
        unsigned char hob;      // high oder byte
-       unsigned char lab;      // byte at lowest address
+       unsigned char lab;      // byte at lowest memory address
 
        printf ("\n");
 
@@ -31,11 +31,10 @@ void main (void){
        // assign the address of tv (pointer to int) to b (pointer to byte)
        // the cast makes the conversion to prevent from compiler warnings
        b=(unsigned char *)&tv;
-       printf ("Basisadresse tv: %p = Basisadresse b: %p\n", &tv,b);
 
-       printf ("\n");
+       printf ("Basisadresse tv: %p = Basisadresse b: %p\n\n", &tv,b);
 
-       // read and print bytes of "tv", "highest addr" first
+       // read and print bytes of "tv", byte at highest memory addr first
        for(i=(so-1);i>=0;i--)
        {
                printf ("Byte %i: ",i);
@@ -43,7 +42,7 @@ void main (void){
                printf ("%X\n",*(b+i));
        }
 
-       // assign byte at lowest address
+       // assign byte at lowest memory address
        lab=*b;
 
        // assign low order byte of tv (modulo 256)
@@ -54,15 +53,15 @@ void main (void){
 
        // print out systems edianness
        printf ("\nLaufe auf einem ");
-       if ( lab == lob )
-       {
+       if ( lab == lob ) // low order byte at lowest memory addr 
+       {                 // -> little endian
                printf ("Little Endian System!\n\n");
        }
-        else if ( lab == hob )
-       {
+        else if ( lab == hob ) // high order byte at lowest memory addr
+       {                       // -> big endian
                printf ("Big Endian System!\n\n");
        }
-       else
+       else // endianness cannot be determined -> strange endian
        {
                printf ("System mit unbekannter Ediannness!\n\n");
        }