unit1.cpp

来自「现行反馈移位寄存器算法.通过这个算法可以生成一些线性移位寄存器的输出序列」· C++ 代码 · 共 52 行

CPP
52
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
AnsiString cycle;
AnsiString role;
int length;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
if (Edit1->Text!="")
{
cycle=Edit1->Text;
length=cycle.Length();
role=cycle.SubString(length,1);//读最后一位
AnsiString n;
for (int i=0;;i++)
{
AnsiString temp1=cycle.SubString(length,1);//倒数第一位
AnsiString temp2=cycle.SubString(1,1); //第一位
if (temp1==temp2)
n="0";
else
n="1";
//n=IntToStr(StrToInt(temp1)^StrToInt(temp2));//异或
cycle=n+cycle.SubString(1,length-1);
Memo1->Lines->Add(cycle);
if (cycle!=Edit1->Text)
{
role+=cycle.SubString(length,1);  //添加输出比特
continue;
}
else
break;
}//for
Edit2->Text=role.c_str();
}//if
}
//---------------------------------------------------------------------------
 

⌨️ 快捷键说明

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