MCS-51系列单片机指令系统:指令是指挥计算机执行某种操作的命令。一条指令可用两种语言形式表示,即机器语言和汇编语言指令。机器语言指令是用二进制代码表示,称指令码,又称机器码,计算机能直接识别并加以分析和执行。汇编语言指令用助记符表示,称汇编语言指令,它便于程序员编写、阅读和识别程序,但不能为计算机识别和理解,必须汇编成机器语言指令才能为计算机所认识,并执行。
一台计算机机所有指令的集合,称为该计算机机的指令系统。它是表征计算机性能的重要标志。每台计算机都有它自己特有的指令系统。
8051汇编语言需用40多种助记符来表征30多种指令功能。由于功能助记符需定义诸如内部数据存储器、程序存储器、外部数据存储器等,同一种功能需用几个助记符来表示(如MOV、MOVX、MOVC等)。通过这些助记符,与指令中的源、目的地址组合成MCS-51的111条指令。
MCS-51指令系统是用户比较熟悉的MCS-48指令系统的扩充。扩充后的指令系统可扩展片内CPU的外围接口功能,并优化字节效率和执行速度。MCS-51指令系统由49条单字节指令、45条双字节指令的17条三字节指令组成,这样可提高程序存储器的使用效率。对于大多数算术、逻辑运算和转移操作,可选用短地址或长地址指令来实现,以提高运算速度、编程效率和节省存储器单元。在111条指令中,64条指令的执行时间为12个振荡器周期,45条为24个振荡器周期,只有乘、除法指令需8个振荡周期。当主频为12MHZ时,典型指令的执行时间为1US,运算速度是比较快的。
用汇编语言表示的指令格式(与典型微型计算机相似)为:
标号:操作码助记符 [(目的操作数),(源操作数)];注释
标号是该指令的符号地址,可根据需要设置。某个语句一旦赋予某个标号,则在其它语句的操作数中就可以引用该标号,以便控制程序的转移或寻址。标号与操作码之间用冒号“:”分隔开。
操作码和操作数是指令的核心部分,在二者之间用若干空格分隔开。操作码在汇编语言中用助记符表示,它的作用是命令CPU作何种操作。操作数和源操作数,二者之间用“,”号隔开。
用机器语言表示的指令格式以8位二进制数(字节)为基础,有单字节、双字节和三字节指令,其格式为:
单字节:操作码
双字节:操作码 数据或寻址方式
三字节:操作码 数据或寻址方式
暂无评论