版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、3.2 MCS-51指令及功能指令及功能3.2.1 3.2.1 数据传送指令数据传送指令(29(29条条) ) 包括数据的传送、交换、堆栈数据的压入与包括数据的传送、交换、堆栈数据的压入与弹出,是最根本、运用率最高的一类指令。弹出,是最根本、运用率最高的一类指令。 该类指令用到的助记符有该类指令用到的助记符有MOVMOV、MOVXMOVX、MOVCMOVC、XCHXCH、XCHDXCHD、SWAPSWAP、PUSHPUSH、POPPOP共八种。共八种。一、一、 MOV MOV类指令及功能类指令及功能1616条条 功能:从源操作数到目的操作数的数据传送。功能:从源操作数到目的操作数的数据传送。3
2、.2 MCS-51指令及功能指令及功能1 1、以累加器、以累加器A A为目的操作数的指令为目的操作数的指令4 4条条 MOV A MOV A,Rn Rn ;RnARnA, ;存放器;存放器RnRn的的内容送到累加器内容送到累加器A A MOV A MOV A,direct direct ;(Direct)A(Direct)A, ;直接地址;直接地址中的内容送中的内容送A A MOV A MOV A,Ri Ri ;(Ri)A(Ri)A,RiRi间址的内容送间址的内容送A A MOV A MOV A,#data #data ;dataAdataA,立刻数送,立刻数送A A例:假设例:假设 R0=5
3、0H R0=50H ,50H50H=38H=38H执行执行 MOV A ,R0 MOV A ,R0 后后 A=38H A=38H执行执行 MOV A ,R0 MOV A ,R0 后后 A=50H A=50H2、以存放器、以存放器Rn为目的操作数的指令为目的操作数的指令3条条MOV RnMOV Rn,A A ;ARnARn; ;累加器;累加器A A中的内容送存放器中的内容送存放器RnRnMOV RnMOV Rn,direct direct ;(Direct)Rn ,(Direct)Rn , ;直接地址中的内容送;直接地址中的内容送RnRn MOV Rn MOV Rn,#daTa #daTa ;D
4、ataRnDataRn,立刻数送,立刻数送RnRn例:例:MOV R7, 40H ; (40H) R7MOV R7, 40H ; (40H) R73、以直接地址为目的操作数的指令、以直接地址为目的操作数的指令5条条 MOV direct,A ;A(direct),A中的内容送入直 ;接地址中 MOV direct,Rn ;Rn(direct), ;Rn存放器内容送入直接地址中 MOV direct,direct ;(direct)(direct), ;源操作数直接地址内容送入 ;目的操作数的直接地址中 MOV direct,Ri ;(Ri)(direct),Ri间址内容送入 ;直接地址中 MO
5、V direct,#data ;data(direct),立刻数送入直 ;接地址中例例 MOV 50H, 30H ;(30H) (50H) MOV P1, 30H ; (30H) P1 MOV SP, #40H ; SP=40H4、以间接地址为目的操作数的指令、以间接地址为目的操作数的指令3条条MOV Ri,A ;A(Ri),A中内容送到中内容送到 ;Ri间址单元中间址单元中MOV Ri,direct ;(direct)(Ri),直接地址中,直接地址中 ;内容送入;内容送入Ri间址单元中间址单元中MOV Ri,#data ;data(Ri), ;立刻数送入;立刻数送入Ri间址单元中间址单元中练
6、习练习:编程把编程把30H单元的内容送到单元的内容送到40H单元中单元中方法一:方法一:MOV 40H,30H方法二:方法二:MOV R0,40HMOV R0,30H5、十六位数据传送指令、十六位数据传送指令MOV DPTR, #data ; datal6DPTR, ;16位常数送入数据指针位常数送入数据指针DPTR中中, ;高;高8位送入位送入DPH,低,低8位送入位送入DPL中中 例例 MOV DPTR,#2040H ;2040HDPTR 结果:结果:DPH20H,DPL40H DPTR是片外是片外RAM地址指针,只需这一条指令是地址指针,只需这一条指令是传送传送16位数据。位数据。举例举
7、例 例1 R0中有常数40H,而40H地址中有常数55H MOV A,R0 ; A40H,R0不变。 MOV A,R0 ; A55H 而不是40H,指令的功能:把R0中内容为地址的单元中的数送入A,Rn中是40H也就是把40H地址中内容55H送入A 。例2 假设(40H)25H,(50H)33H MOV 40H,50H ;(50H)(40H) 结果:(40H)33H,50H地址中内容不变,仍为33H。举例举例 例3 假设A=40H,R130H M0V R1,A;A(R1) 结果:(30H)=40H,A与R1皆不变。 指令功能是把A中内容送入R1间址的单元,即R1中内容为地址的单元。二、二、 M
8、OVC类指令及功能类指令及功能(2条条)查表指令查表指令 MOVC A,A+PC ; PC+1PC,(A十PC)A MOVC A,A+DPTR ;(A+DPTR)A 功能:该类属查表指令,利用这两条指令很方便地查找放在程序 存储器中数据表格的内容。 用MOVC A,A+PC指令需留意两点: PC是执行完本条指令后的PC值,即PC等于本条指令地址加一。 A是修正值,等于查表指令和欲查数据相间隔字节数。A的范围是0255。 因此该指令只能查找本指令后的256B范围内的表格,故称为近程查表。二、二、 MOVC类指令及功能类指令及功能(2条条)查表指令查表指令 例例1 程序程序 l000H MOV A
9、,#03H ;03HA 1002H MOVC A,A+PC ;PC+1PC1003H ;(A+PC)(3H+1003H)A 数数 1004H 02H 据据 1005H 04H 表表 1006H 06H 格格 1007H 08H 程序执行结果:程序执行结果:A06H 例例2 程序程序 1000H MOV A,#03H ;03HA 1002H MOV DPTR,#3000H ;3000HDPTR l005H MOVC A,A+DPTR ; ;(A+DPTR)(03H+3000H) ;(3003H)A TAB: 3001H :0AH 3002H : 0BH 3003H : 0CH 3004H : 0
10、DH 程序执行结果:程序执行结果: A0CH,查到了,查到了3003H单元中的数据。单元中的数据。 用用MOVC A,A+DPTR指令查表特点:指令查表特点: A,DPTR都可以改动,因此可在都可以改动,因此可在64KB范围内范围内查表,故称为远程查表。这条指令比前一条用查表,故称为远程查表。这条指令比前一条用之更方便。之更方便。三、三、 MOVX类指令类指令4条条累加器累加器A与片外数据存储器传送指令与片外数据存储器传送指令MOVX A,DPTR ;(DPTR)A, DPTR间址间址 ;单元内容送;单元内容送A MOVX DPTR,A ;A(DPTR),A中内容中内容 ;送入;送入DPTR之
11、间址单元之间址单元 MOVX A,Ri ;(Ri)A, ;Ri间址单元内容送间址单元内容送A MOVX Ri,A ;A(R), ;A中内容送中内容送Ri间址单元间址单元功能:功能: 这四条指令专门用来与外部数据存储区传送数据。这四条指令专门用来与外部数据存储区传送数据。CPU与外部与外部RAM传送数据时只能用间接寻址方式。传送数据时只能用间接寻址方式。例例1 把外部数据存储单元把外部数据存储单元2000H中的数据送到中的数据送到4000H单元单元中,设中,设2000H中有数据中有数据30H。 程序程序 各条指令执行结果各条指令执行结果 MOV DPTR,#2000H ;2000HDPTR, ;
12、DPTR2000H MOVX A,DPTR ;(DPTR)A即即(2000H)A, ;A30H MOV DPTR,#4000H ;4000HDPTR, ;DPTR4000H MOVX DPTR,A ;A(DPTR),(4000H)30H练习:练习:将片外将片外RAM中中2000H单元的数据送到片外单元的数据送到片外50H单元单元四、交换指令四、交换指令(5条条) XCH A,Rn ;Rn与A内容交换 XCH A,direct ;直接地址内容与A内容交换 XCH A,Ri ;Ri间址内容与A内容交换 XCHD A,Ri ;Ri间址内容低4位 ;与A中低4位内容交换 SWAP A ;A中高4位与低
13、4位交换 例例 假设假设R030H,AF0H,(30H)46H XCH A,R0 结果:结果:A30H,R0=F0H,R0与与A内内 容交换容交换 XCH A,R0 结果:结果:A=46H,(30H)F0H,R0中不变中不变 XCHD A,R0 结果:结果:AF6H,(30H)40H A与与(30H)中低中低4位交换,高位交换,高4位不变位不变 SWAP A 结果:结果: A0FH,A中高低中高低4位互换位互换五、五、 堆栈操作指令堆栈操作指令(2条条) PUSH direct ;SP+lSP,(direct)(SP) 直接地址内容压入堆栈栈顶 POP direct ;(SP)(direct),SP-1SP 堆栈栈顶内容弹出到直接地址功能: 是把直接地址中的内容压入堆栈保管,或从堆栈中取出(弹出)数据到直接地址中。留意: 堆栈是用户设定的内部RAM中的一块公用存储区,运用堆栈时一定先设堆栈指针。堆栈遵照后进先出的原那么安排数据。压入数据时SP先加1,再压入;弹出时,先弹出数据后,SP再减1。 例 设堆栈指针为30H,为维护现场把A和Rn中的内容压入堆栈维护,然后根据需求再把两者弹出。设A中为50H, R1中为0lH。 程序 各条执行结果 MOV SP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024至2030年中国学校监控电视数据监测研究报告
- 2024年三相发电电焊机项目可行性研究报告
- 换挡叉课程设计工序卡
- 中国高压清洗机行业发展形势及应用前景预测研究报告(2024-2030版)
- 中国醋酸钙片市场行情监测与销售规模剖析研究报告(2024-2030版)
- 中国超滤膜行业需求动态及投资盈利预测研究报告(2024-2030版)
- 中国衬衣行业供需趋势及投资风险研究报告(2024-2030版)
- 中国缝合线行业营销策略及发展趋势预测研究报告(2024-2030版)
- 中国纳米级碳酸钙行业竞争动态及未来前景分析研究报告(2024-2030版)
- 中国磁性凸轮锁行业销售状况与应用趋势预测研究报告(2024-2030版)
- 2024年航空职业技能鉴定考试-无人机AOPA驾驶证考试(视距内驾驶员视距内驾驶员)笔试历年真题荟萃含答案
- 科研的思路与方法
- 山东联通公司招聘笔试题
- 2024年新智认知数字科技股份有限公司招聘笔试参考题库含答案解析
- 金属探测器检测记录
- 安全教育记录范文(25篇)
- 2024年供应链管理竞赛考试题库
- 三年级语文下册第二单元群文阅读教学设计
- 习思想教材配套练习题 第七章 社会主义现代化建设的教育、科技、人才战略
- led显示屏工艺流程
- 建设项目设计管理方案
评论
0/150
提交评论