版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
①MOVA,#data;A
←
data②
MOVA,direct;A←(direct)③MOVA,Rn ;A←(Rn),n=0~7
④
MOVA,@Ri ;A←((Ri)),i=0、1一、内RAM数据传送指令⑴以累加器A为目的字节的传送指令(4条)源操作数:立即寻址
直接寻址寄存器寻址
寄存器间接寻址功能:将源操作数所指定的内容送入累加器A中。【例3-1】若(R0)=40H,(30H)=60H,(40H)=50H
②MOVA,@R0;将以R0中内容为地址的存储单元中的数据送至A中①MOVA,R0;将工作寄存器R0中的数据传送至A中结果:(A)=40H结果:(A)=50H
④MOVA,#30H;将立即数#30H送入A中(A)=30H③MOVA,30H;将直接地址30H存储单元中的数据传送至A中,(A)=60H
结果:(A)=60H结果:(A)=30H①MOVRn,A;Rn←(A),n=0~7②MOVRn,#data;Rn←data,n=0~7③MOVRn,direct;Rn←(direct),n=0~7⑵以工作寄存器Rn为目的字节的传送指令(3条)
功能:将源操作数所指定的内容送入当前工作寄存器组中的某一个寄存器中。
源操作数:累加器A
立即寻址直接寻址
例3-2:已知(A)=50H,(R1)=10H,(R2)=20H,(R3)=30H,(30H)=4FH执行指令:
MOVR1,AMOVR2,30HMOVR3,#85H试求:(R1)=?(R2)=?(R3)=?执行指令后(R1)=50H(R2)=4FH(R3)=85H⑶以直接地址为目的字节的传送指令(5条)①MOVdirect,A ;direct←(A)②MOVdirect,#data ;direct←data③MOVdirect1,direct2;direct1←(direct2)④MOVdirect,Rn ;direct←(Rn),n=0~7⑤MOVdirect,@Ri ;direct←((Ri)),i=0、1例3-3:已知(R0)=60H,(R1)=72H,执行指令:
MOV40H,@R0试求指令执行结果。执行指令后(40H)=72H⑷以寄存器间址为目的字节的传送指令(3条)①MOV@Ri,A ;(Ri)←(A),i=0、1②MOV@Ri,direct;(Ri)←(direct),i=0、1③MOV@Ri,#data;(Ri)←data,i=0、1功能:将源操作数所指定的内容送入以R0或R1为地址指针的片内RAM单元中。例3-4:已知(R1)=30H,(A)=20H,执行指令:
MOV@R1,A
则(R1)=?(30H)=?执行指令后(30H)=20H(5)以DPTR为目的操作数的数据传送指令MOVDPTR,#data16功能:将外部RAM或ROM某单元地址作为立即数送到DPTR中,立即数的高8位送DPH,低8位送DPL。
注意:51唯一的16位传送指令。例3-5:MOVDPTR,#1234H;DPTR=1234H该指令也可以用两条8位数据传送指令实现:MOVDPH,#12H;DPH=12HMOVDPL,#34H;DPL=34H,DPTR=1234H上述五类传送指令中,需要注意几点:1.传送指令无:
MOVRn,RnMOVRn,@Ri
MOV@Ri,Rn
MOV@Ri,@Ri
2.传送指令的字节数:凡是指令中即不包含直接地址又不包含8位立即数的指令均为一字节指令;若指令中包含一个直接地址或8位立即数,指令字节数为2;
若包含两个这样的操作数,则指令字节数为3。
MOVA,Ri;1个字节
MOVA,direct;2个字节MOVdirect,#data;3个字节
MOVDPTR,#data16;3个字节3.正确区分各种寻址方式的含义
若(R0)=60H,(60H)=50H,式探讨以下指令的执行结果:
MOVA,R0
MOVA,@R0MOVA,60HMOVA,#60H(A)=60H(A)=50H(A)=50H(A)=60H4.所有传送指令均不影响标志位:CYACOV,但累加器A将影响标志位P二、访问外部RAM的数据传送指令①MOVX@DPTR,A;(DPTR)←(A),i=0、1MOVXA,@DPTR;A←((DPTR))功能:将DPTR的值作为外部RAM或I/0口的单元地址与累加器A之间传递数据。范围:可寻址范围达外RAM64KB全部空间③MOVX@Ri,A;(Ri)←(A),i=0、1④MOVXA,@Ri;A←((Ri))
功能:将R0或R1所指定的外部RAM单元与累加器A之间传递数据。范围:因此这两条指令寻址范围仅限于外RAM256个单元中。例3-6:试编写程序,将片外RAM的1000H单元的内容送入片内0100H单元中。MOVDPTR,#1000HMOVXA,@DPTRMOVDPTR,#0100HMOV@DPTR,A注意:外RAM之间不可以直接传递数据三、程序存储器向累加器A传送数据读ROM指令(2条)内RAM(包括特殊功能寄存器):用MOV指令传送;外RAM:用MOVX指令传送;ROM:用MOVC指令传送。①MOVCA,@A+DPTR;A←((A)+(DPTR))②MOVCA,@A+PC;A←((A)+(PC))
注意:三个不同的存储空间用三种不同的指令传送:【例3-7】已知ROM中存有0~9的平方表0,1,4,9,…,首地址为2000H,试根据累加器A中的数值(0~9)查找对应的平方值,存入内RAM30H。(设A=3)
方法一:若用DPTR作为基址寄存器,可编程如下:1000H:MOVDPTR,#2000H;置ROM平方表首地址
MOVCA,@A+DPTR;(A)+(DPTR)=2003H(设A=3),;A=(2003H)=09HMOV30H,A;平方值存入内RAM30H中
……
……2000H:DB0,1,4,9,16,25,36,…,81即:2000H:00H;平方表:02=02001H:01H;12=12002H:04H;22=42003H:09H;32=92004H:10H;42=16,16=10H
……
……2009H:51H;92=81,81=51H方法二:用PC作为基址寄存器,在MOVC指令之前应先用一条加法指令进行地址调整,编程如下:MOVA,#00H;待求平方的值为0ADDA,#data;地址位置调整值MOVCA,@A+PC1FFDH:MOV30H,A1FFFH:RET2000H:DB0,1,4,9,16,25,36,…,81Data等于MOVC与表格首地址之间指令所占的字节数。【例3-8】按下列要求传送数据:设ROM(2000H)=0ABH(1)ROM2000H单元数据送内RAM10H单元;(2)R0M2000H单元数据送外RAM80H单元;(3)ROM2000H单元数据送外RAM1000H单元;解(1):
MOVDPTR,#2000H;置基址2000H,(DPTR)=2000HMOVA,#00H;置变址0,(A)=00HMOVCA,@A+DPTR;读ROM2000H,(A)=ABHMOV10H,A;存内RAM10H单元,(10H)=ABH解(2):
MOVDPTR,#1FFFH;置基址1FFFH,(DPTR)=1FFFHMOVA,#01H;置变址01H,(A)=01HMOVCA,@A+DPTR;读ROM2000H,(A)=ABHMOVR0,#80H;置外RAN间址,(R0)=80HMOVX@R0,A;写外RAM80H,外RAM(80H)=ABH
解(3):
MOVDPTR,#2000H;置基址2000H,(DPTR)=2000HMOVA,#00H;置变址0,(A)=00HMOVCA,@A+DPTR;读ROM2000H,(A)=ABHMOVDPTR,1O00H;修改外RAN地址,(DPTR)=1000H
MOVX@DPTR,A;写外RAM1000H,外RAM(1000H)=ABH
1.PUSHdirect;SP←(SP)+1,(SP)←(direct)
四、堆栈操作指令(2条)
首先让sp的内容加1,使他指向栈顶空单元,然后将直接地址direct单元的内容送入栈顶空单元。2.POPdirect;direct←((SP)),SP←(SP)-1
首先让sp所指的单元的内容送入直接地址direct单元,然后让sp的内容减1,成为新的栈顶单元。注意:POPACC正确POPA错误例PUSH30H;(30H)=2BH,具体操作是:
先将堆栈指针SP的内容(0FH)加1,指向堆栈顶的一个空单元,此时SP=10H;②然后将指令指定的直接寻址单元30H中的数据(2BH)送到该空单元中。例POP40H;(40H)=4CH,具体操作是:
①先将SP所指单元0FH(栈顶地址)中的数据(4CH)弹出,送到指定的内RAM单元40H,(40H)=4CH
②然后(SP)-1→SP,SP=0EH,SP仍指向栈顶地址。五、交换指令(5条)
(1)XCHA,Rn ;(A)←→(Rn),n=0~7
(2)XCHA,@Ri;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农机驾驶操作员操作水平知识考核试卷含答案
- 煤层气发电运行值班员岗前安全意识考核试卷含答案
- 松香蒸馏工风险评估模拟考核试卷含答案
- 紫胶洗色干燥工安全专项评优考核试卷含答案
- 印花版修复工环保知识考核试卷含答案
- 磨具制造工岗前班组协作考核试卷含答案
- 旅游鞋制作工技能能力考核试卷含答案
- 充填回收工岗位冲突解决考核试卷含答案
- 水泥混凝土制品制作工安全检查模拟考核试卷含答案
- 电子设备调试工创新实践水平考核试卷含答案
- 康复护理扩容提升工程技术方案
- 眉山环天人才发展有限公司2026年下半年四川天府新区眉山片区公开招聘编外人员考试参考题库及答案详解
- 人教版六年级数学上册教学计划
- 《晶体硅光伏组件回收处理方法-热解法》
- (2026版)《中华人民共和国生态环境法典》解读
- SF无油涡旋压缩机培训
- 天津2025年天津市应急管理科学技术研究院招聘3人笔试历年参考题库附带答案详解
- 内蒙古包钢1.18事故警示安全教育课件
- 护理安全管理体系构建与风险防范实践指南
- 阅读表达(解析版)-2026年中考英语新课标(核心素养)题型特训讲练(北京)
- smt车间生产管理制度
评论
0/150
提交评论