# S3C44B0X Samsung, S3C44B0X Datasheet - Page 157

#### S3C44B0X

Manufacturer Part Number
S3C44B0X
Description
BGA
Manufacturer
Samsung
Datasheets

#### Specifications of S3C44B0X

Date_code
02+
THUMB INSTRUCTION SET
INSTRUCTION SET EXAMPLES
The following examples show ways in which the THUMB instructions may be used to generate small and efficient
code. Each example also shows the ARM equivalent so these may be compared.
MULTIPLICATION BY A CONSTANT USING SHIFTS AND ADDS
The following shows code to multiply by various constants using 1, 2 or 3 Thumb instructions alongside the ARM
equivalents. For other constants it is generally better to use the built-in MUL instruction rather than using a sequence
of 4 or more instructions.
Thumb
ARM
1. Multiplication by 2^n (1,2,4,8,...)
LSL
Ra, Rb, LSL #n
2. Multiplication by 2^n+1 (3,5,9,17,...)
LSL
Rt, Rb, #n
Ra, Rt, Rb
3. Multiplication by 2^n-1 (3,7,15,...)
LSL
Rt, Rb, #n
SUB
Ra, Rt, Rb
4. Multiplication by -2^n (-2, -4, -8, ...)
LSL
Ra, Rb, #n
MVN
Ra, Ra
5. Multiplication by -2^n-1 (-3, -7, -15, ...)
LSL
Rt, Rb, #n
SUB
Ra, Rb, Rt
Multiplication by any C = {2^n+1, 2^n-1, -2^n or -2^n-1} * 2^n
Effectively this is any of the multiplications in 2 to 5 followed by a final shift. This allows the following additional
constants to be multiplied. 6, 10, 12, 14, 18, 20, 24, 28, 30, 34, 36, 40, 48, 56, 60, 62 .....
(2..5)
LSL
Ra, Ra, #n
4-40
S3C2400X01 RISC MICROPROCESSOR
; MOV Ra, Rb, LSL #n
; ADD Ra, Rb, Rb, LSL #n
; RSB Ra, Rb, Rb, LSL #n
; MOV Ra, Rb, LSL #n
; RSB Ra, Ra, #0
; SUB Ra, Rb, Rb, LSL #n
; (2..5)
; MOV Ra, Ra, LSL #n