第2章指令系统与汇编语言程序设计知识讲解.ppt 立即下载
2024-12-04
约2千字
约53页
0
1.2MB
举报 版权申诉
预览加载中,请您耐心等待几秒...

第2章指令系统与汇编语言程序设计知识讲解.ppt

第2章指令系统与汇编语言程序设计知识讲解.ppt

预览

免费试读已结束,剩余 48 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第2章指令系统与汇编语言程序设计单片机指令系统概述2.按指令执行时间长短分
①单周期指令65条
②双周期指令44条
③四周期指令2条
每条平均执行时间:

2-1指令格式二.机器语言指令格式2-2指令寻址方式二.直接寻址方式三.寄存器寻址方式指令操作数为寄存器名,数据在寄存器中。例:	MOVA,R0	;A¬R0设指令执行前A=20H,R0=40H,	执行指令后,A=?,R0=?五.变址间接寻址方式数据在存储器中,指令给出的寄存器中为数据的基地址和偏移量。	数据地址=基地址+偏移量。2-4	MCS-51指令系统分析(一)内部传送指令:实现片内数据存储器中数据传送。指令格式:MOV目的操作数,源操作数寻址方式:立即寻址、直接寻址、寄存器寻址、寄存器间址。	例2-4-1:顺序执行下列指令序列,求每一步执行结果。说明:(二)外部传送指令实现片外数据存储器和A累加器之间的数据传送。例2-4-2:实现片外数据存储器数据传送(2000H)®(2100H)。(三)交换指令			实现片内RAM区的数据双向传送。2.半字节交换指令(五)查表指令实现从程序存储器读取数据到A累加器,只能使用变址间接寻址方式。多用于查常数表程序,可直接求取常数表中的函数值。例:查表法求Y=X2。设X(0≤X≤15)在片内RAM的20H单元中,要求将查表求Y,存入片内RAM21H单元。2)指令地址	源程序
							ORG1000H		;程序起始地址
			1000H	SQU:	MOVA,20H	;取X
		1002H		ADDA,#3		;修正偏移量
			1004H		MOVCA,@A+PC	;查表求Y=X2
			1005H		MOV21H,A	;存结果
			1007H		RET			;子程序结束
			1008H	TAB:	DB00,01,04	;平方表			100BH		DB09,…,225	习题:找出指令错误并改正:2-4-2	算术运算指令1.标志位(自动设置状态)2.用户选择位(编程设置状态)2-4-2算术运算指令完成片内RAM和A中数据的加减乘除运算。10011010
11100011
+0
101111101带进位加法指令ADDC用于多字节运算十进制加法指令:	
				ADDA,源操作数
				DAA
带进位十进制加法指令:
				ADDCA,源操作数
				DAA
十进制加1运算:ADDA,#01
DAA2.减法指令	SUBBA,源操作数	;带借位减法指令3.增量、减量指令4.乘除指令	2-4-2	逻辑运算指令例2-4-7:设A=11000101,Cy=0,分别执行下列单条指令:	CPLA	求:A=,Cy=
			RLA
			RLCA	(二)双操作数逻辑运算指令(对位逻辑运算):	ANL、ORL、XRL		2-4-4布尔变量操作指令对片内RAM中位寻址区操作。位累加器Cy和位地址b。三.逻辑运算:ANL、ORL:	ANLC,40H;C←C∧(40H)		ANLC,/40H;C←C∧/(40H)2-4-5转移指令转移指令通过改写PC的当前值,从而改变CPU执行程序的顺序,使程序发生跳转。按转移方式分类:	一.无条件转移指令1.长转移指令:		LJMP	nn	;PC¬nn	指令机器码:02nnHnnL	指令转移范围:64KB相对偏移量e的计算式:
e=目的指令地址-(转移指令地址+指令字节数)	=目的地址-PC当前值例1:计算转移指令的相对偏移量e,并判断是否超
出转移范围。4.间接转移指令(多分支转移指令---散转)				JMP@A+DPTR.;PC¬A+DPTR
指令机器码73H,指令转移范围64KB。二.条件转移指令3.判位转移指令						
		JBb,e		;(b)=1转移,否则不转移		JNBb,e		;(b)=0转移,否则不转移	6.循环转移指令:
			DJNZ操作数,e				
			DJNZR2,e;PC←PC+2,R2←R2-1					;若R2≠0,PC←PC+e,
					;若R2=0,顺序执行。2-4-6子程序2-4-6二.绝对调用指令(2字节)		
		ACALLpn	;PC¬PC+2
		;SP¬SP+1,(SP)¬PCL,SP¬SP+1,(SP)¬PCH;PC10~
0¬pn10~0	;PC15~11不变	
	pn为子程序首地址
	指令机器码:pn10~810001,pn7~0
	指令调用范围2KB。20H	92H注意:1.子程序起始指令要使用标号,用作子程序名。	2.执行返回指令RET之前,保证栈顶内容为主程序返回地址,以便正确返回主程序。注意:1.子程序起始指令要使用标号,用作子程序名。	2.执行返回指令RET之前,保证栈顶内容为主程序返回地址,以便正确返回主程序。
查看更多
王子****青蛙
实名认证
内容提供者
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

第2章指令系统与汇编语言程序设计知识讲解

文档大小:1.2MB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用