- 1、本文档共75页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MCS-51指令系统课件
3.数据交换指令 数据交换指令是在内部RAM的某一个单元和累加器A之间进行的,并且累加器A总是作为目标操作数。数据交换指令分为两种;整字节交换和半字节交换。 XCH A,源操作数 XCH A,Rn ;(A) = (Rn) XCH A,direct ;(A) = (direct) XCH A,@Ri ;(A) = ((Ri)) 这组指令的功能是将累加器A的内容与源操作数(Rn、direct或@Ri)所指定单元相互交换内容 MOV A,30H ;A=(30H)=88H XCH A,40H ;(40H)=(30H)=88H A=(40H)=11H MOV 30H,A ;(30H)=11H 结果为(30H)=11H,(40H)=88H,而功能是将30H和40H单元内容互换。 例3-4 已知(30H)=88H,(40H)=11H ,指出下列程序段执行的结果和功能。 (1)半字节交换指令 XCHD A,@Ri ;(A)3~0 =((Ri))3~0 SWAP A ;(A)3~0=(A)7~4 第一条指令将Ri间接寻址的单元内容的低4位与累加器A内容的低4位互换,高四位内容不变,不影响标志位。例如,设(A)=0ABH,(R0)=30H,(30H)=12H,执行指令XCHD A,@R0后,(A)=A2H,(30H)=1BH。 第二条指令将累加器A的高4位与低4位内容互换,不影响标志位。 4.片外数据存储器传送指令 当把一个数据送到单片机外部扩展RAM的某个单元或外部扩展I/O口某个端口,或者从该单元、端口将数据取回到单片机内部的时候,就要用到这种指令。 MOVX A,@Ri ; (A)←((Ri))片外 MOVX A,@DPTR; (A)←((DPTR))片外 MOVX @Ri,A ; ((Ri))片外←(A) MOVX @DPTR,A; ((DPTR))片外←(A) 片外RAM读指令 片外RAM写指令。 5.ROM数据访问指令 MOVC A ,@A+DPTR ;(A)←((A)+(DPTR)) ;表格地址单元中的内容送到累加器A中 MOVC A,@A+PC;(PC)←(PC)+1,(A)←((A)+(PC)) ;表格地址单元中的内容送到累加器A中 功能:将ROM中的数据送到A中 6.栈操作指令 片内RAM中有一个先进后出的堆栈操作缓冲区域,主要用于保护和恢复CPU的工作现场,也可实现内部RAM单元之间的数据传送。 (1)入栈指令: PUSH direct ; (SP)←(SP)+1,((SP))←(direct) 先将堆栈指针寄存器的内容加1,指向堆栈顶的一个单元中,然后将指令指定的直接寻址单元内容传送到这个单元中。 (2)出栈指令: POP direct ; (direct)←((SP)),(SP)←(SP)-1 出栈指令是将当前堆栈指针寄存器SP所指示单元内容传送到该指令指定的直接寻址单元中去,然后SP内容减1指向新栈顶。 指令的操作数是direct直接地址,不能是间接地址、通用寄存器或其他。 例3-9 已知(SP)=30H,(40H)=88H,(50H)=11H,指出下列程序段的执行结果和功能。 PUSH 40H ;(SP)←(SP)+1=31H,((SP))←(40H),(31H)=88H PUSH 50H ;(SP)←(SP)+1=32H,((SP))←(50H),(32H)=11H POP 40H ;(40H)←((SP)),(SP)←(SP)-1=31H,(40H)=11H POP 50H ;(50H)←((SP)),(SP)←(SP)-1=30H,(50H)=88H 3.4 算术运算类指令 1.加法指令 加法指令包括带进位与不带进位加法指令、加1指令和十进制调整指令。 (1)不带进位加法指令 ADD A, Rn ;(A)←(A)+(Rn) ADD A, direct ;(A)←(A)+(direct) ADD A, @Ri ;(A)←(A)+(Ri) ADD A, #data ;(A)←(A)+data 1)对标志位的影响: Cy:若D7有进位,则置1; AC:若D3有进位,则置1; OV:位 6 无进位而位 7 有进位或者位 6 有进位而位 7 无进位,则置1。 2)溢出规律: 无符号数:若Cy=1,则溢出; 有符号数:若OV=1,则溢出。 0 1 1 1 1 0 0 0
文档评论(0)