home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Crawly Crypt Collection 1
/
crawlyvol1.bin
/
program
/
compiler
/
fasbin21
/
fas_src
/
as8051
/
as8051.doc
< prev
next >
Wrap
Text File
|
1990-12-11
|
5KB
|
317 lines
.HM A 1 1 1 1 1 1
.H 1 "Appendix for as8051 Frankenstein Assembler"
.H 2 "Pseudo Operations"
.H 3 "Standard Pseudo Operation Mnemonics"
.VL 40 5 1
.LI "End"
END
.LI "File Inclusion"
INCL
INCLUDE
.LI "If"
IF
.LI "Else"
ELSE
.LI "End If"
ENDI
.LI "Equate"
EQU
.LI "Set"
SET
.LI "Org"
ORG
.LI "Reserve Memory"
RESERVE
RMB
.LI "Define Byte Data"
BYTE
DB
FCB
.LI "Define Word Data"
DW
FDB
WORD
.LI "Define String Data"
FCC
STRING
.LI "Define Character Set Translation"
CHARSET
.LI "Define Character Value"
CHARDEF
CHD
.LI "Use Character Translation"
CHARUSE
.LE
.H 3 "Machine Dependent Pseudo Operations"
.H 4 "Define Word Data"
The Define Word Data pseudo-operations generate the byte reversed form
for 16 bit constants.
The first byte is the low order half, followed by the high order byte.
.H 2 "Instructions"
.H 3 "Instruction List"
.TS H
;
l l l.
Opcode Syntax Selection Criteria
.sp
.TH
.sp
ACALL expr
.sp
ADD A ',' '#' expr
ADD A ',' '@' REG R01
ADD A ',' REG R07
ADD A ',' expr
.sp
ADDC A ',' '#' expr
ADDC A ',' '@' REG R01
ADDC A ',' REG R07
ADDC A ',' expr
.sp
AJMP expr
.sp
ANL A ',' '#' expr
ANL A ',' '@' REG R01
ANL A ',' REG R07
ANL A ',' expr
ANL C ',' '/' bit
ANL C ',' '/' expr
ANL C ',' bit
ANL C ',' expr
ANL expr ',' '#' expr
ANL expr ','A
.sp
CJNE A ',' '#' expr ',' expr
CJNE A ',' expr ',' expr
CJNE '@' REG ',' '#' expr ',' expr R01
CJNE REG ',' '#' expr ',' expr R07
.sp
CLR A
CLR C
CLR bit
CLR expr
.sp
CPL A
CPL C
CPL bit
CPL expr
.sp
DA A
.sp
DEC '@' REG R01
DEC A
DEC REG R07
DEC expr
.sp
DIV AB
.sp
DJNZ REG ',' expr R07
DJNZ expr ',' expr
.sp
INC '@' REG R01
INC A
INC DPTR
INC REG R07
INC expr
.sp
JB bit ',' expr
JB expr ',' expr
.sp
JBC bit ',' expr
JBC expr ',' expr
.sp
JC expr
.sp
JMP '@' A '+' DPTR
.sp
JNB bit ',' expr
JNB expr ',' expr
.sp
JNC expr
.sp
JNZ expr
.sp
JZ expr
.sp
LCALL expr
.sp
LJMP expr
.sp
MOV '@' REG ',' '#' expr R01
MOV '@' REG ',' A R01
MOV '@' REG ',' expr R01
MOV A ',' '#' expr
MOV A ',' '@' REG R01
MOV A ',' REG R07
MOV A ',' expr
MOV C ',' bit
MOV C ',' expr
MOV DPTR ',' '#' expr
MOV REG ',' A R07
MOV REG ',' '#' expr R07
MOV REG ',' expr R07
MOV bit ',' C
MOV expr ',' '#' expr
MOV expr ',' '@' REG R01
MOV expr ',' A
MOV expr ',' C
MOV expr ',' REG R07
MOV expr ',' expr
.sp
MOVC A ',' '@' A '+' DPTR
MOVC A ',' '@' A '+' PC
.sp
MOVX '@' DPTR ',' A
MOVX '@' REG ',' A R01
MOVX A ',' '@' DPTR
MOVX A ',' '@' REG R01
.sp
MUL AB
.sp
NOP
.sp
ORL A ',' '#' expr
ORL A ',' '@' REG R01
ORL A ',' REG R07
ORL A ',' expr
ORL C ',' '/' bit
ORL C ',' '/' expr
ORL C ',' bit
ORL C ',' expr
ORL expr ',' '#' expr
ORL expr ',' A
.sp
POP expr
.sp
PUSH expr
.sp
RET
.sp
RETI
.sp
RL A
.sp
RLC A
.sp
RR A
.sp
RRC A
.sp
SETB C
SETB bit
SETB expr
.sp
SJMP expr
.sp
SUBB A ',' '#' expr
SUBB A ',' '@' REG R01
SUBB A ',' REG R07
SUBB A ',' expr
.sp
SWAP A
.sp
XCH A ',' '@' REG R01
XCH A ',' REG R07
XCH A ',' expr
.sp
XCHD A ',' '@' REG R01
.sp
XRL A ',' '#' expr
XRL A ',' '@' REG R01
XRL A ',' REG R07
XRL A ',' expr
XRL expr ',' '#' expr
XRL expr ',' A
.TE
.H 3 "Selection Criteria Keywords"
.VL 25 5
.LI R01
Only the reserved symbols R0 and R1 (or r0, r1) are acceptable as
the REG operand.
.LI R07
All the reserved symbols R0 thru R7 are acceptable as the REG operand.
.LE
.H 3 "Bit Operands"
Bit Addresses can be in two forms.
.P
One form is "expression.constant" where expression gives an address for a
bit addressable register and constant (in the range of 0 to 7) gives the
bit number in the byte.
Expression values must be either in the range of 20h to 2fh, or
the multiples of 8 between 80h and f8h, and defined in the first pass.
.P
The second form is an symbolic expression with value between 0 and 255.
The value of the expression is placed in the operand field of the
instruction without modification.
.H 3 "Apostrophes"
The apostrophes in the syntax field are a notation used for the
parser generator and are not put in the assembler source statement.
.H 2 "Notes"
.H 3 "Address Spaces"
The Four address spaces, Program Memory, Internal Data Memory, Bit Numbers,
and External Data Memory are not differentiated in the symbol table.
Which address space a symbol refers to is determined by the context of
the instruction operands it appears in.
.H 3 "Reserved Symbols"
.H 4 "Machine Dependent Reserved Symbols"
A
AB
C
DPTR
PC
R0
R1
R2
R3
R4
R5
R6
R7
a
ab
c
dptr
pc
r0
r1
r2
r3
r4
r5
r6
r7
.H 4 "Standard Reserved Symbols"
AND
DEFINED
EQ
GE
GT
HIGH
LE
LOW
LT
MOD
NE
NOT
OR
SHL
SHR
XOR
and
defined
eq
ge
gt
high
le
low
lt
mod
ne
not
or
shl
shr
xor
.TC 1 1 7