beautypg.com

Gequ8s (greater than or equal signed, 8 bit), Get_sp (get stack pointer), Inc16 (increment, 16 bit) – Echelon Neuron User Manual

Page 179

background image

Example:
This example determines if d’10 >= d’20.

push #d’20 ; (d’20)

push #d’10 ; (d’10, d’20)

call _gequ8 ; (0)

_gequ8s (Greater Than or Equal Signed, 8 Bit)

This function returns a >= b, where a and b are signed.

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

Example:
This example determines if d’10 >= -d’10.

push #@lb(-d’10) ; (-d’10)

push #d’10 ; (d’10, -d’10)

call _gequ8s ; (1)

_get_sp (Get Stack Pointer)

This function gets the address of an item on the stack. -1 specifies the address of

TOS, -2 specifies the address of NEXT, and so on. Note that because TOS is

implemented as a dedicated special CPU register, you cannot accessed it through

a pointer calculated with _get_sp.

Stack Transformation: (offset -- address(2))
Location: Near
Registers Affected: None

Example:
This example gets the address of stack item c.

push #@lb(-d’3) ; (-3, a, b, c)

call _get_sp ; (&c(2), a, b, c)

_inc16 (Increment, 16 Bit)

This function increments a 16-bit value by 1.

Stack Transformation: (value(2) -- value(2)+1)
Location: Near

Neuron Assembly Language Reference

169