Warning

You're browsing the old v2.x documentation. This version is no longer maintained. Click here to go the v3.x documentation.

# LSHIFT()

*Since version 2.1*

Syntax:

lshift!(<byte expression> [, <byte positions>])

or

lshift(<int expression> [, <byte positions>])

The `LSHIFT()`

function shifts each bit in *expression* to the left by the number of *positions* and returns the result of the operation.

The second argument can be omitted and it defaults to 1.

Warning: passing *positions* bigger than 127 will lead to undefined results.

## Performance tip

Shifting the bits to the left is equivalent to multiplying with powers of two, however much faster. Example:

rem -- this is slow x = 75 y = x * 4 rem -- this is fast x = 75 y = lshift(x, 2)