Instruction Set
3-29
RISC 16−Bit CPU
CALL
Subroutine
Syntax
CALL
dst
Operation
dst
−> tmp
dst is evaluated and stored
SP − 2
−> SP
PC
−> @SP
PC updated to TOS
tmp
−> PC
dst saved to PC
Description
A subroutine call is made to an address anywhere in the 64K address space.
All addressing modes can be used. The return address (the address of the
following instruction) is stored on the stack. The call instruction is a word
instruction.
Status Bits
Status bits are not affected.
Example
Examples for all addressing modes are given.
CALL
#EXEC
; Call on label EXEC or immediate address (e.g. #0A4h)
; SP−2
→
SP, PC+2
→
@SP, @PC+
→
PC
CALL
EXEC
; Call on the address contained in EXEC
; SP−2
→
SP, PC+2
→
@SP, X(PC)
→
PC
; Indirect address
CALL
&EXEC
; Call on the address contained in absolute address
; EXEC
; SP−2
→
SP, PC+2
→
@SP, X(0)
→
PC
; Indirect address
CALL
R5
; Call on the address contained in R5
; SP−2
→
SP, PC+2
→
@SP, R5
→
PC
; Indirect R5
CALL
@R5
; Call on the address contained in the word
; pointed to by R5
; SP−2
→
SP, PC+2
→
@SP, @R5
→
PC
; Indirect, indirect R5
CALL
@R5+
; Call on the address contained in the word
; pointed to by R5 and increment pointer in R5.
; The next time—S/W flow uses R5 pointer—
; it can alter the program execution due to
; access to next address in a table pointed to by R5
; SP−2
→
SP, PC+2
→
@SP, @R5
→
PC
; Indirect, indirect R5 with autoincrement
CALL
X(R5)
; Call on the address contained in the address pointed
; to by R5 + X (e.g. table with address starting at X)
; X can be an address or a label
; SP−2
→
SP, PC+2
→
@SP, X(R5)
→
PC
; Indirect, indirect R5 + X
Summary of Contents for MSP430x1xx
Page 1: ... 2005 Mixed Signal Products User s Guide SLAU049E ...
Page 6: ...vi ...
Page 18: ...1 6 Introduction ...
Page 36: ...2 18 System Resets Interrupts and Operating Modes ...
Page 112: ...3 76 ...
Page 130: ...4 18 Basic Clock Module ...
Page 152: ...5 22 Flash Memory Controller ...
Page 160: ...6 8 Supply Voltage Supervisor ...
Page 168: ...7 8 Hardware Multiplier ...
Page 192: ...8 24 ...
Page 200: ...9 8 Digital I O ...
Page 234: ...11 24 Timer_A ...
Page 260: ...12 26 Timer_B ...
Page 291: ...13 31 USART Peripheral Interface UART Mode ...
Page 314: ...14 23 USART Peripheral Interface SPI Mode ...
Page 346: ...15 32 USART Peripheral Interface I2C Mode ...
Page 358: ...16 12 Comparator_A ...
Page 386: ...17 28 ADC12 ...
Page 418: ...18 32 ADC10 ...
Page 432: ...19 14 DAC12 ...