Dette er bit-operasjoner. Den første linja gjør en venstre bitshift på PIN3, for deretter å bruke en OR-operasjon for å slå på biten han ønsker. Har ikke tiden nå til å skrive en detaljert beskrivelse av operasjonene, men kan visualisere verdiene fortløpende veldig kjapt med en liten kodesnutt i C#. Les litt i linkene jeg henviser til, så skjønner du det nok mye bedre.
Denne koden kan kanskje visualisere litt bedre hva han gjør:
Kode
class MainClass
{
public static void Main (string[] args)
{
int DDRB = 16;
Console.WriteLine( toBinary(DDRB) );
int PIN3 = 2;
Console.WriteLine( toBinary(PIN3) );
PIN3 = 1 << PIN3;
Console.WriteLine( toBinary(PIN3) );
DDRB = DDRB | PIN3;
Console.WriteLine( toBinary(DDRB) );
Console.ReadKey();
}
private static string toBinary( int input )
{
return Convert.ToString( input, 2 );
}
}
Utput av koden
Da kan du sikkert tenke deg hva neste linje gjør?
http://www.gamedev.net/reference/art...rticle1563.asp
http://en.wikipedia.org/wiki/Bitwise_operation
Sist endret av m0b; 25. desember 2010 kl. 16:48.