《单片机应用技术》常用程序全套代码.doc

《单片机应用技术》常用程序全套代码.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
入口条件:待转换的ASCII码(30H~39H或41H~46H)在A中。 出口信息:转换后的十六进制数(00H~0FH)仍在累加器A中。 影响资源:PSW、A 堆栈需求:2字节 ASCH:CLR C SUBB A,#30H JNB ACC.4,ASH1 SUBB A,#7 ASH1:RET 入口条件:待转换的单字节BCD码数在累加器A中。 出口信息:转换后的单字节十六进制小数仍在累加器A中。 影响资源:PSW、A、R2、R3 堆栈需求:字节 BHD:MOV R2,#8 ;准备计算一个字节小数 BHD0: ADD A,ACC ;按十进制倍增 DA A XCH A,R3 RLC A ;将进位标志移入结果中 XCH A,R3 DJNZ R2,BHD0 ;共计算8bit小数 ADD A,#0B0H ;剩余部分达到0.50否? JNC BHD1 ;四舍 INC R3 ;五入 BHD1:MOV A,R3 ;取结果 RET (20)标号:BCDH 功能:单字节BCD码整数转换成单字节十六进制整数 入口条件:待转换的单字节BCD码整数在累加器A中。 出口信息:转换后的单字节十六进制整数仍在累加器A中。 影响资源:PSW、A、B、R4 堆栈需求: 2字节 BCDH: MOV B,#10H ;分离十位和个位 DIV AB MOV R4,B ;暂存个位 MOV B,#10 ;将十位转换成十六进制 MUL AB ADD A,R4 ;按十六进制加上个位 RET 入口条件:待转换的单字节十六进制数在累加器A中。 出口信息:高四位的ASCII码在A中,低四位的ASCII码在B中。 影响资源:PSW、A、B 堆栈需求:4字节 HASC:MOV B,A ;暂存待转换的单字节十六进制数 LCALL HAS1 ;转换低四位 XCH A,B ;存放低四位的ASCII码 SWAP A ;准备转换高四位 HAS1:ANL A,#0FH ;将累加器的低四位转换成ASCII码 ADD A,#90H DA A ADDC A,#40H DA A RET 入口条件:待转换的单字节十六进制小数在累加器A中。 出口信息:CY=0时转换后的BCD码小数仍在A中。CY=1时原小数接近整数1。 影响资源:PSW、A、B 堆栈需求:2字节 HBD:MOV B,#100 ;原小数扩大一百倍 MUL AB RLC A ;余数部分四舍五入 CLR A ADDC A,B MOV B,#10 ;分离出十分位和百分位 DIV AB SWAP A ADD A,B ;拼装成单字节BCD码小数 DA A ;调整后若有进位,原小数接近整数1 RET 入口条件:待转换的单字节十六进制整数在累加器A中。 出口信息:转换后的BCD码整数(十位和个位)仍在累加器A中,百位在R3中。 影响资源:PSW、A、B、R3 堆栈需求:2字节 HBCD:MOV B,#100 ;分离出百位,存放在R3中 DIV AB MOV R3,A MOV A,#10 ;余数继续分离十位和个位 XCH A,B DIV AB SWAP A ORL A,B ;将十位和个位拼装成BCD码 RET 入口条件:字节数在R7中,被加数在[R0]中,加数在[R1]中。 出口信息:和在[R0]中,最高位进位在CY中。 影响资源:PSW、A、R2 堆栈需求:2字节 BCDA:MOV A,R7 ;取字节数至R2中 MOV R2,A ADD A,R0 ;初始化数据指针 MOV R0,A MOV A,R2 ADD A,R1 MOV R1,A CLR C BCD1:DEC R0 ;调整数据指针 DEC R1 MOV A,@R0 ADDC A,@R1 ;按字节相加 DA A ;十进制调整 MOV @R0,A ;和存回[R0]中 DJNZ R2,BCD1 ;处理完所有字节 RET 入口条件:字节数在R7中,被减数在[R0]中,减数在[R1]中。 出口信息:差在[R0]中,最高位借位在

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档