C# Bitwise Left Shift (<<) Operator

C Bitwise Left Shift Operator



Bei der C#-Programmierung können wir die Bitwise-Operatoren verwenden, um die Operationen auf Bitebene auszuführen. Die Berechnung auf Bitebene erfolgt in der CPU, wenn wir arithmetische Operationen wie Addition, Subtraktion, Multiplikation oder Division durchführen. Wir können auch bitweise Operationen in der C#-Programmierung durchführen und der Prozess ist einfach. Die Bitwise-Operatoren führen eine Operation mit dem angegebenen Wert aus. Die Anzahl der zu verschiebenden Bits wird ebenfalls angegeben. Es gibt sechs Bitwise-Operatoren in der C#-Sprache, zwei davon sind Shift-Operatoren.

Unser Diskussionsthema dreht sich um die Schichtoperatoren. Der bitweise Linksverschiebungsoperator (<<) wird im Detail erklärt. Der Shift-Operator verschiebt, wie der Name schon sagt, das Bit von der angegebenen Position nach links oder rechts. Der Wert wird unter Verwendung des bitweisen Linksverschiebungsoperators (<<) um die angegebene Anzahl von Bits nach links verschoben. Die Linksverschiebungsoperatoren nehmen die Eingabe nur in int (Ganzzahl), uint (vorzeichenlose Ganzzahl), long (lange Ganzzahl) und ulong (vorzeichenlose lange Ganzzahl) entgegen. Wenn der linke Operand zu einem anderen Typ gehört, wird er in den ganzzahligen Typ konvertiert. Der Datentyp des resultierenden Werts bleibt auf 32 Bit begrenzt; die Ausgabe kann nicht größer sein. Bitweise Operatoren machen den Code effizienter und schneller. Darüber hinaus bieten sie mehr Genauigkeit und Präzision.

Syntax:

Operand_1 << Operand_2







Der erste „Operand_1“ ist der Wert, der von links um die Anzahl der Verschiebungen verschoben wird, die der „Operand_2“ enthält. Das Symbol << nach links verschiebt den „Operand_1“.



Beispiel 1:

Der bitweise Linksverschiebungsoperator (<<) wird in diesem Programm auf die ganzzahligen Werte angewendet.



mit System;

Klasse Programm_1
{
statische Leere Main ( ) {
int Wert_0 = 3. 4 ;
int Wert_1 = 65 ;
int res = Wert_0 << Wert_1;
Konsole.Schreiben ( 'Die Linksverschiebung ist ' ) ;
Konsole.Schreiben ( res ) ;
}
}

Die erste Anweisung enthält die Deklaration und Initialisierung von zwei Variablen vom Typ Integer. Die erste Variable ist „Wert_0“ und die zweite Variable ist „Wert_1“. Die darin gespeicherten Werte sind „34“ und „65“. Wir verschieben den Wert 34 mit dem Linksverschiebungsoperator (<<) nach links. Dann deklarieren wir eine andere Variable, die einen ganzzahligen Datentyp hat, um das Ergebnis zu speichern. Hier verwenden wir den Linksverschiebungsoperator (<<) als Value_0 << Value_1. Dieser Operator nach links verschiebt den linken Wert des linken Operanden um den angegebenen Wert im zweiten Operanden. Das „res“ speichert die Ausgabe des Verschiebungsoperators. Danach rufen wir die Console.Write()-Methode auf, um den Text „The left shift is“ und den resultierenden Wert, der in „res“ auf dem Terminal gespeichert ist, auszugeben.





Beispiel 2:

Lassen Sie uns den Linksverschiebungsoperator auf die vorzeichenlosen ganzzahligen Werte anwenden und sehen, wie sie die Ausgabe erzeugen.



mit System;

Klasse Programm_2
{
statische Leere Main ( ) {
uint Val_0 = 4435 ;
int  Val_1 = 64 ;
uint Ergebnis = Wert_0 << Val_1;
Konsole.Schreiben ( 'Die Linksverschiebung ist' ) ;
Konsole.Schreiben ( Ergebnis ) ;
}
}

Hier wenden wir den Linksverschiebungsoperator auf den Wert vom Typ Ganzzahl ohne Vorzeichen an. Eine Sache, auf die Sie achten müssen, ist, dass der zweite Operand ein ganzzahliger Wert sein muss, da der Compiler nur einen ganzzahligen Wert zum Verschieben akzeptiert.

Nach dem Aufruf der statischen void Main()-Funktion deklarieren wir zwei Variablen – eine davon ist ein unsigned Integer-Wert „Val_0“ und die andere ein Integer-Wert „Val_1“. Dann definieren wir eine weitere vorzeichenlose Integer-Variable, die „Ergebnis“ ist, um den resultierenden Wert nach der Linksverschiebung der vorzeichenlosen Ganzzahl beizubehalten. Wir können das Ergebnis nicht in einer Variablen vom Typ Integer speichern, da das Ergebnis nach der Verschiebung nach links ein Wert ohne Vorzeichen ist. Die „Val_0 << Val_1“-Anweisung nach links verschiebt den linken Operanden, der ein ganzzahliger Wert ohne Vorzeichen ist. Es erzeugt einen vorzeichenlosen ganzzahligen Wert. Zeigen Sie am Ende das Ergebnis auf dem Ausgabebildschirm mit dem Text „The left shift is“ mithilfe der Methode Console.Write() an:

Beispiel 3:

In diesem Fall werden wir über die verschiedenen Methoden zur Verwendung des bitweisen Linksverschiebungsoperators (<<) für lange ganzzahlige Werte sprechen.

mit System;

Klasse Programm_3
{
statische Leere Main ( ) {
lange Zahl_0 = Vier fünf ;
lange Zahl_1 = 5 ;

Konsole.Schreiben ( „Die Linksverschiebung von Long ist“ ) ;
Console.WriteLine ( Zahl_0 << 3 ) ;
Konsole.Schreiben ( „Die Linksverschiebung von Long ist“ ) ;
Konsole.Schreiben ( Zahl_0 << Convert.ToInt16 ( Nummer 1 ) ) ;
}
}

Die Initialisierung von zwei Variablen vom Typ Long Integer, „number_0“ und „number_1“, erfolgt in der ersten Anweisung. Rufen Sie die Funktion Console.Write() auf, um die Nachricht „Die Linksverschiebung von long is“ und das Ergebnis auf dem Terminal darzustellen. Hier wenden wir den Linksverschiebungsoperator (<<) so an, dass wir den ersten Operanden als erste Variable und den zweiten Operanden als ganzzahligen Wert platzieren. Der Compiler verschiebt den ersten Operanden, der „number_0“ ist, um 3 nach links und zeigt das Ergebnis an. Geben Sie in der nächsten Anweisung eine weitere Nachricht auf dem Bildschirm aus, indem Sie die Methode Console.Write() verwenden. Hier verwenden wir die erste Variable „number_0“ als ersten Operanden und die zweite Variable „number_1“ als zweiten Operanden. Der zweite Operand muss ein ganzzahliger Wert sein. Wir typisieren die zweite Variable „number_1“ mit der Funktion Convert.ToInt16() in den Integer-Typ. Zeigen Sie dann das Ergebnis auf der Konsole an:

Beispiel 4:

Dieser Code zeigt, wie wir die Werte einer Ganzzahl zuweisen können, nachdem wir die Linksverschiebung des vorzeichenlosen langen Operators durchgeführt haben.

mit System;

Klasse Programm_4
{
statische Leere Main ( ) {
Kopfnummer_0 = 445 ;

Konsole.Schreiben ( 'Die Linksverschiebung von ulong ist ' ) ;
Console.WriteLine ( Zahl_0 << 8 ) ;
Konsole.Schreiben ( 'Die Linksverschiebung von ulong ist ' ) ;
Console.WriteLine ( Zahl_0 << 16 ) ;
Konsole.Schreiben ( 'Die Linksverschiebung von ulong ist ' ) ;
Console.WriteLine ( Zahl_0 << 32 ) ;

}
}

Deklarieren Sie zunächst eine Variable vom Typ „Long Integer“ ohne Vorzeichen, nämlich „number_0“. Zeigen Sie als Nächstes den Text „The left shift of ulong is“ auf dem Terminal an, indem Sie die Methode Console.Write() aufrufen. Wir finden die Linksverschiebung der „number_0“ um einen ganzzahligen Wert von 8 und müssen das Ergebnis nirgendwo speichern. Die Funktion Console.WriteLine() gibt das Ergebnis auf der Konsole aus. Wiederholen Sie diesen Vorgang zweimal und ändern Sie die Werte des zweiten Operanden. Auf diese Weise können wir die Linksverschiebung eines langen vorzeichenlosen ganzzahligen Werts finden. Wenn wir aber den resultierenden Wert in einer Variablen speichern wollen, sollten wir bedenken, dass das Ergebnis vom gleichen Typ ist wie der erste Operand. Der einzige Unterschied zwischen Console.Write() und Console.WriteLine() besteht darin, dass die zweite Funktion das Ergebnis druckt und den Cursor in die nächste Zeile schickt, während die erste Funktion nur das Ergebnis druckt und der Cursor auch danach in derselben Zeile blinkt Anzeige der Ausgabe.

Fazit

Wir haben die Bitwise-Operatoren in C#, ihre Typen und Funktionalitäten untersucht. Der Linksverschiebungsoperator (<<) wird angewendet, um die Zahl oder den Wert um die bestimmte Anzahl von Bits nach links zu verschieben. Die Bitwise-Operatoren verbessern die Effizienz des Codes und belasten das System nicht, da es sich um leichte Operatoren handelt. Unsere CPU (Computer Processing Unit) arbeitet auf bitweiser Ebene, wann immer wir arithmetische Operationen durchführen. Kurz gesagt, die Bitwise-Operatoren sind wichtig für die Programmierung, und C# unterstützt alle Bitwise-Operatoren, bei denen der Linksverschiebungsoperator (<<) einer davon ist.