隆单片机指令系统 3.1.EM78 指令概述 EM78156 & EM78P156 单片机共有的 58 条指令,其宽度为 13 位。每一个指令码可分割成两部份,第一部分为标示指令功能的运算码( OPCODE ),第二部份則指出运算时所需之參数,亦即运算码( OPERAND )。而指令的类型大致可分为下列四种: (1)控制型指令( control operation ): 如 INT...等等。 (2)面向寄存器(字节操作)型指令( register oriented ): 如 MOV A, Reg_B ; move Reg_B to A ADD Reg_B, A ; add Reg_B with A, and ; save in Reg_B ... 等等。 (3)位操作型指令( bit oriented ): 如 BC,JBS...等等。 (4)常数型指令( constant operation ):如 MOV A, @0x55 ; move 0x55 to A XOR @0xFF ;Xor A with 0xFF 一般而言,EM78 系列八位微控制器除一个指令需两个周期之外,其他的指令只需一个指令周期,除了对 PC (Program Counter)做 “写” 的指令,需二个指令周期,如 (MOV PC, A)。 3.2.EMC 汇编语言指令集 符号解说: 1.符号‘R’:代表一般用途寄存器中的其中一个。 2.符号‘B’:代表一般用途寄存器中的某一位。 3.符号‘K’:代表 8 位或 10 位的常数或内容。 4.符号‘A’:代表累加寄存器。 3.2.1. 面向寄存器(字节操作)型指令(26 条) 助记符号 指令动作 标志影响 指令周期 语言描述 ADD A,R A+R->A Z,C,DC 1 ADD ADD R,A A+R->R Z,C,DC 1 ADD AND A,R A&R->A Z 1 AND AND R,A A&R->R Z 1 AND CLR R 0->R Z 1 Clear Register CLRA 0->A Z 1 Clear the A register COM R /R->R Z 1 Complement R 助记符号 指令动作 标志影响 指令周期 语言描述 COMA R /R->A Z 1 Complement R,Place in A DAA A 寄存器调整为BCD 值 C 1 Decimal Adjust DEC R R-1->R Z 1 Decrement R DECA R R-1->A Z 1 Decrement R,Place in A DJZ R R-1->R 结果为零就跳过下一个指令 1 Decrement R,Skip if 0 DJZA R R-1->A 结果为零就跳过下一个指令 1 Decrement R,Please in A register, Skip if 0 INC R R+1->R Z 1 Increment R INCA R R+1->A Z 1 Increment R,Please in A JZ R R+1->R, 结果为零就跳过下一个指令 1 Increment R,Skip if 0 JZA R R+...