64
CHAPTER 3 CPU ARCHITECTURE
User’s Manual U12697EJ3V0UM
3.3.2 CALLT instruction table area
The 64 KB area from 00040H to 0007FH can store the subroutine entry addresses for the 1-byte call instruction
(CALLT).
For a CALLT instruction, this table is referenced and the base area address written in the table is branched to as
the subroutine. Since a CALLT instruction is one byte, many subroutine call descriptions in the program can be CALLT
instructions, so the object size of the program can be reduced. Since a maximum of 32 subroutine entry addresses
can be described in the table, they should be registered in order from the most frequently described.
When not used as the CALLT instruction table, the area can be used as normal program memory or data memory.
3.3.3 CALLF instruction entry area
The area from 00800H to 00FFFH can be for direct subroutine calls in the 2-byte call instruction (CALLF).
Since a CALLF instruction is a 2-byte call instruction, compared to when using the CALL instruction (3 bytes or
4 bytes) of a direct subroutine call, the object size can be reduced.
When you want to achieve high speed, describing direct subroutines in this area is effective.
If you want to decrease the object size, an unconditional branch (BR) is described in this area, and the actual
subroutine is placed outside of this area. When a subroutine is called from five or more locations, reducing the object
size is attempted. In this case, since only a 4-byte location for the BR instruction is used in the CALLF entry area,
the object size of many subroutines can be reduced.