大的数字转换为16进制后,怎么2个2个排列显示

求救大的数字转换为16进制后,如何2个2个排列显示?
    比如说我有两个数字, 需要实现以下这个效果:
一个是866000 ------ 0x0D36D0 ------0xd0 0x36 0x0d
一个是1000 ms ----   0x3e8 -----   0xe8 0x03

我目前就想实现这样的效果,请问该如何编程啊,如何来转换啊?
非常感谢!!!!!

------解决方案--------------------
String myHEX(int aval)
{
   String sh;
   String hb,he;
   String sr;
   sh =  IntToHex(aval,0);
   if( sh.Length() /2 !=0 )
     sh="0"+sh;

   hb = sh.SubString(1,2);
   he = sh.SubString(sh.Length()-1, 2);

   if( sh.Length()>4)
      sr = sh.SubString(3,sh.Length()-4);
   sr = he + sr + hb;
   return sr;
}

void __fastcall TForm1::FormCreate(TObject *Sender)
{

    int a1=866000;
    int a2=1000;
    String h1,h2;

    h1 = myHEX(a1);
    h2 = myHEX(a2);
}

------解决方案--------------------

//看你需要动态或静态,如果只是静态
进行位移计算 X&0xFF (x<<8)&0xFF (x<<16)&0xFF