PersonalCorpus 版 (精华区)


l   算术操作类指令
ADD  A, Rn          寄存器加到累加器
ADD  A, direct      直接寻址字节加到累加器      
ADD  A, @Ri     间址RAM 加到累加器
ADD  A, #data       立即数加到累加器
ADDC A, Rn          寄存器加到累加器(带进位)
ADDC A, direct      直接寻址字节加到累加器(带进位)
ADDC A, @Ri     间址 RAM 加到累加器(带进位)
ADDC A, #data       立即数加到累加器(带进位)
SUBB A, Rn          累加器减去寄存器(带借位)
SUBB A, direct      累加器减去间接寻址 RAM (带借位)
SUBB A, @Ri         累加器减去间址 RAM (带借位)
SUBB A, #data       累加器减去立即数(带借位)
INC  A              累加器加1
INC  Rn             寄存器加1
INC  direct         直接寻址字节加1
INC  @Ri            间址 RAM 加1
DEC  A              累加器减1
DEC  Rn         寄存器减1
DEC  direct         直接寻址字节减1
DEC  @Ri            间址 RAM 减1
INC   DPTR          数据指针加1
MUL  AB         累加器和B寄存器相乘
DIV   AB            累加器除以B寄存器
DA    A            累加器十进制调整

l   逻辑操作类指令
ANL   A, Rn         寄存器“与”到累加器
ANL   A, direct     直接寻址字节“与”到累加器
ANL   A, @Ri        间址 RAM “与”到累加器
ANL   A, #data      立即数“与”到累加器
ANL   direct, A     累加器“与”到直接寻址字节
ANL   direct, #data 立即数“与”到直接寻址字节
ORL   A, Rn         寄存器“或”到累加器
ORL   A, direct     直接寻址字节“或”到累加器
ORL   A, @Ri        间址 RAM “或”到累加器
ORL   A, #data      立即数“或”到累加器
ORL   direct, A     累加器“或”到直接寻址字节
ORL   direct, #data 立即数“或”到直接寻址字节
XRL   A, Rn         寄存器“异或”到累加器
XRL   A, direct     直接寻址字节“异或”到累加器
XRL   A, @Ri        间址 RAM “异或”到累加器
XRL   A, #data      立即数“异或”到累加器
XRL   direct, A     累加器“异或”到直接寻址字节
CLR   A         累加器清0
CPL   A             累加器取反
RL     A            累加器循环左移
RLC   A            经过进位位的累加器循环左移
RR    A            累加器循环右移
RRC   A            经过进位位的累加器循环右移

l   数据传送类指令
MOV  A, Rn      寄存器传送到累加器A
MOV  A, direct      直接寻址字节传送到累加器
MOV  A, @Ri     间址 RAM 传送到累加器
MOV  A, #data       立即数传送到累加器
MOV  Rn, A          累加器传送到寄存器
MOV  Rn, direct     直接寻址字节传送到寄存器
MOV  Rn, #data      立即数传送到寄存器
MOV  direct, A      累加器传送到直接寻址字节
MOV  direct, Rn     寄存器传送到直接寻址字节
MOV  direct, direct 直接寻址字节传送到直接寻址字节
MOV  direct, @Ri        间址 RAM 传送到直接寻址字节
MOV  direct, #data  立即数传送到直接寻址字节
MOV  @Ri, A     累加器传送到间址  RAM
MOV  @Ri, direct        直接寻址字节传送到间址 RAM
MOV  @Ri, #data     立即数传送到直接寻址字节
MOV  DPTR, #data16   16位常数装入数据指针
MOVC A, @A+DPTR   代码字节传送到累加器
MOVC A, @A+PC        代码字节传送到累加器
MOVX A, @Ri      外部 RAM (8位地址)数传送到累加器
MOVX @Ri, A      累加器到外部 RAM (8位地址)
MOVX A , @DPTR     外部RAM(16位地址)传送到累加器
MOVX @DPTR, A      累加器传送到外部RAM (16位地址)
PUSH  direct              直接寻址字节压入栈顶
POP   direct              从栈中弹出直接寻址字节
XCH   A, Rn       寄存器与累加器交换
XCH   A, direct       直接寻址字节与累加器交换
XCH   A, @Ri          间址 RAM 与累加器交换
XCHD  A, @Ri          间址 RAM 与累加器交换低半字节
SWAP  A           累加器内高低半字节交换

l   位操作类指令
CLR     C             清进位
CLR    bit            清直接寻址位
STEB   C              进位位置 1
SETB   bit            直接寻址位置1
CPL    C              进位位取反
CPL    bit           直接寻址位取反
ANL    C, bit        直接寻址位“与”到进位位
ANL    C, /bit        直接寻址位的反码“与”到进位位
ORL    C, bit        直接寻址位“或”到进位位
ORL    C, /bit       直接寻址位的反码“或”到进位位
MOV   C, bit         直接寻址位传送到进位位
MOV   bit, C         进位位传送到直接寻址位
JC      rel          若进位位为1则转移
JNC     rel          若进位位为0则转移
JB      bit, rel         若直接寻址位为1则转移
JNB     bit, rel         若直接寻址位为0则转移
JBC     bit, rel         若直接寻址位为1则转移,并清除该位

l   控制转移类指令
ACALL    addr11      绝对调用子程序
LCALL   addr16      长调用子程序
RET                 从子程序返回
RETI                从中断返回
AJMP     addr11      绝对转移
LJMP     addr16      长转移
SJMP     rel          短转移(相对转移)
JMP      @A+DPTR   相对DPTR 的间接转移(散转)
JZ        rel          累加器为0则转移
JNZ      rel           累加器为非0则转移
CJNE     A, direct, rel   比较直接寻址字节与累加器,不相等则转移
CJNE     A, #data, rel   比较立即数与累加器,不相等则转移
CJNE     Rn, #data, rel  比较立即数与间接寻址 RAM ,不相等则转移
DJNZ    Rn, rel       寄存器减1,不为0则转移
DJNZ    direct, rel     直接寻址字节减1,不为0则转移
NOP                  空操作


@Ri —— 通过寄存器R0~R1间接寻址的数据RAM 地址
 








RAM区位地址映象

字节地址    位      地     址
    D7  D0
2FH 7F  7E  7D  7C  7B  7A  79  78
2EH 77  76  75  74  73  72  71  70
2DH 6F  6E  6D  6C  6B  6A  69  68
2CH 67  66  65  64  63  62  61  60
2BH 5F  5E  5D  5C  5B  5A  59  58
2AH 57  56  55  54  53  52  51  50
29H 4F  4E  4D  4C  4B  4A  49  48
28H 47  46  45  44  43  42  41  40
23H 3F  3E  3D  3C  3B  3A  39  38
26H 37  36  35  34  33  32  31  30
25H 2F  2E  2D  2C  2B  2A  29  28
24H 23  26  25  24  23  22  21  20
23H 1F  1E  1D  1C  1B  1A  19  18
22H 12  16  15  14  13  12  11  10
21H 0F  0E  0D  0C  0B  0A  09  08
20H 02  06  05  04  03  02  01  00







;
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.954毫秒