欢迎来到天天文库
浏览记录
ID:48239075
大小:3.02 MB
页数:103页
时间:2020-01-18
《单片机的指令系统.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1指令概述寻址方式数据传送类指令算术运算类指令逻辑操作类指令控制转移类指令位操作指令第3章80C51的指令系统本章内容23.1指令系统简介1)指令概述一台微机所具有的所有指令的集合,就构成了指令系统。指令系统越丰富,说明CPU的功能越强。2)机器指令一台微机能执行什么样的操作,是在微机设计时确定的。一条指令对应着一种基本操作。由于计算机只能识别二进制数,所以指令也必须用二进制形式来表示,称为指令的机器码或机器指令。MCS-51单片机指令系统共有33种功能,42种助记符,111条指令。31、二进制的表示形式:(以“累加器的内容+08H”为例)0
2、0100100B操作码OP(加法)00001000B操作数DATA(08H)特点:能被CPU直接识别、运行的形式。也称机器码、汇编语言的目标代码。缺点:不便于阅读、记忆和调试修改。3)指令表示42、十六进制表示方式:它是对二进制形式的一种简化。00100100B24H00001000B08H二进制表示的形式十六进制表示的形式在实验室等少数环境下,可以将这种形式作为输入程序的一种辅助手段。但是,这种形式的指令格式必须由对应的监控程序把它们翻译成二进制的“机器码”后存入程序存储器并运行。53、指令的“助记符”方式(也称“汇编格式”):001001
3、00B24H00001000B08HADDA,#08H二进制表示形式十六进制表示汇编格式返回1)这是一种由英文单词或字母、数字来表征指令功能的形式。是一种便于阅读、书写和交流的表示形式。2)“汇编”格式的指令必须“翻译”为二进制形式“机器码”后才能为CPU所识别和执行。3)三种不同的表示方法适用于不同的场合。6指令格式:既指令的结构形式。OPDATA或ADDRESS操作码操作数或操作数地址由操作码和操作数(或操作数地址)构成指令的结构。举例:MOVA,#0FFHADDA,R0返回4)指令格式7采用助记符表示的汇编语言指令格式如下:标号是程序员
4、根据编程需要给指令设定的符号地址,可有可无;标号由1~8个字符组成,第一个字符必须是英文字,不能是数字或其它符号;标号后必须用冒号。4)指令格式标号:操作码操作数或操作数地址;注释8操作码表示指令的操作种类,如MOV表示数据传送操作,ADD表示加法操作等。操作数或操作数地址表示参加运算的数据或数据的有效地址。操作数一般有以下几种形式:没有操作数项,操作数隐含在操作码中,如RET指令;只有一个操作数,如CPLA指令;有两个操作数,如MOVA,#00H指令,操作数之间以逗号相隔;有三个操作数,如CJNEA,#00H,NEXT指令,操作数之间也以逗
5、号相隔。注释是对指令的解释说明,用以提高程序的可读性;注释前必须加分号。4)指令格式9在MCS-51单片机的指令系统中,因指令操作码和操作数的不同,指令(在存储器中)长度也各不相同。分为单字节、双字节和三字节。单字节指令(49条):分无操作数、有操作数两种。无操作数:如INCDPTR10100011BINCA00000100B【特点】:操作数隐含在操作码中。含有操作数寄存器名称的单字节指令:如:MOVA,R011101000BMOVA,R111101001B【特点】:寄存器名以三位数代码的形式在指令的后三位。5)指令长度与执行时间5)指令长度
6、与执行时间10双字节指令(46条):指令的操作码和操作数各占一个字节。如:MOVA,#data01110100Bdata很明显:8位的操作数本身占据一个字节。程序存储器01110100datann+1MOVA,#data双字节指令在程序存储器的存放示意图5)指令长度与执行时间11三字节指令(16条):指令中的操作数为双字节。如:MOVDPTR,#data161001000B,data15-8,data7-0或者:指令中分别包含1个字节的操作数和1个字节的操作数地址。如:MOVdirect,#data举例:MOV20H,#0FFH1001000
7、0data15-8data7-0MOVDPTR,#data16OP(75H)direct(20H)data(FFH)MOVdirect,#data三字节指令在存储器中存放的方式示意图5)指令长度与执行时间12指令的字节多是否意味着指令周期就长?指令字节数周期数指令说明MOVA,R011R0内容送累加器AMOVA,#0FFH21立即数FFH送AMOV20H,#30H32立即数30H送内存20h单元MULAB14乘法指令INCDPTR1116位寄存器DPTR加一从表中可见,指令的字节数与指令周期不是对等的关系返回5)指令长度与执行时间5)指令长度
8、与执行时间136)符号说明符号含义Rn表示当前选定寄存器组的工作寄存器R0~R7Ri表示作为间接寻址的地址指针R0~R1#data表示8位立即数,即00H~FFH#
此文档下载收益归作者所有