4-5
PROGRAMMING CONSIDERATIONS
4.1.11 Floating Point Operations
The hardware does not directly support operations on REAL (floating point) variables. Those op-
erations are supported by floating point libraries from third-party tool vendors. (See the Develop-
ment Tools Handbook.) The performance of these operations is significantly improved by the
NORML instruction and by the sticky bit (ST) flag in the processor status word (PSW). The
NORML instruction normalizes a 32-bit variable; the sticky bit (ST) flag can be used in conjunc-
tion with the carry (C) flag to achieve finer resolution in rounding.
4.1.12 Extended Instructions
This section briefly describes the instructions that have been added to enable code execution and
data access anywhere in the 1-Mbyte address space.
NOTE
In 1-Mbyte mode, ECALL, LCALL, and SCALL always push two words onto
the stack; therefore, a RET must always pop two words from the stack.
Because of the extra push and pop operations, interrupt routines and
subroutines take slightly longer to execute in 1-Mbyte mode than in 64-Kbyte
mode.
EBMOVI Extended interruptable block move. Moves a block of word data from one
memory location to another. This instruction allows you to move blocks of up to
64K words between any two locations in the address space. It uses two 24-bit
autoincrementing pointers and a 16-bit counter.
EBR Extended branch. This instruction is an unconditional indirect jump to
anywhere in the address space. It functions only in extended addressing modes.
ECALL Extended call. This instruction is an unconditional relative call to anywhere in
the address space. It functions only in extended addressing modes.
EJMP Extended jump. This instruction is an unconditional, relative jump to anywhere
in the address space. It functions only in extended addressing modes.
ELD Extended load word. Loads the value of the source word operand into the
destination operand. This instruction allows you to move data from anywhere in
the address space into the lower register file. It operates in extended indirect and
extended indexed modes.
ELDB Extended load byte. Loads the value of the source byte operand into the
destination operand. This instruction allows you to move data from anywhere in
the address space into the lower register file. It operates in extended indirect and
extended indexed modes.