好文档 - 专业文书写作范文服务资料分享网站

单片机原理及应用教学教案 

天下 分享 时间: 加入收藏 我要投稿 点赞

XCH MOV SJMP

方法4(堆栈传送法): PUSH PUSH POP POP SJMP

A,40H 30H,A $

30H 40H 30H 40H $

第十二讲

一、授课内容: MCS―51单片机指令系统 二、授课类型:讲授 三、授课时数:4学时 四、教学目标:

掌握并熟练运用MCS―51系列单片机的算术运算指令 五、教学重、难点:

熟练运用MCS―51系列单片机的算术运算指令 六、教学设想:

借助产品、作品演示,一方面可以使课堂生动,另一方面可以腾出大量时间加强对重难点知识的讲解,增强学生对知识的理解,同时提高他们对本学科的兴趣. 七、教学过程:(板书) 算术运算类指令 1.加法指令

ADD A,Rn ADD A,direct ADD A,@Ri

;A← A + Rn ;A← A +(direct) ;A← A +(Ri)

ADD A,#data 2.带进位加指令

ADDC A,Rn ADDC A,direct ADDC A,@Ri ADDC A,#data

;A← A + #data

;A← A + Rn + C ;A← A +(direct)+ C ;A← A +(Ri)+ C ;A← A + #data + C

C为来自PSW状态寄存器中的进位位C。

例如,设A=20H,R0=21H,C=1,执行指令 ADDC A,R0后,A=42H。 3.带借位减指令

SUBB A,Rn SUBB A,direct SUBB A,@Ri SUBB A,#data

;A← A - Rn - C ;A← A -(direct)- C ;A← A -(Ri)- C ;A← A - #data – C

例如,设A=39H,R0=20H,(20H)=32H,C=1,执行指令 SUBBA,@R0后,A=06H。 4.乘法指令

MUL AB

;BA← A×B

A和B中各存放一个8位无符号数,指令执行后,16位乘积的高8位在B中,低8位存A中。

例如,A=30H,B=60H,执行 MUL AB 后,A=00H,B=12H。 5.除法指令

DIV AB

;A÷B→商在A中,余数在B中

A和B中各存放一个8位无符号数,A放被除数,B放除数。指令执行后,A中存放商,B中存入余数。若B=00H,则指令执行后OV=1,A与B不变。

例如,A=30H,B=07H,执行 DIV AB 后,A=06H,B=06H。 6.加1指令

INC A INC Rn INC direct

;A← A + 1 ;Rn← Rn + 1

;(direct)← (direct)+ 1

INC @Ri INC DPTR

;(Ri)←(Ri)+ 1 ;DPTR← DPTR + 1

例如,(30H)=22H,执行 INC 30H 后,(30H)=23H。 7.减1指令

DEC A DEC Rn DEC direct DEC @Ri

;A← A - 1 ;Rn← Rn - 1

;direct← (direct)- 1 ;(Ri)←(Ri)- 1

例如,R0=30H,(30H)=22H,执行 DEC @R0 后,(30H)=21H。 8.十进制调整指令

DA A ;把A中按二进制相加的结果调整成按BCD码相加的结果 例如,A=65BCD,B=78BCD,C=0,执行下列语句 ADD DA

后,A=43 BCD,C=1。

例如,试把存放在R1R2和R3R4中的两个16位数相加,结果存于R5R6中。 解:参考程序如下: MOV ADD MOV MOV ADDC 相加时的进位位加进来

MOV

SJMP $

A,B A

A,R2 A,R4 R6,A A,R1 A,R3

;取第一个数的低8位 ;两数的低8位相加 ;保存和的低8位 ;取第一个数的高8位

;两数的高8位相加,并把低8位

R5,A ;把相加的高8位存入R5寄存器中

第十三讲

一、授课内容: 80C51单片机的指令系统 二、授课类型:讲授 三、授课时数:4学时 四、教学目标:

掌握并熟练运用单片机的逻辑运算指令 五、教学重、难点:

熟练运用单片机的逻辑运算指令 六、教学设想:

借助产品、作品演示,一方面可以使课堂生动,另一方面可以腾出大量时间加强对重难点知识的讲解,增强学生对知识的理解,同时提高他们对本学科的兴趣. 七、教学过程:(板书) (一)逻辑运算与循环类指令 1.“与”操作指令

逻辑“与”运算的特点是: ① X∧1=X;

② X∧0=0 利用这个特点可以对某个操作数的某一位或某几位清零。 2.“或”操作指令

逻辑“或”运算的特点是: ① X∨1=1; ② X∨0=X

利用这个特点,可以对某个操作数的某一位或几位置“1”。 3.“异或”操作指令

逻辑异或运算的特点是:

利用这个特点,可以对某个操作数的某一位或某几位取反。 4.求反与清除指令 5.循环指令

指令周期 汇编指令 操作说明 代码长度(字节) Tosc TM RR A值循环右移(移向低位)一位,A0移入A7。 A RRC A值带进位位循环右移一位,A0移入Cy,CyA 移入A7。 RL A值循环左移(移向高位)一位,A7移入A0。 A RLC A值带进位位循环左移一位,A7移入Cy, CyA 移入A0。 1 1 1 1 12 12 1 1 12 1 12 1 “RR A ”指令和“RL A ”指令的功能分别是将累加器A的内容循环左移或右移一位;“RRC A”指令和 “RLC A ”指令的功能分别是将累加器A的内容带进位位Cy循环左移或右移一位。

有时可运用“RLC A”指令实现无符数乘2运算,用“RRC A”指令实现除2运算(商为非整数时向下取整)。 (二)程序转移类指令 1.无条件转移指令

? 绝对(短)转移指令 AJMP

? 长转移指令 LJMP

addr16 ;PC ← addr16 addr11 ;PC10~0 ← addr11

? 短(相对)转移指令 SJMP

? 间接转移指令 JMP

@A+DPTR ;PC ← A + DPTR rel ;PC ← PC + 2 + rel

单片机原理及应用教学教案 

XCHMOVSJMP方法4(堆栈传送法):PUSHPUSHPOPPOPSJMPA,40H30H,A$30H40H30H40H$第十二讲一、授课内容:MCS―51单片机指令系统二、授课类型:讲授三、授课时数:4学时
推荐度:
点击下载文档文档为doc格式
1234725ch217c193741d
领取福利

微信扫码领取福利

微信扫码分享