- 1、本文档共62页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《单片机原理及应用》 第三章 MCS-51指令系统 2)中断返回指令 RETI ;PCH? SP ,SP?SP-1, ;PCL? SP ,SP?SP-1 RETI指令从堆栈弹出保存的PC地址,实现中断子程序返回。还清除内部相应中断状态寄存器。 四.空操作指令 NOP ; PC?PC+1 调整CPU的时间,做一个机器周期的延时,不影响任何状态。 第三章 MCS-51指令系统 指令系统总结 1、“MOV”:源操作数和目的操作数都在片内RAM中; “MOVX”:实现外部RAM与内部累加器A的数据传送; “MOVC”:两条专用查表指令,外部ROM与A之间的数据传送。 2、@Ri中I的范围是0和1。 Rn中的n的范围是0~7。 每条指令中只能有1个Rn或@Ri。 如: MOV R1,@R0 × MOV A, @R2 × 3、以累加器A为目的寄存器的传送指令会影响PSW中的奇偶 标志位,其余传送指令对所有标志位均无影响。 第三章 MCS-51指令系统 与数据传送指令不同,多数算术运算指令会影响标志位的状态,即CPU执行算术运算指令后,根据数据操作情况自动设置标志位的状态。 状态标志 MCS-51 的程序状态字寄存器 PSW 为标志寄存器。 其格式如下: 3-5 算术运算指令 Cy AC F0 RS1 RS0 OV — P 第三章 MCS-51指令系统 1.标志位 自动设置状态 1)Cy:进位标志位 保存运算后最高位的进位/借位状态,当有进位/借位,Cy 1,否则Cy 0。 2)AC:辅助进位标志位 保存低半字节的进位/借位状态,当D3产生进位/借位,AC 1,否则AC 0。用于十进制调整。 3)OV:溢出标志位 OV Cy7?Cy6,补码运算产生溢出OV 1,否则OV 0。 4)P:奇偶标志位 反映累加器A中数据的奇偶性。当1的个数为奇数,P 1,否则P 0。 第三章 MCS-51指令系统 2.用户选择位 编程设置状态 1)F0:用户自定义标志位。2)RS1、RS0: 工作寄存器区选择位。复位时,PSW 00H 例:复位后,设置使用工作寄存 器3区,其余标志位不变。 RS1 RS0 工作寄存区 0 0 0区 0 1 1区 1 0 2区 1 1 3区 Cy AC F0 RS1 RS0 OV — P 第三章 MCS-51指令系统 3-5-1 加减指令完成片内 RAM 和 A 中数据的加减乘除运算。 1.加法指令 1)不带进位加法:ADD A,源操作数 ADD A,Rn ADD A,direct ADD A,@Ri ADD A,#data 影响Cy、OV、AC、P 第三章 MCS-51指令系统 例:A 3BH,PSW 0,执行指令 ADD A,#3BH 求:A 76H ,Cy 0 ,OV 0 ,AC 1 ,P 1 , PSW 41H 0011 1011 + 0011 1011 0111 0110 Cy AC F0 RS1 RS0 OV — P 第三章 MCS-51指令系统 2)带进位加法: ADDC A,源操作数 ADDC A,Rn ADDC A,direct ADDC A,@Ri ADDC A,#data 影响Cy、OV、AC、P 例:A 9AH,R2 E3H,PSW 0,执行指令 ADDC A,R2 后求: A 7DH ,Cy 1 ,OV 1,AC 0,P 0, PSW 84H 1001 1010 1110 0011 + 0 1 0111 1101 Cy AC F0 RS1 RS0 OV — P 第三章 MCS-51指令系统 带进位加法指令ADDC用于多字节运算 例:设双字节数 X 存在片内RAM 41H、40H单元,Y存在42H、43H单元,编程求 Z X+Y,并存入片内RAM单元44H、45H、46H。 ADDS:CLR C MOV A,40H ADD A,42H MOV 44H,A MOV A,41H ADDC A,43H MOV 45H,A MOV A,#0 ADDC A,#0 MOV 46H,A RET ;取被加数低字节 ;加上加数低字节 ;保存和的低字节 ;取被加数高字节 ;加上加数高字节 ;保存和的高字节 ;求高字节进位 ;子程序结束 第三章 MCS-51指令系统 3)BCD调整指令: DA A ; 对 A 中加法结
文档评论(0)