tuple_lsh
— Bitweises Verschieben eines Tupels nach links.
tuple_lsh
verschiebt das Tupel T
bitweise um
Shift
Stellen nach links. Falls kein Überlauf eintritt,
ist diese Operation äquivalent zu einer Multiplikation mit
2^{Shift
}. Falls T
negativ ist, hängt das
Ergebnis von der Rechnerarchitektur ab. Das Ergebnis ist
undefiniert, falls Shift
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
T
oder Shift
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.
Falls eines oder beide der Eingabetupel leer sind, gibt der Operator ein leeres Tupel zurück.
HDevelop unterstützt eine Inline-Operation für tuple_lsh
,
die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden
kann:
T
(input_control) integer(-array) →
(integer)
Eingabetupel.
Shift
(input_control) integer(-array) →
(integer)
Anzahl Stellen, um die verschoben werden soll.
Lsh
(output_control) integer(-array) →
(integer)
Verschobenes Eingabetupel.
Foundation