- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 MCS-51的指令系统和汇编语言程序设计 【主要内容】 1.掌握单片机源操作数和目的操作数的寻址方式,指令格式操作码和操作数,数据传送指令、算术运算类指令、逻辑运算及位移指令、控制转移类指令等指令系统。 2.熟悉指令描述符号,入栈和出栈操作。 3.了解十进制调整指令和空操作指令。 【重点与难点】 1.重点:指令格式和指令系统 2.难点:源操作数和目的操作数的寻址方式 P93说明请改用8位地址指针R0,编写相同功能的程序; ORG 0030H START: MOV A, #0AAH MOV P2 , #10H ;高8位地址送P2 MOV R0 , #00H ;低8位地址送R0 MOVX @R0 , A ;存数 END START * 嵌入式应用基础 * 第1条指令是把累加器A和寄存器B中两个8位无符整数相乘,并把积的低8位存放到累加器A中,高8位存放到寄存器B中,指令执行后将影响OV、CY和P标志. 若乘积大于255,即B≠0,则OV = 1,否则OV = 0;CY总为0;P标志由A中1的个数的奇偶性确定。 * 嵌入式应用基础 * DIV AB指令功能是把A和B中两个8位无符整数相除,并把商的整数部分存放到A中,余数存放到B中。 指令执行后将影响OV、CY和P标志, 对CY和P标志影响同乘法指令。当B = 0时,则OV = 1,表示除法无意义,否则OV = 0。 * 嵌入式应用基础 * 逻辑运算指令都是字节操作指令,不是以累加器A为目的寄存器的指令不影响PSW中的标志位。 3.1.5.3 逻辑运算指令 * 嵌入式应用基础 * 1、逻辑与指令 ANL A,Rn ; A∧Rn→A,n=0~7 ANL A,direct ; A∧(direct)→A ANL A,#data ; A∧#data→A ANL A,@Ri ; A∧(Ri)→A,i=0~1 功能是把累加器A中内容与源操作数所指定的内容进行按位逻辑与操作,结果存放在A中,源操作数可用表中所示的4种寻址方式。 例 A=07H,R0=0FDH,执行指令: ANL A,R0 结果:A=05H * 嵌入式应用基础 * ANL direct,A ;(direct)∧A→(direct) ANL direct,#data;(direct)∧#data→(direct) 使某些位屏蔽:与0相与; 使某些位不变:与1相与。 * 嵌入式应用基础 * 2. 逻辑或指令 前4条指令功能是把A中内容与源操作数所指定的内容进行按位逻辑或操作。 * 嵌入式应用基础 * ORL direct,A ;(direct)∨A→direct ORL direct,#data;(direct)∨#data→direct 指令是把dir指定内部RAM单元的内容与累加器内容或立即数进行按位逻辑或操作,结果存放在dir指定内部RAM单元。 使某些位置1:与1相或; 使某些位不变:与0相或。 作用:可以使信号合并。 * 嵌入式应用基础 * 例 P1=05H,A=33H,执行指令 ORL P1,A 结果:P1=37H 例 试编程,将存放在片内RAM单元31H和30H单元中的ASCII码转换为压缩BCD码,并存入30H中。 解:本例的算法是:用与指令将这两个单元的高4位屏蔽掉,得到相应的BCD码;用或指令将两个BCD码合并在一个字节中。 * 嵌入式应用基础 * ORG 0030H START:MOV 31H,#35H MOV 30H,#36H ANL 31H,#0FH ANL 30H,#0FH MOV A,31H SWAP A ORL 30H,A END START * 嵌入式应用基础 * 3. 逻辑异或指令 前4条指令功能是把A中内容与源操作数所指定的内容进行按位逻辑异或操作。 * 嵌入式应用基础 * XRL direct,A ;(direct)⊕A→direct XRL direct,#data ;(direct)⊕#data →direct 使某些位不变:与0相异或; 使某些位取反:与1相异或。 如使Pl口的最高位取反,其余位不变:XRL Pl,#80H。 例 A=90H, R3=73H 执行指令:XRL A,R3 结果:A=E3H * 嵌入式应用基础 * 两数异或,相同出0,异或指令常用来判断两数是否相等。如判A中值是否为
您可能关注的文档
最近下载
- 七上历史早背晚默小纸条.pdf VIP
- 《住院患者身体约束的护理》团体标准解读.pptx VIP
- 安装施工员工作职责内容(32篇).docx VIP
- 气凝胶隔热保温纳米涂料-气凝胶基础材料项目可行性研究报告.doc VIP
- 中心学校校园安全治本攻坚三年行动实施方案(2024-2026).pdf VIP
- 电动升降式高杆灯安装使用说明书.doc VIP
- GB50257-2014 电气装置安装工程 爆炸和火灾危险环境电气装置施工及验收规范.pdf VIP
- 【备战25年高考数学】解答题06 10类导数答题模板(原卷版) (2).docx VIP
- 《思想道德与法治》课件——专题6 遵守道德规范 锤炼道德品格.pptx VIP
- 【备战25年高考数学】解答题01 7类解三角形答题模板(解析版).docx VIP
文档评论(0)