欢迎来到天天文库
浏览记录
ID:50327008
大小:2.75 MB
页数:198页
时间:2020-03-08
《MCS-51系列单片机原理及接口技术 第2版 教学课件 作者 邹振春 第三章 MCS-51汇编语言指令.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章MCS-51汇编语言指令寻址方式汇编语言程序设计基础数据传送类指令逻辑操作类指令算术运算类指令位操作指令控制转移类指令程序设计举例MCS-51系列单片机为8位机,可识别28=256种数据及代码。从指令的执行时间看,12个振荡器周期的指令64条,24个振荡器周期的指令45条,48个振荡器周期的指令2条(MUL及DIV)。分别对应单机器周期、双机器周期和四机器周期。在系统时钟为12MHz时,对应用时1S、2S、4S。不论何种汇编语言,其助记符都包括操作码和操作数两部分。操作码指明了本条指令的功能,操作数
2、代表了指令的操作对象。操作数指定了参与运算的数据或数据所在单元的地址。如何得到这个地址称为寻址方式。3.1寻址方式3.1.1立即寻址指令中跟在操作码后面的数据就是实际参与运算的操作数,称为立即数。其指令码形式为:PCPC+1操作码立即数一般为一字节一字节或二字节如:MOVA,#20H;(A)←20H即把20H这个数据送入累加器A中,即送入特殊功能寄存器中地址为E0H的单元。PC分析0111010000100000操作码立即数……PC执行PCACC(0E0H)00100000MOVA,#20H执行示意图3.1.2
3、寄存器寻址把指定的某一可寻址的工作寄存器R0~R7的内容作为操作数。指令操作码的低3位指示所用寄存器。如:INCR3;(R3)←(R3)+1PC…RS1RS0…000**01100001011……ROM1……01000001……片内RAMALU取指PC010000103.1.3直接寻址指令中包含了操作数的地址,该地址直接给出了参加运算或传送的单元的地址。直接寻址可访问三种地址空间:⑴特殊功能寄存器SFR(又叫做专用寄存器):直接寻址是唯一的方式。⑵内部数据存储器RAM中的128个字节。⑶221个位地址空间。如:
4、MOVA,70H;(A)←(70H)PC分析PC执行PC1110010101110000操作码直接地址……ROM……01100110……SFR70H……ACC011001103.1.4寄存器间接寻址指令指定的某一寄存器的内容作为操作数地址。可用来间接寻址的寄存器有R0、R1、堆栈指针SP和数据指针DPTR。前面加@表示间接寻址。可访问内部数据存储器或外部数据存储器。如:MOVA,@R0;(A)←(R0)11101110……ROMPC取指PC…RS1RS0…000**00000110110……00110110片内
5、RAM……01100000…………R060HACC3.1.5基址寄存器加变址寄存器间接寻址(又叫变址寻址)基址寄存器(DPTR或PC)的内容与变址寄存器(A)的内容的和为可寻址单元的地址。该类寻址方式用于访问程序存储器,对查表访问特别有用。注意:A中内容为无符号数。如:MOVCA,A+PC;(A)←((A)+(PC))设(A)=80H,(PC)=8019HPC取指PC10000011……ROM10001010……80A8HALU100010001000000000100000执行8020+88=80A8H10
6、001010ALEPC3.1.6相对寻址把指令中给定的地址偏移量与本指令所在单元地址(PC内容)相加得到真正有效的操作数地址。该偏移量有正、负号,即在机器中必须以补码形式给出,所转移的范围为相当于当前PC值的+127~-128之间。如:JC80H若C=0,则PC值不改变;若C=1,则以现行的PC值为基址加上80H得到所转向的地址。假设该指令放在1005H单元中,C=1。PC取指PC0100000010000000ROM…………1005HALU0001000000000111执行1007+FF80=0F87H10
7、06H1007HPC……0F87H00001111100011113.1.7寻址方式小结方式利用的变量使用的空间寄存器寻址R0~R7、A、Cy、DPTR直接寻址内部RAM和SFR及位空间寄存器间接寻址@R0、@R1、SP内部数据存储器@R0、@R1、@DPTR外部数据存储器立即寻址程序存储器变址寻址DPTR+A、PC+A程序存储器相对寻址PC+偏移量程序存储器3.2MCS-51汇编语言程序设计基础3.2.1MCS-51单片机的助记符语言学会硬件联接和掌握程序编制是两个重要的环节。只有硬件联接无误和程序编制正确,
8、计算机才有可能按设计者的要求去完成各种各样的任务。机器指令代码常用在实时控制场合。这是由于由机器指令代码编写的程序比较简练,可不经编译立即被机器所执行。各类机器的机器指令用助记符代替。这样以来,了解和熟悉指令系统,就归结为了解和熟悉指令系统的助记符。助记符一般是由操作码和操作数两部分组成。操作码反映了指令的功能,操作数代表了指令的操作对象。㈠操作码:操作码是指令功能的英文缩写。MCS-
此文档下载收益归作者所有