beautypg.com

9 lookup instructions – Texas Instruments MSP50C614 User Manual

Page 149

background image

Lookup Instructions

4-57

Assembly Language Instructions

4.9

Lookup Instructions

Table lookup instructions transfer data from program memory (ROM) to data
memory or accumulators. These instructions are useful for reading permanent
ROM data into the user program for manipulation. For example, lookup tables
can store initial filter coefficients, characters for an LCD display which can be
read for display in the LCD screen, etc. There are four lookup instructions as
shown in Table 4–44. Lookup instructions always read the program memory
address from the second argument (which is accumulator or its offset). An
asterisk (*) always precedes this accumulator to indicate that this is an
address.

Table 4–44. Lookup Instructions

Instructions

Description

Data Transfer

MOV {

adrs}, *An

The program memory address is stored in accumulator A

n. Store the contents of

this address in data memory location referred by addressing mode {

adrs}.

MOV A

n[~], *An[~] [, next A]

The program memory address is stored in accumulator A

n or its offset An~. Store

the contents of this address in accumulator A

n or An~.

MOVS {

adrs}, *An

The program memory string address is stored in accumulator A

n. Store the

contents of this address to the data memory string referred by the addressing
mode {

adrs}. The string length is defined in STR register.

MOVS A

n[~], *An[~]

The program memory string address is stored in accumulator A

n or its offset An~.

Store the contents of this address to the accumulator string A

n or its offset An~.

The string length is defined in STR register.

Data Manipulation on Strings

ADDS A

n[~], An[~], pma16

ADD the accumulator string A

n or its offset An~ with the program memory string at

location

pma16 and store the result to the accumulator string An or its offset An~.

The string length is defined in STR register.

ANDS A

n[~], An[~], pma16

Bitwise/logical AND the string A

n (or its offset An~) with the program memory

string at location

pma16 and store the result in the accumulator string An or its

offset A

n~. The string length is defined in STR register.

CMPS A

n[~], pma16

Compare the accumulator string A

n (or its offset An~) with the program memory

string at location

pma16 and store the result in accumulator string An or its offset

A

n~. The string length is defined in STR register.

SUBS A

n[~], An[~], pma16

Subtract accumulator string A

n (or its offset An~) with program memory string at

location

pma16 and store the result in accumulator string An or its offset An~. The

string length is defined in STR register.

XORS A

n[~], An[~], pma16

Bitwise/Logical XOR the accumulator string A

n or its offset An~ with program

memory string at location

pma16 and store the result to accumulator string An or

its offset A

n~. The string length is defined in STR register.