<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Brauche Hilfe beim SNRI-Coder mithilfe von LFSR]]></title><description><![CDATA[<p>Hallo an alle.</p>
<p>ich möchte solch einen Scrambler/Descrambler realisieren: <a href="http://i.stack.imgur.com/ef3XP.gif" rel="nofollow">http://i.stack.imgur.com/ef3XP.gif</a> (kann man hier Bilder posten?)<br />
Es handelt sich um Scrambled Non Return to Zero Invert, welches beim Übertragen von Video verwendet wird. Aus Testzwecken habe ich ein Programm geschrieben, das diese Struktur nachbaut, Encoder und Decoder. Der Decoder sollte die Folge zurückliefern, die ich beim Encoder eingepeist habe, jedoch klappt es nicht.<br />
Ich speise eine typische Präambel ein 3FF 000 000 (10 Bit Worte), es sind 10 Einsen und 20 Nullen in binär.<br />
Man hat mich in einem anderem Forum schon hingewiesen, dass der LFSR eine gewisse Anzahl von Takten zur Initialisierung braucht, deshalb habe ich auch aus Testzwecken die Eingangsfolge des Scramblers um 10 Nullen erweitert und in den Descrambler speise ich nur die letzten 30 Bits ausm Scrambler plus 10 Nullen ein.<br />
Das Ziel ist, dass der Descrambler die Eingangsfolge des Scramblers wieder berechnet.</p>
<p>hier ist der Code, hoffe es ist lesbar:</p>
<pre><code class="language-cpp">#include &quot;stdafx.h&quot;
#include&lt;iostream&gt;
#include&lt;vector&gt;

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	// Encoder -----------------------------------------------------------------------------------------------------------------------------------
	cout&lt;&lt; endl &lt;&lt;&quot; Encoder &quot;&lt;&lt; endl;

	// create an input vector and initialize it with 3FF 000 000
	bool bInput[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
	//bool bInput[] = { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 };
	vector&lt; bool &gt; vbInput( bInput, bInput + sizeof( bInput ) / sizeof( bool ) );

	// create the shift register
	//bool bShiftReg[10] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
	bool bShiftReg[10] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 };

	// create an output vector 
	vector&lt; bool &gt; vbOutput(40);

	// iterator for the input
	vector&lt;bool&gt;::iterator itInput = vbInput.begin();
	cout&lt;&lt;&quot;\n Input: &quot;;
	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itInput;

	cout&lt;&lt;endl&lt;&lt;endl;

	// iterator for the output
	vector&lt;bool&gt;::iterator itOutput = vbOutput.begin();

	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
	{
		// calculate values of every flipflop and the output and save them in a temp array
		bool bTempReg[10];
		bTempReg[0] = *itInput ^ ( bShiftReg[ 4 ] ^ bShiftReg[ 8 ] );
		bTempReg[1] = bShiftReg[0];
		bTempReg[2] = bShiftReg[1];
		bTempReg[3] = bShiftReg[2];
		bTempReg[4] = bShiftReg[3];
		bTempReg[5] = bShiftReg[4];
		bTempReg[6] = bShiftReg[5];
		bTempReg[7] = bShiftReg[6];
		bTempReg[8] = bShiftReg[7];
		bTempReg[9] = bShiftReg[8] ^ bShiftReg[9];
		*itOutput = bShiftReg[ 9 ];

		// assign values of the temp array to the flipflops
		for( unsigned char ucIndex = 0; ucIndex &lt; 10; ucIndex++ )
		{
			bShiftReg[ ucIndex ] = bTempReg[ ucIndex ];
		}

		/*cout&lt;&lt;&quot;\n Schift Reg: &quot;;
		for( int i=0;i&lt;10;i++)
		{ cout &lt;&lt; &quot; &quot; &lt;&lt; bShiftReg[i]; }

		cout&lt;&lt;&quot; Output: &quot; &lt;&lt; *itOutput;*/

		itOutput++;
	}
	cout&lt;&lt;&quot;\n Output: &quot;;
	for( itOutput = vbOutput.begin(); itOutput &lt; vbOutput.end(); itOutput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itOutput;

	cout&lt;&lt;endl&lt;&lt;endl;

	// Decoder -----------------------------------------------------------------------------------------------------------------------------------

	cout&lt;&lt; endl &lt;&lt;&quot; Decoder &quot;&lt;&lt; endl;

	// load the old ouput to the new input but use only bits 10:40
	itOutput = vbOutput.begin() + 10;
	for( itInput = vbInput.begin(); itInput &lt; vbInput.end() - 10; itInput++)
	{
		*itInput = *itOutput;
		itOutput++;

	}

	cout&lt;&lt;&quot;\n Input: &quot;;
	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itInput;

	// reset the shift reg
	for(int i = 0;i&lt;10;i++) bShiftReg[i] = 1;

	// set output iterator to the begin of the vector
	itOutput = vbOutput.begin();

	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
	{
		// calculate values of every flipflop and the output and save them in a temp array
		bool bTempReg[10];
		bTempReg[0] = *itInput;
		bTempReg[1] = bShiftReg[ 0 ] ^ *itInput;
		bTempReg[2] = bShiftReg[1];
		bTempReg[3] = bShiftReg[2];
		bTempReg[4] = bShiftReg[3];
		bTempReg[5] = bShiftReg[4];
		bTempReg[6] = bShiftReg[5];
		bTempReg[7] = bShiftReg[6];
		bTempReg[8] = bShiftReg[7];
		bTempReg[9] = bShiftReg[8];
		*itOutput = ( ( *itInput ^ bShiftReg[0] ) ^ bShiftReg[5] ) ^ bShiftReg[9];

		// assign values of the temp array to the flipflops
		for( unsigned char ucIndex = 0; ucIndex &lt; 10; ucIndex++ )
		{
			bShiftReg[ ucIndex ] = bTempReg[ ucIndex ];
		}

		/*cout&lt;&lt;&quot;\n Schift Reg: &quot;;
		for( int i=0;i&lt;10;i++)
		{ cout &lt;&lt; &quot; &quot; &lt;&lt; bShiftReg[i]; }
		cout&lt;&lt;&quot; Output: &quot; &lt;&lt; *itOutput;*/

		itOutput++;
	}
	cout&lt;&lt;&quot;\n Output: &quot;;
	for( itOutput = vbOutput.begin(); itOutput &lt; vbOutput.end(); itOutput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itOutput;

	cout&lt;&lt;endl&lt;&lt;endl;

	return 0;
}
</code></pre>
<p>Konsole liefert:</p>
<pre><code>Encoder

 Input:  1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

 Output:  1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 1 1 1 1 0 0

 Decoder

 Input:  1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
 Output:  0 1 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0
</code></pre>
<p>ich hoffe es ist verständlich und bitte um Hilfe. Habe viel gesehen und gelesen in Google und Foren aber leider nicht passendes und/oder verständliches. Ich weiss nicht, in welcher Reihenfolge man bei einem LFSR die einzelnen Flipflops berechnen soll. Ich bedanke mich schon Mal.</p>
<p>Mfg<br />
Max Krug</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/288652/brauche-hilfe-beim-snri-coder-mithilfe-von-lfsr</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 18:37:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/288652.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 20 Jun 2011 13:31:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Brauche Hilfe beim SNRI-Coder mithilfe von LFSR on Mon, 20 Jun 2011 13:32:47 GMT]]></title><description><![CDATA[<p>Hallo an alle.</p>
<p>ich möchte solch einen Scrambler/Descrambler realisieren: <a href="http://i.stack.imgur.com/ef3XP.gif" rel="nofollow">http://i.stack.imgur.com/ef3XP.gif</a> (kann man hier Bilder posten?)<br />
Es handelt sich um Scrambled Non Return to Zero Invert, welches beim Übertragen von Video verwendet wird. Aus Testzwecken habe ich ein Programm geschrieben, das diese Struktur nachbaut, Encoder und Decoder. Der Decoder sollte die Folge zurückliefern, die ich beim Encoder eingepeist habe, jedoch klappt es nicht.<br />
Ich speise eine typische Präambel ein 3FF 000 000 (10 Bit Worte), es sind 10 Einsen und 20 Nullen in binär.<br />
Man hat mich in einem anderem Forum schon hingewiesen, dass der LFSR eine gewisse Anzahl von Takten zur Initialisierung braucht, deshalb habe ich auch aus Testzwecken die Eingangsfolge des Scramblers um 10 Nullen erweitert und in den Descrambler speise ich nur die letzten 30 Bits ausm Scrambler plus 10 Nullen ein.<br />
Das Ziel ist, dass der Descrambler die Eingangsfolge des Scramblers wieder berechnet.</p>
<p>hier ist der Code, hoffe es ist lesbar:</p>
<pre><code class="language-cpp">#include &quot;stdafx.h&quot;
#include&lt;iostream&gt;
#include&lt;vector&gt;

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	// Encoder -----------------------------------------------------------------------------------------------------------------------------------
	cout&lt;&lt; endl &lt;&lt;&quot; Encoder &quot;&lt;&lt; endl;

	// create an input vector and initialize it with 3FF 000 000
	bool bInput[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
	//bool bInput[] = { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 };
	vector&lt; bool &gt; vbInput( bInput, bInput + sizeof( bInput ) / sizeof( bool ) );

	// create the shift register
	//bool bShiftReg[10] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
	bool bShiftReg[10] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 };

	// create an output vector 
	vector&lt; bool &gt; vbOutput(40);

	// iterator for the input
	vector&lt;bool&gt;::iterator itInput = vbInput.begin();
	cout&lt;&lt;&quot;\n Input: &quot;;
	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itInput;

	cout&lt;&lt;endl&lt;&lt;endl;

	// iterator for the output
	vector&lt;bool&gt;::iterator itOutput = vbOutput.begin();

	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
	{
		// calculate values of every flipflop and the output and save them in a temp array
		bool bTempReg[10];
		bTempReg[0] = *itInput ^ ( bShiftReg[ 4 ] ^ bShiftReg[ 8 ] );
		bTempReg[1] = bShiftReg[0];
		bTempReg[2] = bShiftReg[1];
		bTempReg[3] = bShiftReg[2];
		bTempReg[4] = bShiftReg[3];
		bTempReg[5] = bShiftReg[4];
		bTempReg[6] = bShiftReg[5];
		bTempReg[7] = bShiftReg[6];
		bTempReg[8] = bShiftReg[7];
		bTempReg[9] = bShiftReg[8] ^ bShiftReg[9];
		*itOutput = bShiftReg[ 9 ];

		// assign values of the temp array to the flipflops
		for( unsigned char ucIndex = 0; ucIndex &lt; 10; ucIndex++ )
		{
			bShiftReg[ ucIndex ] = bTempReg[ ucIndex ];
		}

		/*cout&lt;&lt;&quot;\n Schift Reg: &quot;;
		for( int i=0;i&lt;10;i++)
		{ cout &lt;&lt; &quot; &quot; &lt;&lt; bShiftReg[i]; }

		cout&lt;&lt;&quot; Output: &quot; &lt;&lt; *itOutput;*/

		itOutput++;
	}
	cout&lt;&lt;&quot;\n Output: &quot;;
	for( itOutput = vbOutput.begin(); itOutput &lt; vbOutput.end(); itOutput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itOutput;

	cout&lt;&lt;endl&lt;&lt;endl;

	// Decoder -----------------------------------------------------------------------------------------------------------------------------------

	cout&lt;&lt; endl &lt;&lt;&quot; Decoder &quot;&lt;&lt; endl;

	// load the old ouput to the new input but use only bits 10:40
	itOutput = vbOutput.begin() + 10;
	for( itInput = vbInput.begin(); itInput &lt; vbInput.end() - 10; itInput++)
	{
		*itInput = *itOutput;
		itOutput++;

	}

	cout&lt;&lt;&quot;\n Input: &quot;;
	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itInput;

	// reset the shift reg
	for(int i = 0;i&lt;10;i++) bShiftReg[i] = 1;

	// set output iterator to the begin of the vector
	itOutput = vbOutput.begin();

	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
	{
		// calculate values of every flipflop and the output and save them in a temp array
		bool bTempReg[10];
		bTempReg[0] = *itInput;
		bTempReg[1] = bShiftReg[ 0 ] ^ *itInput;
		bTempReg[2] = bShiftReg[1];
		bTempReg[3] = bShiftReg[2];
		bTempReg[4] = bShiftReg[3];
		bTempReg[5] = bShiftReg[4];
		bTempReg[6] = bShiftReg[5];
		bTempReg[7] = bShiftReg[6];
		bTempReg[8] = bShiftReg[7];
		bTempReg[9] = bShiftReg[8];
		*itOutput = ( ( *itInput ^ bShiftReg[0] ) ^ bShiftReg[5] ) ^ bShiftReg[9];

		// assign values of the temp array to the flipflops
		for( unsigned char ucIndex = 0; ucIndex &lt; 10; ucIndex++ )
		{
			bShiftReg[ ucIndex ] = bTempReg[ ucIndex ];
		}

		/*cout&lt;&lt;&quot;\n Schift Reg: &quot;;
		for( int i=0;i&lt;10;i++)
		{ cout &lt;&lt; &quot; &quot; &lt;&lt; bShiftReg[i]; }
		cout&lt;&lt;&quot; Output: &quot; &lt;&lt; *itOutput;*/

		itOutput++;
	}
	cout&lt;&lt;&quot;\n Output: &quot;;
	for( itOutput = vbOutput.begin(); itOutput &lt; vbOutput.end(); itOutput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itOutput;

	cout&lt;&lt;endl&lt;&lt;endl;

	return 0;
}
</code></pre>
<p>Konsole liefert:</p>
<pre><code>Encoder

 Input:  1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

 Output:  1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 1 1 1 1 0 0

 Decoder

 Input:  1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
 Output:  0 1 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0
</code></pre>
<p>ich hoffe es ist verständlich und bitte um Hilfe. Habe viel gesehen und gelesen in Google und Foren aber leider nicht passendes und/oder verständliches. Ich weiss nicht, in welcher Reihenfolge man bei einem LFSR die einzelnen Flipflops berechnen soll. Ich bedanke mich schon Mal.</p>
<p>Mfg<br />
Max Krug</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2081138</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2081138</guid><dc:creator><![CDATA[MaxKrug]]></dc:creator><pubDate>Mon, 20 Jun 2011 13:32:47 GMT</pubDate></item><item><title><![CDATA[Reply to Brauche Hilfe beim SNRI-Coder mithilfe von LFSR on Mon, 20 Jun 2011 18:49:33 GMT]]></title><description><![CDATA[<p>gelöst, dank einem kollegen auf <a href="http://stackoverflow.com" rel="nofollow">stackoverflow.com</a> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title="=)"
      alt="🙂"
    /></p>
<pre><code class="language-cpp">#include &quot;stdafx.h&quot;
#include&lt;iostream&gt;
#include&lt;vector&gt;

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	// Encoder -----------------------------------------------------------------------------------------------------------------------------------
	cout&lt;&lt; endl &lt;&lt;&quot; Encoder &quot;&lt;&lt; endl;

	// create an input vector
	bool bInput[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
	//bool bInput[] = { 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 };
	vector&lt; bool &gt; vbInput( bInput, bInput + sizeof( bInput ) / sizeof( bool ) );

	// create the shift register
	//bool bShiftReg[10] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
	bool bShiftReg[10] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 };

	// create an output vector 
	vector&lt; bool &gt; vbOutput(40);

	// iterator for the input
	vector&lt;bool&gt;::iterator itInput = vbInput.begin();
	cout&lt;&lt;&quot;\n Input: &quot;;
	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itInput;

	cout&lt;&lt;endl&lt;&lt;endl;

	// iterator for the output
	vector&lt;bool&gt;::iterator itOutput = vbOutput.begin();

	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
	{
		// calculate values of every flipflop and the output and save them in a temp array
		bool bTempReg[10];
		bTempReg[0] = *itInput ^ ( bShiftReg[ 4 ] ^ bShiftReg[ 8 ] );
		bTempReg[1] = bShiftReg[0];
		bTempReg[2] = bShiftReg[1];
		bTempReg[3] = bShiftReg[2];
		bTempReg[4] = bShiftReg[3];
		bTempReg[5] = bShiftReg[4];
		bTempReg[6] = bShiftReg[5];
		bTempReg[7] = bShiftReg[6];
		bTempReg[8] = bShiftReg[7];
		bTempReg[9] = bShiftReg[8] ^ bShiftReg[9];
		*itOutput = bShiftReg[ 9 ];

		// assign values of the temp array to the flipflops
		for( unsigned char ucIndex = 0; ucIndex &lt; 10; ucIndex++ )
		{
			bShiftReg[ ucIndex ] = bTempReg[ ucIndex ];
		}

		/*cout&lt;&lt;&quot;\n Schift Reg: &quot;;
		for( int i=0;i&lt;10;i++)
		{ cout &lt;&lt; &quot; &quot; &lt;&lt; bShiftReg[i]; }

		cout&lt;&lt;&quot; Output: &quot; &lt;&lt; *itOutput;*/

		itOutput++;
	}
	cout&lt;&lt;&quot;\n Output: &quot;;
	for( itOutput = vbOutput.begin(); itOutput &lt; vbOutput.end(); itOutput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itOutput;

	cout&lt;&lt;endl&lt;&lt;endl;

	// Decoder -----------------------------------------------------------------------------------------------------------------------------------

	cout&lt;&lt; endl &lt;&lt;&quot; Decoder &quot;&lt;&lt; endl;

	// load the old ouput to the new input 
	vbInput = vbOutput;

	cout&lt;&lt;&quot;\n Input: &quot;;
	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itInput;

	// reset the shift reg
	for(int i = 0;i&lt;10;i++) bShiftReg[i] = 1;

	// set output iterator to the begin of the vector
	itOutput = vbOutput.begin();

	for( itInput = vbInput.begin(); itInput &lt; vbInput.end(); itInput++)
	{
		// calculate values of every flipflop and the output and save them in a temp array
		bool bTempReg[10];
		bTempReg[0] = *itInput;
		bTempReg[1] = bShiftReg[ 0 ] ^ *itInput;
		bTempReg[2] = bShiftReg[1];
		bTempReg[3] = bShiftReg[2];
		bTempReg[4] = bShiftReg[3];
		bTempReg[5] = bShiftReg[4];
		bTempReg[6] = bShiftReg[5];
		bTempReg[7] = bShiftReg[6];
		bTempReg[8] = bShiftReg[7];
		bTempReg[9] = bShiftReg[8];
		*itOutput = ( ( *itInput ^ bShiftReg[0] ) ^ bShiftReg[5] ) ^ bShiftReg[9];

		// assign values of the temp array to the flipflops
		for( unsigned char ucIndex = 0; ucIndex &lt; 10; ucIndex++ )
		{
			bShiftReg[ ucIndex ] = bTempReg[ ucIndex ];
		}

		/*cout&lt;&lt;&quot;\n Schift Reg: &quot;;
		for( int i=0;i&lt;10;i++)
		{ cout &lt;&lt; &quot; &quot; &lt;&lt; bShiftReg[i]; }
		cout&lt;&lt;&quot; Output: &quot; &lt;&lt; *itOutput;*/

		itOutput++;
	}
	cout&lt;&lt;&quot;\n Output: &quot;;
	for( itOutput = vbOutput.begin(); itOutput &lt; vbOutput.end(); itOutput++)
		cout &lt;&lt; &quot; &quot; &lt;&lt; *itOutput;

	cout&lt;&lt;endl&lt;&lt;endl;

	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2081322</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2081322</guid><dc:creator><![CDATA[MaxKrug]]></dc:creator><pubDate>Mon, 20 Jun 2011 18:49:33 GMT</pubDate></item></channel></rss>