- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章 MCS-51系列单片机指令系统及汇编语言程序设计;以常见的8位单片机来讲简单的说机器码就是一组电信号!这组组电信号的定义:把8个不同状态的电信号(这电信号状态不是高电平1,就是低电平0)编为一组,简称一个机器码,单片机里面有一个状态分析电路,能分析每个机器码的含义.而所谓的程序就是由好多个机器码组成.
;3.1 MCS-51单片机的寻址方式;1. 立即寻址 ;2. 直接寻址;3. 寄存器寻址;4. 寄存器间接寻址;5. 变址寻址;6. 相对寻址;7. 位寻址;3.2 分类指令;1.数据传送类指令(共29条) ;以直接地址为目的操作数的指令(5条)
MOV ?dir,dir
MOV ?dir,#data
MOV ?dir,A
MOV ?dir,Rn
MOV ?dir,@Ri
例:R0=50H,(50H)=10H,指令MOV 35H,@R0执行后,(35H)=10H。
以间接地址为目的操作数的指令(3条)
MOV ?@Ri,dir
MOV ?@Ri,#data
MOV ?@Ri,A
查表指令(2条)
MOVC ?A,@A+DPTR
MOVC ?A,@A+PC
例:A=20H,DPTR=2000H,指令MOVC ?A,@A+DPTR执行后,程序存储器2020H单元中的内容送入A。 ;累加器A与片外数据存储器RAM传送指令(4条)
MOVX ?@DPTR,A
MOVX ?A,@DPTR?
MOVX ?A,,@Ri?????
MOVX ?@Ri,A
例:DPTR=2000H,外部RAM中(2000H)=18H,指令MOVX ?A,@DPTR执行后,A=18H。
例:P2=10H,R1=50H,A=64H,指令MOVX ?@R1,A执行后,外部RAM中(1050H)=64H。
堆栈操作类指令(2条)
PUSH ?dir?
POP ?dir
例:SP=07H,(35H)=55H,指令PUSH 35H执行后,55H送入08H地址单元,SP=08H。;交换指令(5条)
XCH ?A,Rn?
XCH ?A,@Ri
XCH ? A,dir
XCHD ?A,@Ri
SWAP ?A
例:A=80H,R0=32H,(32H)=FFH,指令XCHD ?A,@R0执行后,A=8FH,(32H)=F0H。
16位数据传送指令(1条)
MOV ?DPTR,#data16?
;2.算术操作类指令(共24条) ;乘法指令(1条)
MUL ?A, B
例:A=50H,B=A0H,指令MUL ?A, B执行后,A=00H,B=32H
除法指令(1条)
? DIV ?A, B
例:A=28H,B=12H,指令DIV ?A, B执行后,A=02H,B=04H
加1指令(5条)
INC ?A??????????
INC ?dir???????
INC ?@Ri???????
INC ?Rn?????????
INC ?DPTR?????;减1指令(4条)
DEC ?A?????????
DEC ?dir??????
DEC ?@Ri??????
DEC ?Rn????? ?
十进制调整指令(1条)
DA ?A ;把A中按二进制相加后的结果调整成按BCD数相加的结果 ;3.逻辑操作类指令(共24条) ;“异或”操作指令(6条)
XRL ?A,dir???? ????
XRL ?A,#data???
XRL ?A,Rn?????
XRL ?A,@Ri????
XRL ?dir,A????
XRL ?dir,#data??
例:R0=23H,(23H)=32H,A=53H,指令XRL ?A,@R0执行后,A=61H
求反指令(1条)CPL ?A? ?;累加器A中的内容按位取反
清零指令(1条)CLR ?A????;0→A,累加器A中的内容清零
循环移位指令(4条)?RL ?A ???? ;累加器A中的内容左移一位?RR ?A ????;累加器A中的内容右移一位?RLC ?A ??;累加器A中的内容连同进位位C左移一位?RRC ?A ?;累加器A中的内容连同进位位C右移一位例:A=16H,指令RR ?A执行后,A=0BH。 ;4.控制转移类指令 (共17条);表3.4 程序存储器空间中的32个基本2K地址范围;长调
原创力文档


文档评论(0)