Lshift16_add16 (left shift and add, 16 bit) – Echelon Neuron User Manual
Page 187

_lshift16_add16 (Left Shift and Add, 16 Bit)
This function takes a 16-bit index, shifts it left n times, and adds the result to a
base value.
Stack Transformation: (index(2), n, base(2) -- base(2)+(index(2)<
Registers Affected: None
Example:
This example uses a base of h’efe3, an index of 10, and a shift value of 1.
pushd #h’efe3 ; (h’e3, h’ef)
pushs #d’1 ; (1, h’e3, h’ef)
pushd #d’10 ; (d’10, 0, 1, h’e3, h’ef)
callf _lshift16_add16 ; (h’f7, h’ef)
_lshift8_add16 (Left Shift and Add, Converts 8
Bits to 16 Bits)
This function takes an index, converts it to a 16-bit quantity, shifts it left n times,
and adds the result to a base value.
Stack Transformation: (index, n, base(2) -- base(2)+(index(2)<
Registers Affected: None
Example:
This example uses a base of h’efe3, an index of 10, and a shift value of 1.
pushd #h’efe3 ; (h’e3, h’ef)
pushs #d’1 ; (1, h’e3, h’ef)
push #d’10 ; (d’10, 1, h’e3, h’ef)
callf _lshift8_add16 ; (h’f7, h’ef)
_lshift8by1_add16 (Left Shift By 1 and Add,
Converts 8 Bits to 16 Bits)
This function takes an index, converts it to a 16-bit quantity, shifts it left once,
and adds the result to a base value.
Stack Transformation: (index, base(2) -- base(2)+(index(2)<<1))
Location: Far
Neuron Assembly Language Reference
177