为什么锯齿波的输出为什么要挪8位

单片机输出波形
#define DAPort P2
sbit IO = P2^0;
unsigned int count;

fword = (unsigned int)(freqtemp*1.048);    //设置频率控制字

void timer0(void) interrupt 1 //计数器0中断     
{
    count = count + fword;
    switch(gType)
    {
        case 0:    DAPort = TableSin[count>>8];
                break;       
        case 1: if(count>Duty*655)
                    DAPort = 0xff;
                else
                    DAPort = 0x00;
                break;
        case 2:    DAPort = TableTriangle[count>>8];
                break;
        case 3:    DAPort = TableSaw[256-(count>>8)];
                break;
        default:DAPort = TableSin[count>>8];
    }
                 
}    
我想要知道为什么矩形波的书要诺8位从后往前挪

右移8位,是舍弃了该数的低8位。保留数据的高位。看代码可能是 8 位单片机, count>>8 就是只保留 count 的高8位,低8位舍弃掉了。
我们许多计算都是小数,在查表时就不能用小数当下标了,就需要取整
打个比方, PI=3.14 我们只保留1个小数,就是 3.1

duty是占空比,为什么要用count和duty*655比,655是怎么来的