tuple_lshtuple_lshTupleLshTupleLshtuple_lsh (Operator)

Name

tuple_lshtuple_lshTupleLshTupleLshtuple_lsh — Bitweises Verschieben eines Tupels nach links.

Signatur

tuple_lsh( : : T, Shift : Lsh)

Herror tuple_lsh(const Hlong T, const Hlong Shift, Hlong* Lsh)

Herror T_tuple_lsh(const Htuple T, const Htuple Shift, Htuple* Lsh)

void TupleLsh(const HTuple& T, const HTuple& Shift, HTuple* Lsh)

HTuple HTuple::TupleLsh(const HTuple& Shift) const

static void HOperatorSet.TupleLsh(HTuple t, HTuple shift, out HTuple lsh)

HTuple HTuple.TupleLsh(HTuple shift)

def tuple_lsh(t: MaybeSequence[int], shift: MaybeSequence[int]) -> Sequence[int]

def tuple_lsh_s(t: MaybeSequence[int], shift: MaybeSequence[int]) -> int

Beschreibung

tuple_lshtuple_lshTupleLshTupleLshTupleLshtuple_lsh verschiebt das Tupel TTTTtt bitweise um ShiftShiftShiftShiftshiftshift Stellen nach links. Falls kein Überlauf eintritt, ist diese Operation äquivalent zu einer Multiplikation mit 2^{ShiftShiftShiftShiftshiftshift}. Falls TTTTtt negativ ist, hängt das Ergebnis von der Rechnerarchitektur ab. Das Ergebnis ist undefiniert, falls ShiftShiftShiftShiftshiftshift negativ oder größer als 32 ist. Falls beide Tupel dieselbe Länge haben, werden die entsprechenden Elemente der beiden Tupel veknüpft. Ansonsten muss entweder TTTTtt oder ShiftShiftShiftShiftshiftshift die Länge 1 haben. In diesem Fall wird die Operation für jedes Element des längeren Tupels mit dem einzigen Element des anderen Tupels ausgeführt. Die Eingabezahlen müssen ganze Zahlen sein.

Sonderfall: Leere Eingabetupel

Falls eines oder beide der Eingabetupel leer sind, gibt der Operator ein leeres Tupel zurück.

HDevelop Inline-Operation

HDevelop unterstützt eine Inline-Operation für tuple_lshtuple_lshTupleLshTupleLshTupleLshtuple_lsh, die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden kann:

Lsh := lsh(T, Shift)

Ausführungsinformationen

Parameter

TTTTtt (input_control)  integer(-array) HTupleMaybeSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Eingabetupel.

ShiftShiftShiftShiftshiftshift (input_control)  integer(-array) HTupleMaybeSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Anzahl Stellen, um die verschoben werden soll.

LshLshLshLshlshlsh (output_control)  integer(-array) HTupleSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Verschobenes Eingabetupel.

Alternativen

tuple_multtuple_multTupleMultTupleMultTupleMulttuple_mult

Siehe auch

tuple_rshtuple_rshTupleRshTupleRshTupleRshtuple_rsh

Modul

Foundation