




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、8051指令周期表类别指令格式功能简述字节数机器周期数据传送类指令期MOV A, RnRnA Rn中的内容送到累加器A中,Rn=R0-R711MOV Rn,AARn 累加器A中的内容送到存放器Rn中。11MOV A, RiRiA Ri内容指向的地址单元中的内容送到累加器A,Ri=R0或R111MOV Ri, AARi 累加器A中的内容送到以Ri中的内容为地址的RAM单元。11MOV A, #data#dataA 立即数送到累加器A中。21MOV A, datadataA 直接单元地址中的内容送到累加器A21MOV data, A(A) data
2、累加器A中的内容送直接单元地址。21MOV Rn,#data#dataRn立即数直接送到存放器Rn中。21MOV data, #data#datadata立即数送直接寻址单元 。32MOV Ri, #data#dataRi立即数送到以Ri中的内容为地址的RAM单元。21MOV data, RnRndata存放器中的内容送直接寻址单元 。22MOV Rn, datadataRn直接寻址单元中的内容送存放器 。22MOV data, RiRidata内部RAM单元送直接寻址单元 。22MOV Ri, datadataRi直接寻址单元送内部RAM单元 。22MOV da
3、ta2,data1data1data2直接寻址单元中的内容送直接寻址单元 。32MOV DPTR, #data16#dataHDPH,#dataLDPL16位常数的高8位送到DPH,低8位送到DPL32MOVX A, RiRiA 存放器Ri指向片外RAM地址中的内容送到累加器A中。12MOVX Ri, AARi 累加器中的内容送到存放器Ri指向片外RAM地址中。12MOVX A, DPTRDPTRA 数据指针指向片外RAM地址中的内容送到累加器A中。12MOVX DPTR, AADPTR 累加器中的内容送到数据指针指向片外RAM地址中。12MOVC A,
4、 A+DPTRA+DPTRA 表格地址单元中的内容送到累加器A中。12MOVC A, A+PCPC+1A,A+PCA 表格地址单元中的内容送到累加器A中。12算术运算类指令XCH A, RnARn累加器与工作存放器Rn中的内容互换。11XCH A, RiARi累加器与工作存放器Ri所指的存储单元中的内容互换。11XCHD A, datadataA累加器A的内容与直接寻址单元的内容交换 。21XCHD A, RiA3-0Ri3-0累加器与工作存放器Ri所指的存储单元中的内容低半字节互换。11SWAP AA3-0A7-4累加器中的内容上下半字节互换。11PO
5、P dataSPdataSP-1SP, 堆栈指针SP所指的单元数据送到直接寻址单元中,堆栈指针SP再进行减1操作22PUSH dataSP+1SP,dataSP 堆栈指针首先加1,直接寻址单元中的数据送到堆栈指针SP所指的单元中22ADD A, RnA+RnA 累加器A中的内容与工作存放器Rn中的内容相加,结果存在A中。11ADD A, RiA+RiA 累加器A中的内容与工作存放器Ri所指向地址单元中的内容相加,结果存在A中。11ADD A, dataA+dataA 累加器A中的内容与直接地址单元中的内容相加,结果存在A中。21ADD A, #dataA+#dataA 累加器A中的内
6、容与立即数#data相加,结果存在A中。21ADDC A, RnA+Rn+CA 累加器A中的内容与工作存放器Rn中的内容、连同进位位相加,结果存在A中。11ADDC A, RiA+Ri+CA 累加器A中的内容与工作存放器Ri指向地址单元中的内容、连同进位位相加,结果存在A中。11ADDC A, #dataA+#data +CA 累加器A中的内容与立即数连同进位位相加,结果存在A中。21ADDC A, dataA+data+CA 累加器A中的内容与直接地址单元的内容连同进位位相加,结果存在A中。21INC AA+1A 累加器A中的内容加1,结果存在A中。11INC RnRn+1Rn存放
7、器Rn的内容加1,结果送回原地址单元中。11INC datadata+1data 直接地址单元中的内容加1,结果送回原地址单元中。21INC RiRi+1Ri 存放器的内容指向的地址单元中的内容加1,结果送回原地址单元中。11INC DPTRDPTR+1DPTR数据指针的内容加1,结果送回数据指针中。12DA A在进行BCD码运算时,这条指令总是跟在ADD或ADDC指令之后,其功能是将执行加法运算后存于累加器A中的结果进行调整和修正。11SUBB A, RnA-Rn -CA 累加器A中的内容与工作存放器中的内容、连同借位位相减,结果存在A中。11SUBB A, R
8、iA-Ri -CA 累加器A中的内容与工作存放器Ri指向的地址单元中的内容、连同借位位相减,结果存在A中。11SUBB A, #dataA-#data -CA 累加器A中的内容与立即数、连同借位位相减,结果存在A中。21SUBB A, dataA-data - CA 累加器A中的内容与直接地址单元中的内容、连同借位位相减,结果存在A中。21DEC AA-1A累加器A中的内容减1,结果送回累加器A中。11DEC RnRn-1Rn存放器Rn中的内容减1,结果送回存放器Rn中。11DEC RiRi-1Ri存放器Ri指向的地址单元中的内容减1,结果送回原地址单元
9、中。11DEC datadata-1data直接地址单元中的内容减1,结果送回直接地址单元中。21MUL ABA×BA和B 累加器A中的内容与存放器B中的内容相乘,结果存在A、B中。14DIV ABA÷BA和B 累加器A中的内容除以存放器B中的内容,所得到的商存在累加器A,而余数存在存放器B中。14逻辑运算类指令ANL A, Rn累加器A的内容和存放器Rn中的内容执行与逻辑操作。结果存在累加器A中。11ANL A, Ri累加器A的内容和工作存放器Ri指向的地址单元中的内容执行与逻辑操作。结果存在累加器A中。11ANL A, #data累加器A的内容和立即数执行与逻
10、辑操作。结果存在累加器A中。21ANL A, data累加器A中的内容和直接地址单元中的内容执行与逻辑操作。结果存在存放器A中。21ANL data, A直接地址单元中的内容和累加器A的内容执行与逻辑操作。结果存在直接地址单元中。21ANL data, #data直接地址单元中的内容和立即数执行与逻辑操作。结果存在直接地址单元中。31ORL A, Rn累加器A的内容和存放器Rn中的内容执行逻辑或操作。结果存在累加器A中。11ORL A,Ri累加器A的内容和工作存放器Ri指向的地址单元中的内容执行逻辑或操作。结果存在累加器A中。11ORL A,#data累加器A的内容和立即数执行逻辑或操作。结果
11、存在累加器A中。21ORL A,data累加器A中的内容和直接地址单元中的内容执行逻辑或操作。结果存在存放器A中。21ORL data A直接地址单元中的内容和累加器A的内容执行逻辑或操作。结果存在直接地址单元中。21ORL data, #data直接地址单元中的内容和立即数执行逻辑或操作。结果存在直接地址单元中。31XRL A, Rn累加器A的内容和存放器Rn中的内容执行逻辑异或操作。结果存在累加器A中。11XRL A,Ri累加器A的内容和工作存放器Ri指向的地址单元中的内容执行逻辑异或操作。结果存在累加器A中。11XRL A,#data累加器A的内容和立即数执行逻辑异或操作。结果存在累加器
12、A中。21XRL A,data累加器A中的内容和直接地址单元中的内容执行逻辑异或操作。结果存在存放器A中。21XRL data, A直接地址单元中的内容和累加器A的内容执行逻辑异或操作。结果存在直接地址单元中。21XRL data, #data直接地址单元中的内容和立即数执行逻辑异或操作。结果存在直接地址单元中。32RL A累加器A中的内容左移一位。11RLC A累加器A中的内容连同进位位CY左移一位。11RR A累加器A中的内容右移一位。11RRC A累加器A中的内容连同进位位CY右移一位。11CPL A累加器中的内容按位取反。11CLR A0A,累加器中的内容清0。11控制转移类指令ACC
13、ALL addr11绝对调用指令,可在2kB空间调用子程序,此时PC+ 2PC,SP+ 1SP,PC7-0SP,SP+ 1SP,PC15-8SP,addr11PC10-022AJMP addr11PC+2PC,addr11PC10-0程序计数器赋予新值11位地址,PC15-11不改变。22LCALL addr16长调用指令,可在64kB空间调用子程序。此时PC+ 3PC,SP+ 1SP,PC7-0SP,SP+ 1SP,PC15-8SP,addr16PC,即分别从堆栈中弹出调用子程序时压入的返回地址。32LJMP addr16addr16PC,给程序计数器赋予新值16位地址。32SJMP rel
14、PC+ 2 + relPC当前程序计数器先加上2再加上偏移量给程序计数器赋予新值。22JMP A+DPTRA+ DPTRPC,累加器所指向地址单元的值加上数据指针的值给程序计数器赋予新值。12RET子程序返回指令。此时SPPC15-8,SP- 1SP,SPPC7-0,SP- 1SP12RET1中断返回指令,除具有RET功能外,还具有恢复中断逻辑的功能,需注意的是,RETI指令不能用RET代替。12JZ relA=0,PC+ 2 + relPC,累加器中的内容为0,那么转移到偏移量所指向的地址,否那么程序往下执行。22JNZ relA0,PC+ 2 + relPC,累加器中的
15、内容不为0,那么转移到偏移量所指向的地址,否那么程序往下执行。22CJNE A, #data, relA#data,PC+ 3 + relPC,累加器中的内容不等于立即数,那么转移到偏移量所指向的地址,否那么程序往下执行。32CJNE A, data, relAdata,PC+ 3 + relPC,累加器中的内容不等于直接地址单元的内容,那么转移到偏移量所指向的地址,否那么程序往下执行32CJNE Rn,#data, relA#data,PC+ 3 + relPC,工作存放器Rn中的内容不等于立即数,那么转移到偏移量所指向的地址,否那么程序往下执行。32CJNE Ri, #data,
16、 relA#data,PC+ 3 + relPC,工作存放器Ri指向地址单元中的内容不等于立即数,那么转移到偏移量所指向的地址,否那么程序往下执行。32DJNZ Rn, relRn-1Rn),Rn)0,PC+ 2 + relPC工作存放器Rn减1不等于0,那么转移到偏移量所指向的地址,否那么程序往下执行22DJNZ data, relRn-1Rn),Rn)0,PC+ 2 + relPC直接地址单元中的内容减1不等于0,那么转移到偏移量所指向的地址,否那么程序往下执行。32布尔操作类指令NOP这条指令除了使PC加1,消耗一个机器周期外,没有执行任何操作。可用于短时间的延时。11MOV C, bi
17、tbitCY,某位数据送CY。21MOV bit, CCYbit,CY数据送某位。21CLR C0CY,清CY11CLR bit0bit,清某一位。21CPL CCY11CPL bitbit21SETB C1CY,置位CY11SETB bit1bit,置位某一位21ANL C, bit(CY)(bit)CY22ANL C, /bitCY() CY22ORL C, bitCY(bit) CY22ORL C, /bitCY() CY22JC rel(CY)=1转移,PC+2+relPC,否那么程序往下执行,PC+2PC。22JNC rel(CY)=0转移,PC+2+r
18、elPC,否那么程序往下执行,PC+2PC。22JB bit,rel位状态为1转移,PC+3+relPC,否那么程序往下执行,PC+3PC。32JNB bit,rel位状态为0转移,PC+3+relPC,否那么程序往下执行,PC+3PC。32JBC bit,rel位状态为1转移,并使该位清“0 ,PC+3+relPC,否那么程序往下执行,PC+3PC。32 C51汇编伪指令:1、DS 预留存储区命令格式: 标号: DS 表达式值其功能是从指定地址开始,定义一个存储区,以备源程序使用。存储区预留的存储单元数由表达式的值决
19、定。TMP: DS 1从标号TEP地址处开始保存1个存储单元字节。2、BIT定义位命令格式: 字符名称 BIT 位地址其功能用于给字符名称定义位地址。SPK BIT P3.7经定义后,允许在指令中用SPK代替P3.7。3、USING指令USING指令通知汇编器使用8051的哪一个工作存放器组。格式: USING 表达式 值必须为03,默认值为0。USING 0使用第0组工作存放器。4、SEGMENT指令SEGMENT
20、指令用来声明一个再定位段和一个可选的再定位类型。格式: 再定位段名 SEGMENT 段类型再定位类型其中,“再定位段名用于指明所声明的段。“段类型用于指定所声明的段将处的存储器地址空间。可用的段类型有 CODE、XDATA、DATA、IDATA和BIT。STACK_SEG SEGMENT IDATADATA_SEG SEGMENT DATA 5、RSEG再定位段选择指令再定位段选择指令为RSEG,用于选择一个已在前面定义过的再定位段作为当前段。格式: RSEG 段名段名必须是在前面已经声明过的再定位段。DATA_SEG SE
21、GMENT DATA ;声明一个再定位DATA段RSEG DATA_SEG ;选择前面声明的再定位DATA段作为当前段6、绝对段选择指令 CSEG绝对代码段 DSEG内部绝对数据段 XSEG外部绝对数据段 ISEG内部间接寻址数据段 BSEG绝对位寻址数据段 格式: CSEG AT 绝对地址表达式 DSEG AT 绝对地址表达式 XSEG AT 绝对地址表达式 ISEG AT 绝对地址表达式 BSEG AT 绝对地址表达式 括号内是可选项,用来指定当前绝对段的基地址。CSEG AT 0000HAJMP MAIN7、ORG指令ORG指令用来改变汇编器的计数器,从而设定一个新的程序起始地址。格式: ORG 表达式表达式必须是绝对或简单再定位表达式。ORG 0000HAJMP MAIN设定 MAIN 程序的起始地址为 0000H。8、END指令END指令用来控制汇编结束。在每个汇编程序的最后一行必须有一条END指令,并且END指令只能出现一次。9、EQ
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 网络安全领域威胁检测与防御策略制定
- 2024年大豆新品种项目资金申请报告代可行性研究报告
- 2019-2025年军队文职人员招聘之军队文职政治学考前冲刺模拟试卷B卷含答案
- 《医学影像处理与分析综述》课件
- 获取高分的工程项目管理考试分享及试题及答案
- 物业管理条例实施细则新修订
- 2025年河北秦皇岛工业职业技术学院招聘考试笔试试题含答案
- 2025年项目管理人员年度安全培训考试试题附答案(B卷)
- 2024-2025企业员工安全培训考试试题及答案【真题汇编】
- 2025公司项目部管理人员安全培训考试试题附答案可下载
- 2022年中国热带农业科学院分析测试中心高层次人才及博士招聘笔试备考题库及答案解析
- 闪存存储技术应对大数据挑战
- 科普项目申报书-中国科协
- 食蚜蝇课件完整版
- 主题班会《中国梦我的梦》课件
- 义务教育数学新课程标准选择题题库测试卷精选450题(2022版)含答案
- 古诗词诵读《客至》-统编版高中语文选择性必修下册
- 建筑材料分类整理
- YY/T 0801.2-2010医用气体管道系统终端第2部分:用于麻醉气体净化系统的终端
- GB/T 31349-2014节能量测量和验证技术要求中央空调系统
- 武汉大学管理学全套课件龚丽敏老师版
评论
0/150
提交评论