beautypg.com

Equal16 (equality test, 16 bit), Return) – Echelon Neuron User Manual

Page 177

background image


Example:
This example drops 3 bytes from the stack and returns to the caller of

LocalFunction.

callr LocalFunction ; (a, b, c, d)

; _drop_n_return_1 returns here. ; (a)

LocalFunction

pushs #d’3 ; (3, a, b, c, d)

call _drop_n_return_1 ; (a)

_drop_n_return_2 (Drop N Bytes from Stack,

Preserve NEXT and NEXT+1, and Return)

This function preserves two bytes on the stack (in NEXT and the element

following NEXT) and removes the next N items from the stack and returns to the

caller of the caller of this function.

Stack Transformation: (N, a, b, c(N) – a, b)
Location: Near
Registers Affected: None

Example:
This example drops 3 bytes from the stack and returns a,b to LocalFunction.

callr LocalFunction ; (a, b, c, d, e)

; _drop_n_return_2 returns here. ; (a, b)

LocalFunction

pushs #d’3 ; (3, a, b, c, d, e)

call _drop_n_return_2 ; (a, b)

_equal16 (Equality Test, 16 Bit)

This function returns true if two 16-bit values are equal.

Stack Transformation: (a(2), b(2) -- a(2) == b(2))
Location: Near
Registers Affected: None

Example:
This example determines if h’1234 == h’4321.

pushd #h’1234 ; (h’34, h’12)

pushd #h’4321 ; (h,21, h’43, h’34, h’12)

Neuron Assembly Language Reference

167