指令名称:立即数据传送指令
指令代码:74H
指令功能:立即数送累加器
操作内容:A←data
字节数: 2
机器周期:1
说明:
#data——8位立即数。
例:在执行指令MOV A, #18H后,A=18h。
指令名称:立即数据传送指令
指令代码:78H~7FH
指令功能:立即数送寄存器
操作内容:Rn←data,n=0~7
字节数: 2
机器周期:1
说明:
Rn——当前选择的寄存器区的寄存器R0—R7。
#data——8位立即数。
例:在执行指令MOV Rn,#28H后,Rn=18h。
指令名称:立即数传送指令
指令代码:75H
指令功能:立即数送内部RAM低128单元或专用寄存器
操作内容:direct←data
字节数: 3
机器周期:2
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
#data——8位立即数。
指令名称:立即数传送指令
指令代码:76H~77H
指令功能:立即数送内部RAM低128单元
操作内容:(Ri)←data, i=0,1
字节数: 2
机器周期:1
说明:
@Ri——通过寄存器R0—R1间接寻址地数据RAM地址。
指令名称:直接寻址数据传送指令
指令代码:E5H
指令功能:内部RAM低126单元或专用寄存器内容送累加器
操作内容:A←(direct)
字节数: 2
机器周期:1
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
指令名称:累加器数据传送指令
指令代码:F5H
指令功能:累加器内容送内部RAM低128单元或专用寄存器
操作内容:direct←(A)
字节数: 2
机器周期:1
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
指令名称:直接寻址数据传送指令
指令代码:A8H~AFH
指令功能:内部RAM低128单元或专用寄存器内容送累加器
操作内容:Rn←(direct),n=0~7
字节数: 2
机器周期:2
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
Rn——当前选择的寄存器区的寄存器R0—R7。
指令名称:直接寻址数据传送指令
指令代码:A6H~A7H
指令功能:内部RAM低128单元或专用寄存器内容送内部RAM低128单元
操作内容:(Ri)←(direct), i=0,1
字节数: 2
机器周期:2
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
@Ri——通过寄存器R0—R1间接寻址地数据RAM地址。
指令名称:直接寻址数据传送指令
指令代码:85H
指令功能:内部RAM低123单元或专用寄存器之间的相互传送
操作内容:direct2←(direct1)
字节数: 3
机器周期:2
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
指令名称:寄存器数据传送指令
指令代码:E8H~EFH
指令功能:寄存器内容送累加器
操作内容:A←(Rn), n=0~7
字节数: 1
机器周期:1
说明:
Rn——当前选择的寄存器区的寄存器R0—R7。
例:地址32H中的值为#05,Rn=32H,在执行该命令后,累加器A= #05。
指令名称:累加器数据传送指令
指令代码:F8H~FFH
指令功能:累加器内容送寄存器
操作内容:Rn←(A)
字节数: 1
机器周期:1
说明:
Rn——当前选择的寄存器区的寄存器R0—R7。
例:累加器A中的值为#05h,Rn=32H,在执行该命令后,地址32H = #05h。
指令名称:寄存器数据传送指令
指令代码:88H~8FH
指令功能:寄存器内容送内部RAM低128单元或专用寄存器
操作内容:direct←(Rn), n=0~7
字节数: 2
机器周期:2
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
Rn——当前选择的寄存器区的寄存器R0—R7。
指令名称:间接寻址数据传送指令
指令代码:E6H~E7H
指令功能:内部RAM低128单元内容送累加器
操作内容:A←((Ri)), i=0,1
字节数: 1
机器周期:1
说明:
@Ri——通过寄存器R0—R1间接寻址地数据RAM地址。
指令名称:间接寻址数据传送指令
指令代码:86H~87H
指令功能:内部RAM低128单元内容送内部RAM低128单元或专用寄存器
操作内容:direct←((Ri)),i=0,1
字节数: 2
机器周期:2
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
@Ri——通过寄存器R0—R1间接寻址地数据RAM地址。
指令名称:累加器数据传送指令
指令代码:F6H~F7H
指令功能:累加器内容送内部RAM低128单元
操作内容:(Ri)←(A),i=0,1
字节数: 1
机器周期:1
说明:
@Ri——通过寄存器R0—R1间接寻址地数据RAM地址。
指令名称:16位数据传送指令
指令代码:90H
指令功能:十六位立即数送数据指针
操作内容:DPH←datal5~8
DPL←data7~0
字节数: 3
机器周期:2
说明:
DPTR——是一个16位的数据指针寄存器,可以用来存放片内ROM的地址,也可以用来存放片外RAM和片外ROM的地址。
#data16——16位立即数。
指令名称:程序存储器读指令
指令代码:93H
指令功能:读程序存储器单元内容送累加器
操作内容:A←((A)+(DPTR))
字节数: 1
机器周期:2
使用说明:变址寄存器A内容加基址寄存器DPTR内容时,低8位产生的进位直接加到高位,不影响进位标志。
说明:
DPTR——是一个16位的数据指针寄存器,可以用来存放片内ROM的地址,也可以用
指令名称:程序存储器读指令
指令代码:83H
指令功能:读程序存储器单元内容送累加器
操作内容:A←((A)+(PC))
字节数: 1
机器周期:2
使用说明:同MOVC A,@A+DPTR指令(序号70)
指令名称:寄存器间接寻址外部RAM读指令
指令代码:E2H~E3H
指令功能:读外部RAM低256单元数据送累加器
字节数: 1
机器周期:2
说明:
@Ri——通过寄存器R0—R1间接寻址地数据RAM地址。
指令名称:寄存器间接寻址外部RAM写指令
指令代码:F2H~F3H
指令功能:把累加器内容写入外部RAM低256单元
操作内容:(Ri)←(A),i=1,0
字节数: 1
机器周期:2
说明:
@Ri——通过寄存器R0—R1间接寻址地数据RAM地址。
指令名称:数据指针间接寻址外部RAM写指令
指令名称:数据指针间接寻址外部RAM读指令
指令代码:E0H
指令功能:读外部RAM单元数据送累加器
操作内容:A1←((DPTR))
字节数: 1
机器周期:2
说明:
DPTR——是一个16位的数据指针寄存器,可以用来存放片内ROM的地址,也可以用
来存放片外RAM和片外ROM的地址。
指令代码:F0H
指令功能:把累加器内容写入外部RAM单元
操作内容:(DPTR)←(A)
字节数: 1
机器周期:2
说明:
DPTR——是一个16位的数据指针寄存器,可以用来存放片内ROM的地址,也可以用来存放片外RAM和片外ROM的地址。
指令名称:进栈指令
指令代码:C0
指令功能:内部RAM低128单元或专用寄存器内容送堆栈栈顶单元
操作内容:SP←(SP)+1
(SP)←(direct)
字节数: 2
机器周期:2
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
指令名称:出栈指令
指令代码:D0H
指令功能:堆栈栈顶单元的内容送内部RAM低128单元或专用寄存器
操作内容:direct←(SP)
SP←(SP)-1
字节数: 2
机器周期:2
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
指令名称:寄存器寻址字节交换指令
指令代码:C8H~CFH
指令功能:寄存器寻址字节
操作内容:(A)交换(Rn);n=0~7
字节数: 1
机器周期:1
说明:
Rn——当前选择的寄存器区的寄存器R0—R7。
指令名称:直接寻址字节交换指令
指令代码:C5H
指令功能:累加器内容与内部RAM低128单元或专用寄存器内容交换
操作内容:(A)交换(direct)
字节数: 2
机器周期:1
说明:
direct——8位内部数据存储器地址。可以直接访问数据RAM地址(0x00—0x7F)或一个SFR地址(0x80—0xFF)。
指令名称:间接寻址字节交换指令
指令代码:C6H~C7H
指令功能:累加器内容与内部RAM低128单元内容交换
操作内容:(A)交换((Ri)); i=0,1
字节数: 1
机器周期:1
说明:
@Ri——通过寄存器R0—R1间接寻址地数据RAM地址。
指令名称:半字节交换指令
指令代码:D6H~D7H
指令功能:累加器内容低4位与内部RAM低128单元低4位交换
操作内容:(A)3~0交换((Ri))3~0;i=0,1
字节数: 1
机器周期:1
说明:
@Ri——通过寄存器R0—R1间接寻址地数据RAM地址。
指令名称:位数据传送指令
指令代码:A2H
指令功能:内部RAM可寻址位或专用寄存器的位状态送累加位C
操作内容:C←(bit)
字节数: 2
机器周期:1
说明:
bit——数据RAM或SFR中的直接寻址位。
指令名称:累加位数据传送指令
指令代码:92H
指令功能:累加器状态送内部RAM可寻址位或专用寄存器的指定位
操作内容:bit←(C)
字节数: 2
机器周期:2
说明:
bit——数据RAM或SFR中的直接寻址位。来存放片外RAM和片外ROM的地址。
指令名称:进位标志清0指令
指令代码:C3H
指令功能:进位位清0
操作内容:C←0
字节数: 1
机器周期:1
指令名称:直接寻址位清0指令
指令代码:C2H
指令功能:直接寻址位清0
操作内容:bit←0
字节数: 2
机器周期:1
说明:
bit——数据RAM或SFR中的直接寻址位。
指令名称:进位标志置位指令
指令代码:D.H
指令功能:进位标志位置位
操作内容:C←1
字节数: 1
机器周期:1
指令名称:直接寻址位置位指令
指令代码:D2H
指令功能:内部RAM可寻址位或专用寄存器指定位置位
操作内容:bit←1
字节数: 2
机器周期:1
说明:
bit——数据RAM或SFR中的直接寻址位。
指令名称:进位标志取反指令
指令代码:B3H
指令功能:进位标志位状态取反
操作内容:C←(c取反)
字节数: 1
机器周期:1
指令名称:直接寻址位取反指令
指令代码:B2H
指令功能:直接寻址位取反
操作内容:bit←(bit取反)
字节数: 2
机器周期:1
说明:
bit——数据RAM或SFR中的直接寻址位。
指令名称:位逻辑与指令
指令代码:82H
指令功能:进位标志逻辑与直接寻址位
操作内容:C←(C)∧(bit)
字节数: 2
机器周期:2
说明:
bit——数据RAM或SFR中的直接寻址位。
指令名称:位取反逻辑与指令
指令代码:B0H
指令功能:进位标志逻辑与直接寻址位的反
操作内容:C←(C)∧(bit)
字节数: 2
机器周期:2
说明:
bit——数据RAM或SFR中的直接寻址位。
指令名称:位逻辑或操作指令
指令代码:72H
指令功能:累加位C状态与内部RAM可寻址位或专用寄存器指定位进行逻辑或操作
操作内容:C←(C)∨(bit)
字节数: 2
机器周期:2
说明:
bit——数据RAM或SFR中的直接寻址位。
指令名称:位反逻辑或操作指令
指令代码:A0H
指令功能:累加位C状态与内部RAM可寻址位或专用寄存器指定位的反进行逻辑或操作
操作内容:C←(C)∨(bit非)
字节数: 2
机器周期:2
使用说明:指定位的状态取反后进行逻辑或操作,但并不改变指定位的原来状态。
说明:
bit——数据RAM或SFR中的直接寻址位。
指令名称:累加位条件转移指令
指令代码:40H
指令功能:根据累加位(C)的状态决定程序是否转移,若为1则转移,否则顺序执行。
操作内容:若(C)=1,则PC←(PC)+2+rel
若(C)≠1,则PC←(PC)+2
字节数: 2
机器周期:2
说明:
rel——相对于下一条指令第一个字节的8位有符号(2的补码)偏移量。SJMP和所有
条件转移指令使用。
指令名称:累加位条件转移指令
指令代码:50H
指令功能:根据累加位(C)的状态决定程序是否转移。若为o则转移;否则顺序执行。
操作内容:若(C)=0,则PC←(PC)+2+rel
若(C)≠0,则PC←(PC)+2
字节数: 2
机器周期:2
说明:
rel——相对于下一条指令第一个字节的8位有符号(2的补码)偏移量。SJMP和所有条件转移指令使用。
指令名称:位条件转移指令
指令代码:20H
指令功能:根据指定位的状态,决定程序是否转移。若为1则转移;否则顺序执行。
操作内容:若(bit)=1,则PC←(PC)+3+rel
若(bit)≠1,则PC←(PC)+3
字节数: 3
机器周期:2
说明:
bit——数据RAM或SFR中的直接寻址位。
rel——相对于下一条指令第一个字节的8位有符号(2的补码)偏移量。SJMP和所有条件转移指令使用。
该指令不能对P4-P7进行位操作。
指令名称:位条件转移指令
指令代码:30H
指令功能:根据指定位的状态,决定程序是否转移。若为0则转移;否则顺序执行。
操作内容:若(bit)=0,则PC←(PC)+3+rel
若(bit)≠0,则PC←(PC)+3
字节数: 3
机器周期:2
说明:
bit——数据RAM或SFR中的直接寻址位。
rel——相对于下一条指令第一个字节的8位有符号(2的补码)偏移量。SJMP和所有条件转移指令使用。
指令名称:位条件转移清0指令
指令代码:10H
指令功能:对指定位的状态进行测试。若为1,则把该位清0并进行转移;否则程序顺序执行。
操作内容:若(bit)=1,则PC←(PC)+3+rel,bit←0
若(bit)≠1,则PC←(PC)+3
字节数: 3
机器周期:2
说明:
bit——数据RAM或SFR中的直接寻址位。
rel——相对于下一条指令第一个字节的8位有符号(2的补码)偏移量。SJMP和所有条件转移指令使用。