Shl
shl - słowo kluczowe języka Delphi
Shl to operator logiczny: przesuwa bity w lewo, najstarszy zostaje usunięty a najmłodszy zastępiony zerem.
SHL 101101
011010
1011010 | usunięte 1 i dodane 0
Uwaga!
Jeżeli używamy dużej zmiennej (patrz przykład 1), większej od 255 to najstarszy bit nie zostanie usunięty, zostaną dodane tylko zera na miejsce młodych bitów, wszystkie inne zostaną przesunięte.
Można przesuwać wiele bitów:
Przykład 1: (starsze bity nie usuwane, zmienna typu Integer)
Przykład 2: (starsze bity usuwane, zmienna typu Byte)
Zobacz też:
Shl to operator logiczny: przesuwa bity w lewo, najstarszy zostaje usunięty a najmłodszy zastępiony zerem.
SHL 101101
011010
1011010 | usunięte 1 i dodane 0
Uwaga!
Jeżeli używamy dużej zmiennej (patrz przykład 1), większej od 255 to najstarszy bit nie zostanie usunięty, zostaną dodane tylko zera na miejsce młodych bitów, wszystkie inne zostaną przesunięte.
Można przesuwać wiele bitów:
Przykład 1: (starsze bity nie usuwane, zmienna typu Integer)
var
I : Integer;
begin
I := 45; // 45 (bin: 101101)
I := I shl 3; // przesuwanie bitów o 3 w lewo
// I będzie równe 360 (bin: 101101 000)
end.
I : Integer;
begin
I := 45; // 45 (bin: 101101)
I := I shl 3; // przesuwanie bitów o 3 w lewo
// I będzie równe 360 (bin: 101101 000)
end.
Przykład 2: (starsze bity usuwane, zmienna typu Byte)
var
I:Byte;
begin
I := 45; // 45 (bin: 10 1101)
I := I shl 3; // 101101 shr 3
// I będzie równe 104 (bin: 1101 000)
end.
I:Byte;
begin
I := 45; // 45 (bin: 10 1101)
I := I shl 3; // 101101 shr 3
// I będzie równe 104 (bin: 1101 000)
end.
Zobacz też:


