51單片機常用匯編語言助記符英文全稱
(1)數據傳送類指令(7種助記符)
MOV(英文為Move):對內部數據寄存器RAM和特殊功能寄存器SFR的數據進行傳送;
MOVC(MoveCode)讀取程序存儲器數據表格的數據傳送;
MOVX (MoveExternalRAM) 對外部RAM的數據傳送;
XCH (Exchange) 字節(jié)交換;
XCHD (Exchangelow-orderDigit) 低半字節(jié)交換;
PUSH (PushontoStack) 入棧;
POP (PopfromStack) 出棧;
(2)算術運算類指令(8種助記符)
ADD(Addition)加法;
ADDC(AddwithCarry)帶進位加法;
SUBB(SubtractwithBorrow)帶借位減法;
DA(DecimalAdjust)十進制調整;
INC(Increment)加1;DEC(Decrement)減1;
MUL(Multiplication、Multiply)乘法;
DIV(Division、Divide)除法;
(3)邏輯運算類指令(10種助記符)
ANL(ANDLogic)邏輯與;
XRL(Exclusive-ORLogic)邏輯異或;
CLR(Clear)清零;CPL(Complement)取反;
RL(Rotateleft)循環(huán)左移;
RLC(RotateLeftthroughttheCarryflag)帶進位循環(huán)左移;
RR(RotateRight)循環(huán)右移;
RRC (RotateRightthroughttheCarryflag)帶進位循環(huán)右移;
SWAP(Swap) 低4位與高4位交換;
(4)控制轉移類指令(17種助記符)
ACALL(AbsolutesubroutineCall)子程序絕對調用;
LCALL(LongsubroutineCall)子程序長調用;
RET(Returnfromsubroutine)子程序返回;
RETI(ReturnfromInterruption)中斷返回;
SJMP(ShortJump)短轉移;LJMP長轉移;
AJMP(AbsoluteJump)絕對轉移;
CJNE(CompareJumpifNotEqual)比較不相等則轉移;
DJNZ(DecrementJumpifNotZero)減1后不為0則轉移;
JZ(JumpifZero)結果為0則轉移;
JNZ(JumpifNotZero)結果不為0則轉移;
JC(JumpiftheCarryflagisset)有進位則轉移;
JNC(JumpifNotCarry)無進位則轉移;
JB(JumpiftheBitisset)位為1則轉移;
JNB(JumpiftheBitisNotset)位為0則轉移;
(3)JBC(JumpiftheBitissetandClearthebit)位為1則轉移,并清除該位;
NOP(NoOperation) 空操作;
(5)位操作指令(1種助記符)
SETB(SetBit) 位置1。
1.通用數據傳送指令.
MOV---->move
MOVSX---->extendedmovewithsigndata
MOVZX---->extendedmovewithzerodata
PUSH---->pushPOP---->pop
PUSHA---->pushall
POPA---->popall
PUSHAD---->pushalldata
POPAD---->popalldata
BSWAP---->byteswap
XCHG---->exchange
CMPXCHG---->compareandchange
XADD---->exchangeandadd
XLAT---->translate
2.輸入輸出端口傳送指令.
IN---->input
OUT---->output
3.目的地址傳送指令.
LEA---->loadeffectiveaddress
LDS---->loadDS
LES---->loadES
LFS---->loadFS
LGS---->loadGS
LSS---->loadSS
4.標志傳送指令.
LAHF---->loadAHfromflag
SAHF---->saveAHtoflag
PUSHF---->pushflagPOPF---->popflag
PUSHD---->pushdflagPOPD---->popdflag
評論