Chapter 9 Writing Machine Language Instructions and Directive Statements

9.3Writing Machine Language Instruction Statements

Each machine language instruction is defined by specific mnemonics. Mnemonics are formed from operations and operands accurately coded in the statement fields previously described.

Both upper-case and lower-case letters may be used.

Refer to the "Instruction Manual" for details of machine language instructions.

Coding rules

When coding a label, insert at least one space or tab between it and the operation field. When the label field is omitted, replace it with at least one space or tab.

Both upper-case and lower-case letters may be used.

Insert at least one space or tab between the operation field and operand field.

The assembler and linker optimization function will adjust conditional and unconditional branch instructions to generate the optimal code.

When a relative address is specified in an operand and only labels with specific addresses are coded, the assembler will calculate and set the relative values.

Coding examples

START

mov

D0, (A0)

;src=register, dst=register indirect

 

mov

0x11, D0

;src=immediate data, dst=register

 

not

D0

;negate

 

rol

D0

;rotate left

 

ror

D0

;rotate right

 

and

0x0f, D0

;logical AND

 

or

0x30, D0

;logical OR

 

xor

D0, D1

;exclusive OR

 

add

D1, D0

;addition

 

sub

D1, D0

;subtraction

 

mul

D1, D0

;multiplication

 

divu

D1, D0

;division

 

cmp

0x05, D0

;comparison

 

bra

SUBR

;unconditional branch

 

jmp

(A0)

;unconditional branch(register indirect)

 

jsr

SUBR

;subroutine call

 

rts

 

;return from subroutine

152 Writing Machine Language Instruction Statements

Page 164
Image 164
Panasonic MN1030 user manual Writing Machine Language Instruction Statements