欢迎来到天天文库
浏览记录
ID:23077109
大小:96.50 KB
页数:7页
时间:2018-11-03
《51单片机汇编指令集(附记忆方法~)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、
2、51单片机汇编指令集一、数据传送类指令(7种助记符)MOV(英文为Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送;MOVC(MoveCode)读取程序存储器数据表格的数据传送;MOVX (MoveExternalRAM) 对外部RAM的数据传送;XCH (Exchange) 字节交换;XCHD (Exchangelow-orderDigit) 低半字节交换;PUSH (PushontoStack) 入栈;POP (PopfromStack) 出栈;二、算术运算类指令(8种助记符)ADD(Addition)加法;ADDC(AddwithCarry)带进位加法;SUBB
3、(SubtractwithBorrow)带借位减法;DA(DecimalAdjust)十进制调整;INC(Increment)加1;DEC(Decrement)减1;MUL(Multiplication、Multiply)乘法;DIV(Division、Divide)除法;三、逻辑运算类指令(10种助记符)ANL(ANDLogic)逻辑与;ORL(ORLogic)逻辑或;XRL(Exclusive-ORLogic)逻辑异或;CLR(Clear)清零;CPL(Complement)取反;RL(Rotateleft)循环左移;RLC(RotateLeftthroughttheCarryflag)
4、带进位循环左移;RR(RotateRight)循环右移;RRC (RotateRightthroughttheCarryflag)带进位循环右移;SWAP(Swap) 低4位与高4位交换;四、控制转移类指令(17种助记符)ACALL(AbsolutesubroutineCall)子程序绝对调用;LCALL(LongsubroutineCall)子程序长调用;RET(Returnfromsubroutine)子程序返回;RETI(ReturnfromInterruption)中断返回;SJMP(ShortJump)短转移;AJMP(AbsoluteJump)绝对转移;LJMP(LongJump
5、)长转移;CJNE(CompareJumpifNotEqual)比较不相等则转移;
6、DJNZ(DecrementJumpifNotZero)减1后不为0则转移;JZ(JumpifZero)结果为0则转移;JNZ(JumpifNotZero)结果不为0则转移;JC(JumpiftheCarryflagisset)有进位则转移;JNC(JumpifNotCarry)无进位则转移;JB(JumpiftheBitisset)位为1则转移;JNB(JumpiftheBitisNotset)位为0则转移;JBC(JumpiftheBitissetandClearthebit)位为1则转移,并清除该位;N
7、OP(NoOperation) 空操作;五、位操作指令(1种助记符)CLR位清零;SETB(SetBit) 位置1。8种常用伪指令1.ORG 16位地址 ;此指令用在原程序或数据块的开始,指明此语句后面目标程序或数据块存放的起始地址。2.[标号:]DB 字节数据项表;将项表中的字节数据存放到从标号开始的连续字节单元中。例如:SEG:DB88H,100,“7”,“C”3.[标号:]DW 双字节数据项表;定义16位地址表,16地址按低位地址存低位字节,高位地址存高位字节。例如:TAB:DW 1234H,7BH4.名字EQU表达式 或名字=表达式;用与给一个表达式赋值或给字符串起名字。之后名字
8、可用做程序地址,数据地址或立即数地址使用。名字必须是一字母开头的字母数字串。例如:COUNT=10或SPACE EQU 10H5.名字DATA直接字节地址;给8位内部RAM单元起个名字,名字必须是一字母开头的字母数字串。同一单元可起多个名字。例如:ERROR DATA 80H6.名字XDATA直接字节地址;给8位外部RAM起个名字,名字规定同DATA伪指令。例如:IO_PORT XDATA 0CF04H7.名字BIT位指令;给一可位寻址的位单元起个名字,规定同DATA伪指令。例如:SWTBIT30H8.[标号:] END;指出源程序到此结束,汇编对其后的程序语句不予理睬。源程序只在主程序最后
9、使用一个END。
10、指令集(111条)助记符说明字节周期代码1.数据传送指令(30条)MOVA,Rn寄存器送A 11E8--EFMOVA,data直接字节送A 21E5MOVA,@Ri间接RAM送A 11E6--E7MOVA,#data立接数送A 2174MOVRn,AA送寄存器11F8--FFMOVRn,data直接数送寄存器22A8--AFMOVRn,#data立即数送寄存器2178--7FMOVdata,
此文档下载收益归作者所有