0-4
CHAPTER 0
0.1. GMS30C2116/32 RISC/DSP (continued)
¡ ÜMemory address modes: register address, register post-increment, register + dis-
placement (including PC relative), register post-increment by displacement (next
address), absolute, stack address, I/O absolute and I/O displacement
¡ ÜLoad, all data types, bytes and half words right adjusted and zero- or sign-expanded,
execution proceeds after Load until data is needed
¡ ÜStore, all data types, trap when range of signed byte or half word is exceeded
¡ ÜMove, Move immediate, Move double-word
¡ ÜLogical instructions AND, AND not, OR, XOR, NOT, AND not immediate, OR
immediate, XOR immediate
¡ ÜMask source and immediate Þ destination
¡ ÜAdd unsigned/signed, Add signed with trap on overflow, Add with carry
¡ ÜAdd unsigned/signed immediate, Add signed immediate with trap on overflow
¡ ÜSum source + immediate Þ destination, unsigned/signed and signed with trap on
overflow
¡ ÜSubtract unsigned/signed, Subtract signed with trap on overflow, Subtract with carry
¡ ÜNegate unsigned/signed, Negate signed with trap on overflow
¡ ÜMultiply word * word Þ low-order word unsigned or signed, Multiply
word * word Þ double-word unsigned and signed
¡ ÜDivide double-word by word Þ quotient and remainder, unsigned and signed
¡ ÜShift left unsigned/signed, single and double-word, by constant and by content of
register, Shift left signed by constant with trap on loss of high-order bits
¡ ÜShift right unsigned and signed, single and double-word, by constant and by content of
register
¡ ÜRotate left single word by content of register
¡ ÜIndex Move, move an index value scaled by 1, 2, 4 or 8, optionally with bounds check
¡ ÜCheck a value for an upper bound specified in a register or check for zero
¡ ÜCompare unsigned/signed, Compare unsigned/signed immediate
¡ ÜCompare bits, Compare bits immediate, Compare any byte zero
¡ ÜTest number of leading zeros
¡ ÜSet Conditional, save conditions in a register
¡ ÜBranch unconditional and conditional (12 conditions)
¡ ÜDelayed Branch unconditional and conditional (12 conditions)
¡ ÜCall subprogram, unconditional and on overflow
¡ ÜTrap to supervisor subprogram, unconditional and conditional (11 conditions)
¡ ÜFrame, structure a new stack frame, include parameters in frame addressing, set frame
length, restore reserve frame length and check for upper stack bound
¡ ÜReturn from subprogram, restore program counter, status register and return-frame