Short-form description (continued) – Texas Instruments MSP430x11x1 User Manual
Page 4

MSP430x11x1
MIXED SIGNAL MICROCONTROLLER
SLAS241C – SEPTEMBER 1999 – REVISED JUNE 2000
4
POST OFFICE BOX 655303
•
DALLAS, TEXAS 75265
short-form description (continued)
CPU
All sixteen registers are located inside the CPU,
providing reduced instruction execution time. This
reduces a register-register operation execution
time to one cycle of the processor.
Four registers are reserved for special use as a
program counter, a stack pointer, a status register,
and a constant generator. The remaining twelve
registers are available as general-purpose
registers.
Peripherals are connected to the CPU using a
data address and control buses and can be
handled easily with all instructions for memory
manipulation.
instruction set
The instructions set for this register-register architecture provides a powerful and easy-to-use assembly
language. The instruction set consists of 51 instructions with three formats and seven addressing modes.
Table 1 provides a summation and example of the three types of instruction formats; the addressing modes are
listed in Table 2.
Table 1. Instruction Word Formats
Dual operands, source-destination
e.g. ADD R4, R5
R4 + R5
→
R5
Single operands, destination only
e.g. CALL R8
PC
→
(TOS), R8
→
PC
Relative jump, un-/conditional
e.g. JNE
Jump-on equal bit = 0
Most instructions can operate on both word and byte data. Byte operations are identified by the suffix B.
Examples:
Instructions for word operation
Instructions for byte operation
MOV
EDE,TONI
MOV.B
EDE,TONI
ADD
#235h,&MEM
ADD.B
#35h,&MEM
PUSH
R5
PUSH.B
R5
SWPB
R5
—
Table 2. Address Mode Descriptions
ADDRESS MODE
s
d
SYNTAX
EXAMPLE
OPERATION
Register
√
√
MOV Rs, Rd
MOV R10, R11
R10
→
R11
Indexed
√
√
MOV X(Rn), Y(Rm)
MOV 2(R5), 6(R6)
M(2 + R5)
→
M(6 + R6)
Symbolic (PC relative)
√
√
MOV EDE, TONI
M(EDE)
→
M(TONI)
Absolute
√
√
MOV &MEM, &TCDAT
M(MEM)
→
M(TCDAT)
Indirect
√
MOV @Rn, Y(Rm)
MOV @R10, Tab(R6)
M(R10)
→
M(Tab + R6)
Indirect autoincrement
√
MOV @Rn+, RM
MOV @R10+, R11
M(R10)
→
R11, R10 + 2
→
R10
Immediate
√
MOV #X, TONI
MOV #45, TONI
#45
→
M(TONI)
NOTE: s = source d = destination Rs/Rd = source register/destination register Rn = register number
Program Counter
General-Purpose Register
PC/R0
Stack Pointer
SP/R1
Status Register
SR/CG1/R2
Constant Generator
CG2/R3
R4
General-Purpose Register
R5
General-Purpose Register
R14
General-Purpose Register
R15