有谁玩过51单片机,把汇编语言转为二进制码,通过一组IO口,再用高电压烧写程序的?

有谁玩过51单片机,把汇编语言转为二进制码,通过一组IO口,在用高电压烧写程序的?分享一下经验吧

51单片机二进制数转换成十进制数一段精典小程序,谁来帮我分析一下,再下新就是搞不明白为什么!!!!

16位二进制数转换成十进制BCD码,,设R6R7的内容为16进制数,要求转换结果存入R2R3R4
程序如下:MOV 
ORG 8000H
BCDT: MOV R5,#16;设置计数值
CLR A
MOV R2,A;存放结果寄存器清0
MOV R3,A
MOV R4,A
LOOP:CLR C
MOV A,R7;取被转换二进制数乘2
RLC A
MOV R7,A
MOV A,R6
RLC A
MOV R6,A
MOV A,R4;乘2加b后经十进制调整后转换成BCD码存R2R3R4
ADDC A,R4
DA A
MOV R4,A
MOV A,R3
ADDC A,R3
DA A
MOV R3,A
MOV A,R2
ADDC A,R2
DA A
MOV R2,A
ADDC A,R2
DA A
MOV R2,A
DJNZ R5,LOOP
RET
END

就这个书本上的程序,小弟看不懂为什么,烦请为小弟讲述具体过程,原理,带实例,和图更佳,万谢!

展开

我来答



1条回答



hg200300

LV.5 推荐于 2018-04-13

不推荐把这个程序弄懂,它只是一个转换程序,知道怎么用就行了,而且在汇编中才用。
想花时间看懂的话,注意看明白 RLC A,这句语言还影响了标志C位,C位带到了下面的ADDC进位了计算。
以1101为例转化为BCD值,RLC A 是把16位2进制向高端移出一位,举例的数为0000000000001101前位全为0不管它,我们从1101开始。
1101第一位是1,1移动到C位经过ADDC A R4 运算 R4=0x01;
1101第二位是1,1移动到c 位经过ADDC A R4 运算 R4=0x03;
1101第三位是0,0移动到c 位经过ADDC A R4 运算 R4=0x06;
1101第四位是1,1移动到C位经过ADDC A R4 运算 R4=0x13;
1101 “=”13
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-04-03
这要看你这个公司平时是怎么做的?人家是怎么做的就得怎么做好了?因为每个公司的账本做法都不一样。我觉得你如果实在不怎么会做,或者是没人咨询的话,可以把所有数据都详细记录好下来,这样就没有什么问题了。希望我的回答可以帮到你。这要看你这个公司平时是怎么做的?人家是怎么做的就得怎么做好了?因为每个公司的账本做法都不一样。我觉得你如果实在不怎么会做,或者是没人咨询的话,可以把所有数据都详细记录好下来,这样就没有什么问题了。希望我的回答可以帮到你。这要看你这个公司平时是怎么做的?人家是怎么做的就得怎么做好了?因为每个公司的账本做法都不一样。我觉得你如果实在不怎么会做,或者是没这要看你这个公司平时是怎么做的?人家是怎么做的就得怎么做好了?因为每个公司的账本做法都不一样。我觉得你如果实在不怎么会做,或者是没人咨询的话,可以把所有数据都详细记录好下来,这样就没有什么问题了。希望我的回答可以帮到你。这要看你这个公司平时是怎么做的?人家是怎么做的就得怎么做好了?因为每个公司的账本做法都不一样。我觉得你如果实在不怎么会做,或者是没人咨询的话,可以把所有数据都详细记录好下来,这样就没有什么问题了。希望我的回答可以帮到你。这要看你这个公司平时是怎么做的?人家是怎么做的就得怎么做好了?因为每个公司的账本做法都不一样。我觉得你如果实在不怎么会做,或者是没人咨询的话,可以把所有数据都详细记录好下来,这样就没有什么问题了。希望我的回答可以帮到你。咨询的话,可以把所有数据都详细记录好下来,这样就没有什么问题了。希望我的回答可以帮到你。
第2个回答  2019-04-04
也就是说将汇编语言程序编绎生成可执行二进制文件,这要用到汇编编绎软件,很多,keil,franklin,asm等都可以。之后需要用到一个专用设备,编程器,一般通过并口和电脑连接,这个设备可以高压烧录二进制文件到单片机,所谓高压一般是12伏。
第3个回答  2019-04-04
没太看懂你的意思呢,我想是不是将汇编语言源程序,编绎生成二进制执行文件,也就是bin文件,通过编程器烧录到单片机里面?这个过程是十多年前搞单片机开发的必然过程,那isp,iap单片机较少,需要用到编程器这个载体烧录程序。本回答被网友采纳
第4个回答  2019-04-03
这要看你这个公司平时是怎么做的?人家是怎么做的就得怎么做好了?因为每个公司的账本做法都不一样。我觉得你如果实在不怎么会做,或者是没人咨询的话,可以把所有数据都详细记录好下来,这样就没有什么问题了。希望我的回答可以帮到你。