单片微型计算机c第7讲机械,单片微型计算机C第7讲(机械) 课件.ppt

《单片微型计算机C第7讲(机械) 课件.ppt》由会员分享,提供在线免费全文阅读可下载,此文档格式为ppt,更多相关《单片微型计算机C第7讲(机械) 课件.ppt》文档请在天天文库搜索。

1、上节内容回顾寻址方式请说明下面指令源操作数和目的操作数的寻址方式MOV A,#dataMOV Rn,directMOV @Ri,directMOVC A,@A+DPTR第6-7讲教学目的和要求【教学目标】通过讲述单片机的寻址方式和指令系统功能,以及位寻址功能。掌握各种寻址方式、常用指令的功能和使用方法及汇编语言程序设计方法。【教学重点】①MCS51单片机的寻址方式; ②MCS51单片机的指令系统;【教学难点】寻址方式及指令系统。第四章 MCS-51单片机指令系统4.3 MCS51指令系统MCS51指令系统共有111条指令,按功能分类,可分成5类。数据传送类指令:28条;算术操作类指令:24条;逻辑运算类指令:25条;控制转移类指令:17条;位操作类指令:17条4.3 MCS51指令系统MCS51指令系统共有111条指令,按功能分类,可分成5类。数据传送类指令:28条;算术操作类指令:24条。

2、;逻辑运算类指令:25条;控制转移类指令:17条;位操作类指令:17条4.3.1 数据传送类指令数据传送类指令时编程时使用最频繁的一类指令一般不影响程序状态字寄存器PSW的状态。一般传送类指令(MOV)特殊传送类指令:MOVC、 MOVX、 PUSH、POP、 XCH、XCHD、 SWAP 共28条数据传送类指令4.3.1.1 一般传送类指令16位传送(仅1条) MOV DPTR,#data16; DPTR← data16 【例】执行指令 MOV DPTR,#1234H 。 ( DPH )=12H,( DPL )=34H。8位传送 通用格式: MOV , ; MOV指令①以A为目的操作数MOV A,Rn; A←(Rn)direct; A←(direct)@Ri; A←((Ri)) #data; A←data【例】若(R1)= 20H,(20H)= 55H。执行指令 MOV A,@R1 后,。

3、A寄存器的内容是多少?MOV指令②以Rn为目的操作数MOV Rn,A; Rn←(A)direct; Rn←(direct)#data; Rn←data【例】执行指令 MOV R6,#50H 后,(R6)= 50H MOV指令③以直接地址direct为目的操作数MOV direct,A direct ←A Rn; direct ←(Rn)direct1; direct ←(direct1)@Ri; direct ←((Ri)) #data; direct ←data【例】若(R1)=50H,(50H)=18H,执行指令MOV 40H,@R1 后,40H单元内容是多少?[email protected] @Ri,A; (Ri)←(A)direct; (Ri)←(direct)#data; (Ri)←data【例】若(R1)=30H,(A)=20H,执行指令MOV @R1,A 。

4、后,30H单元的内容是多少。 [email protected]#data 立即数直接地址direct工作寄存器Rn练习已知:(R0)=30H,试问执行如下指令,累加器A、R3、30H、31H单元中内容各是什么?MOV A, #20HMOV R3, #45HMOV @R0,#46HMOV 31H, #47H执行后,结果为:A=20H;R3=45H;(30H)=46H;(31H)=47H4.3.1.2特殊传送类指令 以DPTR内容为基址读ROM中常数表项指令MOVC,亦称查表指令ROM中可以存放程序代码,还经常存放常数表 MOVC A,@A+DPTR;A ←((A)+(DPTR)) 以PC内容为基址MOVC A,@A+PC ;A ←((A)+(PC))常数表可以存放在ROM的任何位置,称为远程查表指令。常数表只能存放在该指令后的256个单元内,称为近程查表指令。举例已知A寄存器当。

5、前内容为04H,试编写程序,以DPTR作为基址寄存器,将片外ROM的2015H单元中内容读出,并把数送到片内RAM的7FH单元。MOV DPTR,#2011HMOVC A,@A+DPTRMOV 7FH,A特殊传送指令MOVX 读片外RAM读片外RAM及接口单元数据的指令MOVX片外RAM中经常存放数据采集与处理的中间数据 MOVX A,@DPTR ;A ←((DPTR))MOVX A,@Ri ; A ←((Ri)) 写片外RAMMOVX @DPTR,A ;((DPTR))←AMOVX @Ri,A ; ((Ri))←A举例判断下列指令的正误,将错误的更正。MOVX A, 2000H MOV DPTR, #2000H MOVX A, @DPTR2. MOVX A, 20H MOV R0, #20H MOVX A, @R04.3.1.3堆栈操作指令PUSH与POP堆栈是一片存储区,遵循“后进先出。

6、”原则,栈顶由SP指示,初始化时,SP=07H。8051的堆栈设在片内RAM低端的128个单元,向上生长,即入栈时,栈顶指针增加。数据或指令数据或指令栈底SPPushpopSPXX+1X+2堆栈操作指令PUSH与POP入栈指令PUSH。PUSH direct ;SP←(SP)+1,(SP)←(direct) 先增加指针,以指向一个空的单元,将要数据压入堆栈出栈指令POP。POP direct ;(direct)←((SP)),SP ←(SP)-1 先取出数据,再减指针,将单元空出 。堆栈用于子程序调用时保护返回地址,或者用于保护子程序调用之前的某些重要数据(即保护现场),还可以用于数据交换。 堆栈操作指令PUSH与POP设(SP)=60H,(A)=30H,(B)=70H,连续执行两条指令PUSH ACC和PUSH B;再连续执行两条指令POP DPH和POP DPL30H70H栈底60H6。

7、1H62HSPPUSH ACCPUSH BPOP DPHPOP DPLSPSPDPH=70HDPL=30H4.3.1.4数据交换指令包含XCH、XCHD和SWAP三条字节交换指令XCHXCH A,Rn; (Rn)↔(A)direct; (A)↔(direct)@Ri; ((Ri))↔ (A)【例】若(R0)=80H,(A)=20H。 执行指令 XCH A,R0 后,(A)=80H,(R0)=20H。 数据交换指令XCHD半字节交换指令XCHD指令形式:XCHD A,@Ri指令功能:将寄存器间址的RAM单元的低半字节与A的低半字节互换,而高半字节保持不变。【例】若(R0)=30H,(30H)=67H, (A)=20H。执行指令XCHD A,@R0 指令后,(A)=27H,(30H)=60H。 数据交换指令SWAP累加器高低位交换指令SWAP指令形式:SWAP A指令功能:将累加器的高低4位互。

8、换。【例】若(A)=30H,执行指令SWAP A后,(A)=03H 。 4.3.2 算术运算类指令算数运算结果要影响PSW中标志位;PSW中标志位的含义CY为1,无符号数(字节)加减发生进位或借位OV为1,有符号数(字节)加减发生溢出错误AC为1,十进制数(BCD码)加法的结果应调整P为1,存于累加器A中操作结果的“1”的个数为奇数 算术运算指令影响标志位示例【例】有2个参与相加的机器数,一个是84H,另一个是8DH。试分析运算过程及其对状态标志的影响。ACC84H8DH11H结果:CY为1;AC为1 ;OV为1 ;P为0 1 0 0 0 0 1 0 0+1 0 0 0 1 1 0 11 0 0 0 1 0 0 0 1此时PSW的值为多少?4.3.2.1加法运算加法指令(ADD,共4条)ADD A,[Rn][direct][@Ri][#data],源操作数为四选一。带进位的加法指令(ADD。

9、C,共4条)ADDC A,[Rn][direct][@Ri][#data],源操作数为四选一增1指令(INC,共5条)INC [A][Rn][direct][@Ri][DPTR],五选一不影响任何标志位。十进制调整指令(DA,1条)DA AADD 不带进位的加法指令由寄存器A与([email protected]#data)中的一个相加,结果存回寄存器A中。【例】若有2个无符号数存于累加器A和RAM的30H单元,即(A)=84H,(30H)=8DH,执行指令 ADD A,30H。8DHRAM30H84HA8DH84H+11H11H将同时修改PSW的内容加法运算结果的溢出判断无符号数:判断无符号是否溢出时,仅需判断CY是否为1即可。有符号数:判断有符号运算是否产生溢出时,仅需判断OV是否为1即可。程序设计中,若需要对结果是否产生溢出,进行不同处理时,无符号数用JNC或JC,有符号数要用JNB或JB。

10、进行条件转移。 ADDC 带进位加法指令一般应用于多字节数据的加法ADDC A,Rn; A←(Rn)+(A)+CYdirect; A←(direct)+(A)[email protected]; A←((Ri))+(A) +CY#data; A←data+(A)+CY【例】试把存放在R1R2和R3R4中的两个16位数相加,结果存于R5R6中。R2R4R1R3+R6R5CMOV A,R2ADD A,R4MOV R6,AMOV A,R1ADC A,R3MOV R5,ADA 十进制调整指令DA A :调整A的内容为正确的BCD码 当两个用压缩BCD表示的数进行相加时,后跟此指令,单片机自动完成调整。【例】在R3中有十进制数67,在R2中有十进制数85,用十进制运算, 运算的结果放于R5中。程序为:MOV A,R3ADD A,R2 DA A MOV R5,A 0110 01111000 0101+1110 110001。

11、10 0110+0101 00101对某个寄存器或某单元中的数据,并不知道用户存放的类型是有符号数、无符号数,还是BCD码,需要用户在编程时,根据不同类型选择不同操作。4.3.2.2 减法指令 带借位的减法指令(SUBB,共4条)SUBB A,[Rn][direct][@Ri][#data],源操作数为四选一若无须带借位相减,在执行此指令之前,清除借位位C的内容,即执行CLR C。减1指令(DEC,共5条)DEC [A][Rn][direct][@Ri][DPTR],五选一减法中关于标志位的说明SUBB中对标志位的影响CY为1,表示最高位有借位OV为1,有符号数减法时发生溢出错误,正-负或负-正时可能发生。AC为1,低半字节向高半字节有借位;DEC对标志位的影响仅影响P标志位。减法指令举例【例】求R3←R2 - R1。 MOV A,R2 CLR C SUBB A,R1 MOV R3,A4。

12、.3.2.3 乘除法指令51单片机仅可完成无符号数的乘除法乘法指令 MUL AB ;A×B→BA如果乘积大于255,则置OV=1;CY恒置0除法指令 DIV AB ;A/B ;商→A、余数→B当B为0时,置OV=1;否则OV=0。 CY恒置04.3.3 逻辑运算类指令共24条运算类指令如与、或、异或累加器自运算指令如清零、取反,其操作数只能是累加器A累加器移位类指令如左、右移、带进位的左右移,其操作数只能是累加器A。除了带进位的移位运算影响CY外,其他指令不影响任何标志位。运算类指令对进行运算的两个操作数,按位进行相应的逻辑运算后,结果存入目的操作数。运算类型符号目的操作数源操作数用途与运算ANLARn;direct;#data;@Ri对某些不关心位进行“清0”directA;#data或运算ORLARn;direct;#data;@Ri对某些关心位进行“置1”directA;#data异或运算XRLARn;direct;#data;@Ri对某些关心位进行“取反”directA;#data本节作业【P53】 1 、11、12【P54】 15。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
东南亚位于我国倡导推进的“一带一路”海陆交汇地带,作为当今全球发展最为迅速的地区之一,近年来区域内生产总值实现了显著且稳定的增长。根据东盟主要经济体公布的最新据,印度尼西亚2023年国内生产总值(GDP)增长5.05%;越南2023年经济增长5.05%;马来西亚2023年经济增速为3.7%;泰国2023年经济增长1.9%;新加坡2023年经济增长1.1%;柬埔寨2023年经济增速预计为5.6%。 东盟国家在“一带一路”沿线国家中的总体GDP经济规模、贸易总额与国外直接投资均为最大,因此有着举足轻重的地位和作用。当前,东盟与中国已互相成为双方最大的交易伙伴。中国-东盟贸易总额已从2013年的443亿元增长至 2023年合计超逾6.4万亿元,占中国外贸总值的15.4%。在过去20余年中,东盟国家不断在全球多变的格局里面临挑战并寻求机遇。2023东盟国家主要经济体受到国内消费、国外投资、货币政策、旅游业复苏、和大宗商品出口价企稳等方面的提振,经济显现出稳步增长态势和强韧性的潜能。 本调研报告旨在深度挖掘东南亚市场的增长潜力与发展机会,分析东南亚市场竞争态势、销售模式、客户偏好、整体市场营商环境,为国内企业出海开展业务提供客观参考意见。 本文核心内容: 市场空间:全球行业市场空间、东南亚市场发展空间。 竞争态势:全球份额,东南亚市场企业份额。 销售模式:东南亚市场销售模式、本地代理商 客户情况:东南亚本地客户及偏好分析 营商环境:东南亚营商环境分析 本文纳入的企业包括国外及印尼本土企业,以及相关上下游企业等,部分名单 QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设备及零部件、半导体材料、集成电路、制造、封测、分立器件、传感器、光电器件)、光伏产业链(设备、硅料/硅片、电池片、组件、辅料支架、逆变器、电站终端)、新能源汽车产业链(动力电池及材料、电驱电控、汽车半导体/电子、整车、充电桩)、通信产业链(通信系统设备、终端设备、电子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(控机床、工程机械、电气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。邮箱:market@qyresearch.com

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值