此段四位数码管c语言程序如何理解?

求每一句讲解一下,感谢!!
void Set1650(uchar add,uchar dat){ //数码管显示
//写显存必须从高地址开始写
Start1650();
WrByte1650(add); //第一个显存地址
Ask1650();
WrByte1650(dat);
Ask1650();
Stop1650();
}
void Init1650(){
Set1650(0x48,(BL*16+0x01));//设定亮度,开显示八段显示方式,后一个字节中高位用于亮度,低位用于七段或八段显示方式和开关显示
//如:0x71为七级亮度,八段显示方式,开显示;0x79为为七级亮度,七段显示方式,开显示
}
void DISP_Data(uchar Point,uint num)
{
Set1650(0x6a,0);
Set1650(0x6c,0);
Set1650(0x6e,0);
Set1650(0x68,0);
switch (Point)
{
case 0:
{
Set1650(0x6e,CODE[(unsigned int)num/1000]);
Set1650(0x6c,CODE[((unsigned int)num%1000)/100]);
Set1650(0x6a,CODE[((unsigned int)num%100)/10]);
Set1650(0x68,0x40|CODE[(unsigned int)num%10]);
break;
}
case 1:
{
if(num>999)
Set1650(0x6e,CODE[(unsigned int)num/1000]);
if(num>99)
Set1650(0x6c,CODE[((unsigned int)num%1000)/100]);
Set1650(0x6a,0x40|CODE[((unsigned int)num%100)/10]);
Set1650(0x68,CODE[(unsigned int)num%10]);
break;
}
case 2:
{
if(num>999)
Set1650(0x6e,CODE[(unsigned int)num/1000]);
Set1650(0x6c,0x40|CODE[((unsigned int)num%1000)/100]);
Set1650(0x6a,CODE[((unsigned int)num%100)/10]);
Set1650(0x68,CODE[(unsigned int)num%10]);
break;
}
case 3:
{
Set1650(0x6e,0x40|CODE[(unsigned int)num/1000]);
Set1650(0x6c,CODE[((unsigned int)num%1000)/100]);
Set1650(0x6a,CODE[((unsigned int)num%100)/10]);
Set1650(0x68,CODE[(unsigned int)num%10]);
break;
}

}