当前页面为 开发中 版本,查看特定版本的文档,请在页面左下角的下拉菜单中进行选择。
汇编指令集
指令相关关键字不区分大小写,但用户自定义变量名等区分大小写。
点击指令查看相关指令详细内容。
序号 |
指令 |
影响标志 |
说明 |
1
|
dw V
|
|
在程序存储空间初始化常数 |
2
|
add A, #K
|
C AC Z OV
|
加法 |
|
add A, R
|
C AC Z OV
|
|
|
add R, A
|
C AC Z OV
|
|
|
add PCL, A
|
C AC Z OV
|
|
3
|
addc A, R
|
C AC Z OV
|
带进位加法 |
|
addc R, A
|
C AC Z OV
|
|
4
|
sub A, #K
|
C AC Z OV
|
减法 |
|
sub A, R
|
C AC Z OV
|
|
5
|
rsub R, A
|
C AC Z OV
|
反向减法 |
6
|
subc A, R
|
C AC Z OV
|
带借位减法 |
7
|
rsubc R, A
|
C AC Z OV
|
带借位反向减法 |
8
|
da A
|
C
|
十进制调制(旧指令名bcd ) |
|
da R, A
|
C
|
|
9
|
daf A
|
C AC
|
十进制调制(旧指令名bcdf ) |
10
|
and A, #K
|
Z
|
与运算 |
|
and A, R
|
Z
|
|
|
and R, A
|
Z
|
|
11
|
or A, #K
|
Z
|
或运算 |
|
or A, R
|
Z
|
|
|
or R, A
|
Z
|
|
12
|
xor A, #K
|
Z
|
异或运算 |
|
xor A, R
|
Z
|
|
|
xor R, A
|
Z
|
|
13
|
cpl R
|
Z
|
取反运算 |
|
cpl A, R
|
Z
|
|
14
|
bcpl B
|
|
位取反运算 |
|
bcpl R, P
|
|
|
15
|
bclr B
|
|
位清零运算 |
|
bclr R, P
|
|
|
16
|
bset B
|
|
位置位运算 |
|
bset R, P
|
|
|
17
|
inc R
|
Z
|
加1 运算 |
|
inc A, R
|
Z
|
|
18
|
isz R
|
|
加1 后判断:如果为0 则跳过下一条指令 |
|
isz A, R
|
|
|
19
|
isnz R
|
|
加1 后判断:如果不为0 则跳过下一条指令 |
|
isnz A, R
|
|
|
20
|
dec R
|
Z
|
减1运算 |
|
dec A, R
|
Z
|
|
21
|
dsz R
|
|
减1 后判断:如果为0 则跳过下一条指令 |
|
dsz A, R
|
|
|
22
|
dsnz R
|
|
减1 后判断:如果不为0 则跳过下一条指令 |
|
dsnz A, R
|
|
|
23
|
shr R
|
|
右移运算(旧指令名rsh ) |
|
shr A, R
|
|
|
24
|
rorc R
|
C Z
|
带状态C 标志循环右移运算(旧指令名rshc ) |
|
rorc A, R
|
C Z
|
|
25
|
shl R
|
|
左移运算(旧指令名lsh ) |
|
shl A, R
|
|
|
26
|
rolc R
|
C Z
|
带状态C 标志循环左移运算(旧指令名lshc ) |
|
rolc A, R
|
C Z
|
|
27
|
mov A, #K
|
|
数据移动 |
|
mov A, R
|
|
|
|
mov R, A
|
|
|
28
|
upz R
|
Z
|
更新状态标志Z |
29
|
movc R
|
|
读程序区常数 |
30
|
swap A, R
|
|
数据交换 |
31
|
jmp D
|
|
程序跳转 |
32
|
call D
|
|
子程序调用 |
33
|
ret
|
|
子程序返回 |
|
ret #K
|
|
|
34
|
reti
|
|
中断返回 |
35
|
sbnz B
|
|
位判断:不为0 则跳过下一条指令 |
|
sbnz R, P
|
|
|
36
|
sbz R
|
|
位判断:为0 则跳过下一条指令 |
|
sbz R, P
|
|
|
37
|
sz R
|
|
值判断:为0 则跳过下一条指令 |
|
sz A, R
|
|
|
38
|
snz R
|
|
值判断:不为0 则跳过下一条指令 |
|
snz A, R
|
|
|
39
|
se A, #K
|
C Z
|
值判断:相等则跳过下一条指令 |
|
se A, R
|
C Z
|
|
40
|
sne A, #K
|
C Z
|
值判断:不相等则跳过下一条指令 |
|
sne A, R
|
C Z
|
|
41
|
clr R
|
|
清零 |
42
|
set R
|
|
置位 |
43
|
rev R
|
|
高四位和低四位交换 |
|
rev A, R
|
|
|
44
|
brev R
|
|
高低位反转 |
|
brev A, R
|
|
|
45
|
nop
|
|
空指令 |
46
|
stop
|
|
芯片进入STOP 状态 |
47
|
idle
|
|
芯片进入IDLE 状态 |
48
|
clrwdt
|
|
清看门狗定时器 |