1. So sánh hệ thống Big Endian và Litle Edian 
    - Big Endian: Byte cao nhất sẽ được sắp đầu tiên tức (nếu hàng ngang thì) xếp phía bên trái ngoài cùng. Liên hệ slide 45
    - Litle Edian: Byte thấp nhất sẽ đc sắp đầu tiên tức (nếu hàng ngang thì) xếp phía bên trái ngoài cùng.

   - Các hệ thống dùng vi xử của intel thì dùng nền tảng little endian,và đa số đều vậy
   -
Các hệ thống dùng chip của solaris, motorola thì dùng big endian
  Ví dụ:
                                    --Byte cao nhất--  ------------   ------------   --byte thấp nhất--
                       số 123456  =   00000000 00000001 11100010 01000000
Số 123456 lần lượt được lưu trong hệ thống Big Endian và Little Endian dưới đây:
             ______________________________________________________
             Trong Big Endian : 00000000 00000001 11100010 01000000
              Little Endian :       01000000 11100010 00000001 00000000

2. Để xác định hệ thống dùng cách lưu gì ta dùng đoạn mã sau để xác định:
#include <iostream>

using namespace std;

void main()
{
      int i = 0x12345678;
      char *p;
      p = (char*) &i;

      if (*p == 0x78){
            printf("Little endian\n");
      } else {
            printf("Big endian\n");
      }
      system("pause");
}

3. Ví dụ:

4. Một số câu hỏi: 
    Viết hàm Swap Endian của số int x đưa vào. Ví dụ: int x = 0xA0B0C0D0 
       --> Kết quả:  Endian_Swap(int x) = 0xD0C0B0A0


#include <iostream>
using namespace std;

int Endian_Swap(int x);//4byte

void main()
{
      int x = 0xA0B0C0D0;
      printf("Endian_Swap 0x%X\n", Endian_Swap(x));
      //output: 0xDOC0B0A0
      system("pause");
}

int Endian_Swap(int x)
{
     return (
              ((x >> 24) & 0x000000FF) |
              ((x >> 8)  & 0x0000FF00) |
              ((x << 8)  & 0x00FF0000) |
              ((x << 24) & 0xFF000000)
              );
}