destuffer.cpp

来自「QAM module to use in Java with an easy i」· C++ 代码 · 共 48 行

CPP
48
字号
//---------------------------------------------------------------------------


#pragma hdrstop

#include "DeStuffer.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

int __fastcall DeStuffer::Update(int r)
{
        retword=-42;
        for(int i=0;i<8;i++)
        {
                working=(((working<<1)&2046)|((((r)>>i)&1)));
                if((working&255)==126){ptr=0;word=0;retword=-1;}
                 else
                 {
                        if(cnt<5)
                        {
                                if(ptr>=0)
                                {
                                        word=word+(((working&1))<<(ptr));
                                        if(ptr==7)
                                        {
                                                ptr=-1;
                                                retword=word;
                                                word=0;
                                        }
                                }
                                ptr++;
                        }
                        if(cnt>=6){ptr=0;word=0;retword=-2;}
                 }
                if(working&1)cnt++;
                 else cnt=0;
        }
        return retword;
}

__fastcall DeStuffer::DeStuffer(void)
{
        working=0;ptr=0;word=0;cnt=0;retword=0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?