资源描述:
《AVR单片机汇编指令合集.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、InstructionmnemonicsTheAssembleracceptsmnemonicinstructionsfromtheinstructionset.Asummaryoftheinstructionsetmnemonicsandtheirparametersisgivenhere.ForadetaileddescriptionoftheInstructionset,refertotheAVRDataBook.ArithmeticandLogicInstructionsMnemonicOperandsDes
2、criptionOperationFlagsCyclesZ,C,N,V,H,SADD聽Rd,Rr聽AddwithoutCarry聽Rd=Rd+Rr聽1聽Rd=Rd+Rr+ADCRd,RrAddwithCarryZ,C,N,V,H,S1CAddImmediateToADIWRd,KRd+1:Rd,KZ,C,N,V,S2WordSUBRd,RrSubtractwithoutCarryRd=Rd-RrZ,C,N,V,H,S1SUBIRd,K8SubtractImmediateRd=Rd-K8Z,C,N,V,H,S1Rd=R
3、d-Rr-SBCRd,RrSubtractwithCarryZ,C,N,V,H,S1CSubtractwithCarryRd=Rd-K8-SBCIRd,K8Z,C,N,V,H,S1ImmedtiateCANDRd,RrLogicalANDRd=Rd路RrZ,N,V,S聽1LogicalANDwithANDIRd,K8Rd=Rd路K8Z,N,V,S1ImmediateORRd,RrLogicalORRd=RdVRrZ,N,V,S1LogicalORwithORIRd,K8Rd=RdVK8Z,N,V,S1Immediat
4、eRd=RdEOREORRd,RrLogicalExclusiveORZ,N,V,S1RrCOMRdOne'sComplementRd=$FF-RdZ,C,N,V,S1NEGRdTwo'sComplementRd=$00-RdZ,C,N,V,H,S1SBRRd,K8SetBit(s)inRegisterRd=RdVK8Z,C,N,V,S1Rd=Rd路CBRRd,K8ClearBit(s)inRegisterZ,C,N,V,S1($FF-K8)INCRdIncrementRegisterRd=Rd+1Z,N,V,S1D
5、ECRdDecrementRegisterRd=Rd-1Z,N,V,S1TestforZeroorTSTRdRd=Rd路RdZ,C,N,V,S1NegativeCLRRdClearRegisterRd=0Z,N,V,S1SERRdSetRegisterRd=$FFNone1SubtractImmediateRdh:Rdl=SBIWRdl,K6Z,C,N,V,S2fromWordRdh:Rdl-K6R1:R0=Rd*MULRd,RrMultiplyUnsignedZ,C2RrR1:R0=Rd*MULSRd,RrMult
6、iplySignedZ,C2RrMultiplySignedwithR1:R0=Rd*MULSURd,RrZ,C2UnsignedRrFractionalMultiplyR1:R0=(Rd*FMULRd,RrZ,C2UnsignedRr)<<1FractionalMultiplyR1:R0=(RdFMULSRd,RrZ,C2Signed*Rr)<<1FractionalMultiplyR1:R0=(Rd*FMULSURd,RrZ,C2SignedwithUnsignedRr)<<1聽BranchInstruction
7、sMnemonicOperandsDescriptionOperationFlagsCyclesRJMPkRelativeJumpPC=PC+k+1None2IndirectJumptoIJMPNonePC=ZNone2(Z)STACK=PC+1,ExtendedIndirectEIJMPNonePC(15:0)=Z,None2Jump(Z)PC(21:16)=EINDJMPkJump聽PC=kNone3RelativeCallSTACK=PC+1,PC=RCALLkNone3/4*SubroutinePC+k+1S
8、TACK=PC+1,PC=ICALLNoneIndirectCallto(Z)None3/4*Z聽STACK=PC+1,ExtendedIndirectEICALLNonePC(15:0)=Z,None4*Callto(Z)PC(21:16)=EINDSTACK=PC+2,PC=CALLkCallSubroutineNone4/5*kSubro