单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编数据传送指令.ppt

单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编数据传送指令.ppt

ID:50166181

大小:261.00 KB

页数:26页

时间:2020-03-09

单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编数据传送指令.ppt_第1页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编数据传送指令.ppt_第2页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编数据传送指令.ppt_第3页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编数据传送指令.ppt_第4页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编数据传送指令.ppt_第5页
资源描述:

《单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编数据传送指令.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、3.3MCS-51单片机的指令系统按指令功能可将80C51分为以下五类:数据传送类算术运算类逻辑运算与循环类控制转移类位操作类3.3.1数据传送类指令数据传送类指令共28条,功能是将源操作数送到目的处。指令执行后,源操作数不变,目的操作数被源操作数取代。一般不影响PSW的标志位。数据传送类指令用到的助记符有MOV、MOVX、MOVC、XCH、XCHD、SWAP、PUSH、POP8种。数据传送指令是一种最基本最常用的操作,在通常的程序中占有极大的比例。可以进行如下分类:★片内数据传送指令:MOV栈操作指令PUSHPOP交换指令XCHXCHDSWAP★

2、片外程序存贮器传送指令:MOVC★片外数据存贮器传送指令:MOVX数据传送指令操作域示意图如下:片外程序存储器ROMEPROM特殊功能寄存器SFR片内RAM128字节片外数据存储器RAMMOVCMOVXMOVPUSHPOPXCHXCHD数据传送指令操作域示意图1.以A为目的操作数MOVA,Rn;A←(Rn),n=0~7MOVA,direct;A←(direct)MOVA,@Ri;A←((Ri)),i=0、1MOVA,#data;A←data上述指令是将源操作数指定的内容送到累加器A中。上述操作只影响PSW的P标志位。2.以Rn为目的操作数MOVRn

3、,A;Rn←(A)MOVRn,direct;Rn←(direct)MOVRn,#data;Rn←#data上述指令是将源操作数指定的内容送到当前工作寄存器组R0—R7中的某个寄存器。例如:若(A)=68H,(R5)=3AH,(40H)=F8H,执行以下每条指令后,R5中的内容分别为:MOVR5,#0A3H;(R5)=A3HMOVR5,40H;(R5)=F8HMOVR5,A;(R5)=68H注:8051指令系统中没有“MOVRn,Rn”传送指令。3.以直接地址为目的操作数MOVdirect,A;direct←(A)MOVdirect,Rn;direc

4、t←(Rn)MOVdirect,direct;目的direct←(源direct)MOVdirect,@Ri;direct←((Ri))MOVdirect,#data;direct←#data上述指令是将源操作数指定的内容送到由直接地址direct所指出的片内存储单元中。应用举例MOVP1,#0FEH;11111110B可以使P1.0上的发光二极管点亮MOVP1,#0F0H;11110000B可以使P1口上的上面4个发光二极管点亮P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.75v例如:若(A)=68H,(R1)=40H,(40H)

5、=F8H,执行以下每条指令后,片内RAM字节单元60H中的内容分别为:MOV60H,#0A3H;(60H)=A3HMOV60H,40H;(60H)=F8HMOV60H,A;(60H)=68HMOV60H,R1;(60H)=40HMOV60H,@R1;(60H)=F8H注:以上各条指令视为互相独立。4.以间接地址为目的操作数MOV@Ri,A;(Ri)←A,i=0、1MOV@Ri,direct;(Ri)←(direct)MOV@Ri,#data;(Ri)←#data例如:设(30H)=6FH,(R1)=40H,MOV@R1,30H结果30H单元中数据取

6、出送入R1间接寻址的40H单元,(40H)=6FH。内部RAM间数据传送路径A累加器Direct直接寻址Rn寄存器#data立即数@Ri间接寻址5.以DPTR为目的操作数MOVDPTR,#data16;DPTR←#data16例如执行MOVDPTR,#2000H后,(DPTR)=2000H。DPH←20H,DPL←00H这是唯一的16位立即数传送指令,把16位常数送入DPTR,通常用于把16位地址送入DPTR。所以DPTR又称为地址指针.6.访问外部数据RAM在8051指令系统中,访问片外RAM只能用寄存器间接寻址,与累加器A配合,共四条指令。MO

7、VXA,@Ri;A←((Ri)),i=0、1MOVX@Ri,A;(Ri)←A寻址范围是片外256BRAM。MOVXA,@DPTR;A←((DPTR))MOVX@DPTR,A;(DPTR)←A寻址范围是片外64KBRAM。例如:若(R0)=26H,(0026H)=69H,则执行指令“MOVXA,@R0”后,把片外数据存储器0026H单元中的数据69H送入累加器A中;若(DPTR)=5620H,(A)=98H,则执行指令“MOVX@DPTR,A”后,就将98H送入了片外数据存储器地址为5620H的存储单元中。7.读ROM指令(查表指令)注:数据表格放在

8、程序存储器中(只有两条指令)。①近程查表指令(256B)MOVCA,@A+PC;A←((A)+(PC))只能查找指令所在地

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。