C# Bitwise lewy operator zmiany biegów

C# Bitwise lewy operator zmiany biegów
W programowaniu C# możemy użyć operatorów bitowców do wykonywania operacji na poziomie bitów. Obliczenie poziomu bitów odbywa się w procesorze, gdy wykonujemy operacje arytmetyczne, takie jak dodawanie, odejmowanie, mnożenie lub podział. Możemy również wykonywać operacje bitowe w programowaniu C#, a proces jest prosty. Operatorzy bitowate wykonują operację w danej wartości. Określono również liczbę bitów do przesunięcia. Istnieje sześciu operatorów bitowców w języku C#, dwóch z nich to operatorzy zmiany.

Nasz temat dyskusji dotyczy operatorów zmiany. Bitwise operator zmiany biegów (<<) will be explained in detail. The shift operator, as the name suggests, shifts the bit from the specified position to the left or to the right. The value is moved to the left by the specified number of bits while using the bitwise left shift operator (<<). The left shift operators take the input only in int (integer), uint (unsigned integer), long (long integer), and ulong (unsigned long integer). When the left operand belongs to a different type, it is converted to the integer type. The data type of the resultant value retains a limit of 32 bits; the output cannot be larger than that. Bitwise operators make the code efficient and faster. Moreover, they offer more accuracy and precision.

Składnia:

Operand_1 << Operand_2

Pierwszy „operand_1” to wartość przesunięta z lewej do liczby zmian, które zawiera „operand_2”. Symbol << left shifts the “Operand_1”.

Przykład 1:

Bitwise operator zmiany biegów (<<) is applied to the integer values in this program.

za pomocą systemu;
program klasowy_1

static void main ()
int value_0 = 34;
int value_1 = 65;
int res = value_0 << Value_1;
Konsola.Napisz („lewa zmiana jest”);
Konsola.Write (res);

Pierwsze stwierdzenie zawiera deklarację i inicjalizację dwóch zmiennych typu liczb całkowitych. Pierwszą zmienną jest „wartość_0”, a druga zmienna to „wartość_1”. Wartości, które są w nich przechowywane, to „34” i „65”. Porzuciliśmy zmianę wartość 34 za pomocą operatora zmiany biegów (<<). Then, we declare another variable that has an integer data type to save the result. Here, we utilize the left shift operator (<<) as Value_0 << Value_1. This operator left shifts the left operand's left value by the given value in the second operand. The “res” stores the output of the shift operator. After this, we call the Console.Write() method to print text “The left shift is” and the resultant value that is stored in “res” on the terminal.

Przykład 2:

Użyjmy lewego operatora Shift na wartościach całkowitej i zobaczmy, jak wytwarzają wyjście.

za pomocą systemu;
program klasowy_2

static void main ()
uint val_0 = 4435;
int val_1 = 64;
Uint wynik = val_0 << Val_1;
Konsola.Napisz („lewa zmiana jest”);
Konsola.Napisz (wynik);

Tutaj stosujemy lewy operator Shift na wartość typu liczb całkowitych niepodpisanych. Jedną rzeczą, o którą musisz się zadbać, jest to, że drugi operand musi być wartością typu liczb całkowitych, ponieważ kompilator przyjmuje tylko wartość całkowitą.

Po wywołaniu funkcji statycznej void main () deklarujemy dwie zmienne - z których jedna to niepodpisana wartość liczb całkowita „VAL_0”, a druga jest wartością liczb całkowitą „VAL_1”. Następnie definiujemy kolejną niepodpisaną zmienną liczb całkowitą, która jest „wynik”, aby zachować wynikową wartość po przeniesieniu bez podpisanej liczby całkowitej. Nie możemy przechowywać wyniku w zmiennej typu liczb całkowity. „Val_0 << Val_1” statement left shifts the left operand that is an unsigned integer value. It produces an unsigned integer value. In the end, show the result on the output screen with the text “The left shift is” using the Console.Write() method:

Przykład 3:

W tym przypadku porozmawiamy o różnych metodach korzystania z operatora Bitwise LEED Shift (<<) on long integer values.

za pomocą systemu;
program klasowy_3

static void main ()
długi numer_0 = 45;
długi numer_1 = 5;
Konsola.Write („Lewa zmiana długiego jest”);
Konsola.WriteLine (numer_0 << 3);
Konsola.Write („Lewa zmiana długiego jest”);
Konsola.Write (numer_0 << Convert.ToInt16(number_1));

Inicjalizacja dwóch zmiennych typu liczb całkowitych, „numer_0” i „numer_1”, odbywa się w pierwszej instrukcji. Wywołać konsolę.Zapis () funkcja reprezentująca wiadomość „lewa zmiana długiego” i wynik na terminalu. Tutaj stosujemy lewy operator zmiany biegów (<<) in such a way that we place the first operand as the first variable and the second operand as an integer value. The compiler left shifts the first operand which is “number_0” by 3 and displays the result. In the next statement, print another message on the screen by employing the Console.Write() method. Here, we utilize the first variable, “number_0”, as the first operand and the second variable, “number_1”, as the second operand. The second operand must be an integer type value. We typecast the second variable “number_1” to the integer type using the Convert.ToInt16() function. Then, display the outcome on the console:

Przykład 4:

Ten kod pokazuje, w jaki sposób możemy przypisać wartości do liczby całkowitej po wykonaniu lewego przesunięcia na niepodpisanym długim operatorze.

za pomocą systemu;
program klasowy_4

static void main ()
ULong Number_0 = 445;
Konsola.Write („Lewa przesunięcie ULONG jest”);
Konsola.WriteLine (numer_0 << 8);
Konsola.Write („Lewa przesunięcie ULONG jest”);
Konsola.WriteLine (numer_0 << 16);
Konsola.Write („Lewa przesunięcie ULONG jest”);
Konsola.WriteLine (numer_0 << 32);

Najpierw zadeklaruj jedną niezagowaną długą zmienną typu liczb całkowitych, która jest „numer_0”. Następnie pokaż tekst „Lewa przesunięcie ULONG” na terminalu, wywołując konsolę.Metoda zapisu (). Znajdziemy lewą przesunięcie „numer_0” o wartość liczb całkowitą 8 i nie musimy przechowywać wyników nigdzie. Konsola.WriteLine () Funkcja drukuje wynik na konsoli. Powtórz ten proces dwa razy i zmień wartości drugiego operandu. W ten sposób możemy znaleźć lewą przesunięcie długiej wartości typu liczb całkowitych niepodpisanego. Ale jeśli chcemy zapisać wynikową wartość w zmiennej, powinniśmy zachować w myślach, że wynik jest tym samym typem co pierwszy. Jedyna różnica między konsolą.Napisz () i konsolę.WriteLine () polega na tym, że druga funkcja drukuje wynik i wysyła kursor do następnego wiersza, podczas gdy pierwsza funkcja tylko drukuje wynik, a kursor miga na tej samej linii, nawet po wyświetleniu wyjścia.

Wniosek

Badaliśmy operatorów bitowców w C#, ich typach i funkcjonalności. Lewa zmiana (<<) operator is applied to shift the number or value by the definite number of bits to the left. The Bitwise operators improve the efficiency of the code and it does not burden the system since they are lightweight operators. Our CPU (computer processing unit) works on the Bitwise level whenever we perform any arithmetic operations. In a nutshell, the Bitwise operators are important in programming and C# supports all the Bitwise operators in which the left shift operator (<<) is one of them.