Addressing Modes (Without Ext Extension); Immediate Addressing; Register Direct Addressing - Epson S1C33 Series Core Manual

Cmos 32-bit single chip microcomputer
Hide thumbs Also See for S1C33 Series:
Table of Contents

Advertisement

5 INSTRUCTION SET

5.5 Addressing Modes (without ext extension)

The instruction set of the C33 PE Core, as with the S1C33 series, has six discrete addressing modes, as described
below. The processor determines the addressing mode according to the operand in each instruction before it
accesses data.

(1) Immediate addressing

(2) Register direct addressing

(3) Register indirect addressing
(4) Register indirect addressing with postincrement
(5) Register indirect addressing with displacement
(6) Signed PC relative addressing
5.5.1 Immediate Addressing
The immediate included in the instruction code that is indicated as immX (unsigned immediate) or signX (signed
immediate) is used as the source data. The immediate size specifiable in each instruction is indicated by a numeral
in the symbol (e.g., imm4 = unsigned 4 bits; sign6 = signed 6 bits). For signed immediates such as sign6, the most
significant bit is the sign bit, which is extended to 32 bits when the instruction is executed.
Example: ld.w
%r0,0x30
Before execution
After execution
The immediate sign6 can represent values in the range of +31 to -32 (0b011111 to 0b100000).
Except in the case of shift-related and bit-manipulating instructions, immediate data can be extended to a maximum
of 32 bits by a combined use of the operand value and the ext instruction.
Example: ext
imm13
ext
imm13
ld.w
%r0,sign6
r0 after execution
31
r0
5.5.2 Register Direct Addressing
The content of a specified register is used directly as the source data. Furthermore, if this addressing mode is
specified as the destination for an instruction that loads the result in a register, the result is loaded in this specified
register. The instructions that have the following symbols as the operand are executed in this addressing mode.
rs is a metasymbol indicating the general-purpose register that holds the source data to be operated on or
%rs
transferred. The register is actually written as %r0, %r1, ... or %r15.
rd is a metasymbol indicating the general-purpose register that is the destination for the result of operation.
%rd
The register is actually written as %r0, %r1, ... or %r15. Depending on the instruction, it will also be used
as the source data.
ss is a metasymbol indicating the special register that holds the source data to be transferred to a general-
%ss
purpose register.
sd is a metasymbol indicating the special register to which data is to be loaded from a general-purpose
%sd
register.
22
r0 = 0xXXXXXXXX
r0 = 0xFFFFFFF0
(1)
(2)
19 18
imm13 (1)
imm13 (2)
EPSON
6
5
0
sign6
S1C33 FAMILY C33 PE CORE MANUAL

Advertisement

Table of Contents
loading

Table of Contents