版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第三,命令和计程仪编程,本话的重点:寻址MCS-51命令定径套伪命令汇编语言和简单的计程仪编程,第三部分命令系统和计程仪编程,51系列单片微型计算机命令定径套包含111命令,各命令执行时用一定的时间,以机械周期为单位。 按指令执行时间分类:单周期(64条) 2周期(45条) 4周期(2条)按指令的功能分类,可以分为5个类别:数据传送类(29条)算术运算类(24条)的逻辑运算和移位类(24条)迁移类(17条)的二进制位操作类(17条) 按指令所占的字节数:单字节(49条)、双字节(46字节)、3字节(16条)、ASM-51指令的格式P46、方括弧中可选标签条表示有指令的地址,表示18字符/数字,
2、“:”末尾的操作码表示指令的开头、符号:操作码的指令、源指令注释、51单片微型计算机指令的地址方式P48、暂存器地址即时地址暂存器间地址直接地址目录索引方式(基础地址暂存器索引寄存器间地址方式)地址方式, 寻址方式:每个地址获得命令的方式7种寻址方式(A) (B) MOV 30H、R0。 (30 h ) (r0)火箭、火箭。 (A) (R1)、即时地址指令直接出现在命令中的例子: MOV A、#64H; (a )即时数64H ADD A、#05H; (A)(A )即时数05H注意:符号“#”表示紧随其后的是即时数,即时数表示数字量本身。 暂存器间地址暂存器的内容是地址,从该地址针织面料中地址必
3、要的指令。 注:1)“间接”表示某个暂存器的“内容”是“针织面料地址”,表示存储在此地址针织面料中的数据是要查找的“命令”。 2 )符号“”表示“在”,其意思和读音都是“at”。 例如MOV R1、#30H; (R1)即时数30H、MOV R1、#30H; 即时数30H MOV R1,#0FH; (30H )即时数0FH MOV A、R1; (A)(30H)=#0FH,直接寻址指令中存在命令的用户针织面料的地址或名称例: mov R1,1fh; (R1) (1FH) MOV 30H、4AH。 (30H)(4AH )在本单片微型计算机中,规定了网站数据库特殊功能信号发送器SFR时只能采用直接地址
4、方式。 例如: MOV A、SP; 接口,接口,接口,接口。 (P1)(#5AH) MOV 90H、#5AH (P1)(#5AH) MOV B、30H。 (B) (30H )、SFR的地址参照P.39表2-6,相同,在本单片微型计算机中网站数据库特殊功能暂存器SFR只能采用直接寻址方式的原因: SFR分布在80H0FFH的范围内,52系列单片微型计算机具有256字节的片上RAM,mov 事先已知的(R0)=#90H执行的操作: A (90H )是暂存器间地址,随意写的命令,例如: MOV A,85H是违法的! 另外,80H0FFH范围内的RAM规定只能使用暂存器间寻址方式,SFR规定只能使用直
5、接寻址方式。 解决了地址冲突的问题。例如,存储器配置(片上RAM )、89C51片上RAM 128字节(00H0FFH )、89C51片上RAM 256字节(00H0FFH )、00H、20H、2FH SFR可以是80H-FFH中的92个二进制位的可寻址、80H、80H 分布于89C52 256字节,只能进行直接地址,只能进行暂存器间地址,将指令中规定的片偏移rel与当前地址的PC值相加,构成实际操作的2 )符号“rel”表示“片偏移量”,是一个带符号的单字节数, 范围是:-128 127(80H7FH ),在实际的计程仪编程中,“rel”由普通符号替换,目录索引地址也称为333334,例如:
6、设定: a中已经存在#A4H,DPTR中存在#1234H MOVC A、A DPTR (A)(A) (DPTR ) )操作:将A4H 1234H=12D8H用户针织面料中的数值输入加法器a,直接给予二进制位寻址指令中存在歌舞剧的二进制位地址。 例如CLR P1.0; (p1.0) 0套ACC.7。 (ACC.7) 1 CPL C (C ) NOT(C ),注意:1)对于二进制位地址中的数据,一个0或1 2 )给定的二进制位地址对一盏茶是明确的,并且给定的二进制位地址,例如P1.0、ACC.7等,“不太明确”,例如MOV A (A)(17H ),等等(ACC.0)(17H ),其中ACC.0是二
7、进制位地址,因此,该命令中的17H是22H用户针织面料的第七二进制位,芯片上RAM中的128二进制位是能够通过二进制位地址进行寻址的二进制位,二进制位地址: 00H7FH分布在20H2FH用户针织面料上, 在SFR中,92个二进制位可以以二进制位为单位进行寻址,有、00H、20H、2FH、7FH、1FH、30H、80H、FFH、52个子系列才有的RAM区域、通常RAM区域,有07 06 05 04 03 02 01 00、 0F 0E 0D 0C 0B 0A 09 08,可以选择,可以选择,可以选择,可以选择,可以选择,可以选择,可以选择,可以选择,可以选择,可以选择,可以选择,可以选择。 2
8、F 2E 2D 2C 2B 2A 29 28,373634323130,3 f3e3d3c3b 39 38 f7e7c7b7a 79 78,373634323130,3 f3e3d3c3b 38 f7d7c7a 78,电子地址, 可通过二进制位地址指定地址的二进制位,针织面料地址,17,D7 D6 D5 D4 D3 D2 D1 D0,MCS-51指令定径套, 功能数据传送系统指令: (29条)算术运算系统指令: (24条)逻辑运算及移位系统指令: (24条)控制转移系统指令: (17条)二进制位操作(布尔操作)系统指令: (17条)、内部存储器间传送: (MOV16条)外部数据存储器和累加器间
9、传送3333 从程序存储器向存储器传送: (MOVC2条)数据交换: (XCH,XCHD,SWAP5条)栈内存操作: (推ACC存储器,Direct直接地址,Ri间接地址,Rn暂存器,#data即时数,Rn: R0R7 Ri: R0 R1 #data:8二进制位立即参数示例:MOV A、30H (A)(30H )、数据传输系统命令(接着)、外部数据存储器与累加器之间的传输(四个): MOVX系统命令允许在累加器与以DPTR或Ri表示的外部RAM之间进行数据传输例如, MOVX A、dptr (a )、movx a、ri (a )、movx dptr、a(dptr )等等。 A DPTR MOV
10、C A、A PC一般被称为显示查找表命令,地址方式是指:“基本地址暂存器目录索引暂存器间地址”、数据传输类命令(续),A DPTR或A PC是指程序存储器中的某个用户针织面料。 转发给累加器ACC的数据是预先写入到计程仪程序中的表格数据。 这些个的表数据通常在伪指令DB、DW等中在计程仪项目中定义。 例题请参照例5.5、数据传输类指令(续)、数据交换指令(5条) : XCH A、direct (字节交换) XCH A、Ri (字节交换) XCH A、Rn (字节交换) Ri累加器Acc的下位4二进制位和(Ri ) ) 各自的上位4二进制位不变,SWAP A累加器Acc的下位4二进制位与自身的上
11、位4二进制位交换,栈内存操作指令(2条) :PUSH栈内存指令、POP栈内存指令、栈内存区域通常不配置在工作寄存器区域和能够位地址的RAM区域, 在RAM区域之后的位置栈内存与一对常规PUSH和POP指令(其总是指向栈内存掌门人)配合使用,以知道数据传输类别的命令(继续),例如(a )=7bh (35h )=11h且(SP)60H PUSH ACC。 (61 h ) #7BH推式35 h (62 h ) (35 h )即(62H) #11H、POP ACC (a )即,(A) #11H POP 5AH。 (5AH) (61H )即,(5AH) #7BH,(2)算术运算系指令(6种/24条) P
12、55,加法: (ADD4条)附加进位加法的: (ADDC4条) DIV2条)十进制调整: (DA A1条),(2)算术运算系指令(继续),加法: (aah ) 加位加法: (ADDC4条)加位减法: (SUBB4条、加法(ADD )、加位加法(ADDC )和加位减法(SUBB )运算中,如果发生加位或减位,PSW中的Cy标志位置会自动变为“1” 进位加法(ADDC):(A)(A) (Cy ) (第二命令)进位减法(SUBB):(A)(A)-(Cy)-。 与DEC在加减运算指令中加上1/1的操作的不同点在于,INC、DEC不影响标志二进制位.单字节乘法/除法: (MUL、DIV2条)的2个单字节
13、数的乘法/除法仅在a和b之间进行。 MUL AB: (A )乘以(b ),乘积为16位,(b )乘积的前8位。 (a )积的下位8二进制位DIV AB: (A )除以(b )的结果用2字节表示,(a )商的整数部分。 (b )佘数,例题见例5.7和练习题5.9和5.10。 (2)算术运算系统指令(续) P.58,BCD查询密码是指“用二进制数字表示的十进制”。 举例来说,十进制20也可由BCD查询密码00100000B或20H表示,BCD可由二进制数字00010100B表示,也可由十六进制14H表示。 四个二进制二进制位可以表示一个二进制位的BCD查询密码: 00001001可以表示十进制(B
14、CD数) 09用八个二进制二进制位可以表示两位压缩的BCD查询密码。 0000000010011001表示0099。 十进制调整: (DA A1根)用于两个BCD查询密码之间的相加。 该命令仅在ADD或ADDC之后继续,其中如果(A)309或(AC)=1,则处理(a ) 306 (a ) 749或(CY)=1,则处理(A)74(A)746。 /把两个十进制数“65”和“58”合起来,按照常识,其和明显是“123”。 MOV A、#65H ADD A、#58H DA A结果:(A)=23H (CY)=1、da完成的操作:650110010158 (A)749或者(CY)=1的话(A)74(A)746。 另外,两个十进制数“39”和“58”合起来,根据常识,其和明显是“97”。结果:(A)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 提高肾友透析充分性的护理策略
- 福建省福州市台江区九校2025-2026学年高一下学期期中考试地理试题
- 一元一次不等式(第2课时)(教学课件)2025-2026学年人教版数学七年级下册
- 通州湾示范区绿色化工拓展区危险化学品车辆专用停车场工程监理项目招标文件
- 妊娠期肝内胆汁淤积症指南解读2026
- 第二单元综合测试卷(单元测试)2025-2026学年六年级数学下册人教版(含答案)
- 2026届黑龙江省齐齐哈尔市高考历史二模试卷含解析
- 职业病防护应急处置流程
- 2026年数据中心优化创新报告
- 2026年化工行业生物基材料开发报告
- 简阳市中小企业融资担保有限公司2026年招聘金融科技部工作人员等岗位笔试参考题库及答案解析
- 2026上海市闵行区区管国企招聘42人备考题库含答案详解(精练)
- 保洁12小时工作制度
- 输变电工程可行性研究内容深度规定(2025版)
- 2026中国疾病预防控制中心人事处招聘工作人员笔试备考试题及答案
- 2025年内蒙古鄂尔多斯市康巴什区事业单位考试题及答案解析
- 2026浙江金华市金东城市建设投资集团限公司招聘9人易考易错模拟试题(共500题)试卷后附参考答案
- 心脏外科患者伤口护理
- 2026年工业无人机焊接技术报告
- 《城市体检工作手册》(试行)下载
- 2026年国际商务单证员考试试卷及答案解析(国际贸易实务)
评论
0/150
提交评论