历史上的今天
今天是:2025年01月27日(星期一)
2018年01月27日 | 二进制数转换为BCD码(义隆单片机)
2018-01-27 来源:eefocus
本例为单字节二进制数(0X20)转换为非压缩BCD 码,存在0X25,0X24,0X23 中,0X25 为百位,0X23 为个位。
main: MOV a,@0xa4 ;赋值
MOV 0x20,a
MOV 0x21,a
MOV 0x22,a
MOV a,@0x0 ;0x23,0x24,0x25 单元清0
MOV 0x23,a
MOV 0x24,a
MOV 0x25,a
MOV a,@0x64 ;对100 的个数计数
MOV 0x26,a
MOV a,@0x25 ;百位存在0x25 中
MOV 0x04,a
call a0 ;调计数子程
MOV a,@0x0a ;对10 的个数计数
MOV 0x26,a
dec 0x04 ;个位存在0x24 中
call a0
MOV a,0x22 ;除去百位,十位,余下的即个位,存入0x23
MOV 0x23,a
self: jmp self
a0: ;计数子程
MOV a,0x26
sub 0x22,a
jbs 0x03,2
jmp a1
inc 0x00 ;无余数则对应位加1
MOV a,@0x0 ;0x21 与0x22 在返回时应保持相同
MOV 0x21,a
ret
a1: jbs 0x03,0 ;小于则跳a2
jmp a2
inc 0x00 ;大于则计数值加1
MOV a,0x22
MOV 0x21,a ;将0x22 保存到0x21 中
jmp a0 ;跳回a0 继续计数
a2: MOV a,0x21 ;0x21 中保存的减之前的数据,此时恢复到0x22
MOV 0x22,a
ret
eop
史海拾趣
|
tftp移植内核时总是显示CS8900 Ethernet chip not found? 我板子芯片是S3C2410,网络控制芯片是AX88796,而U-boot是用Smdk2410稍作修改得来的,我tftp移植内核时总是显示CS8900 Ethernet chip not found?我应该在U-boot里面如何修改相应的设置?… 查看全部问答> |
|
STM8,OPTON-〉OPTOFF,怎样保护特殊参数不被擦除? 如题: 请各位大虾指点下,对于STM8 单片机,对于OPT选项字节,若初始时候状态为ON,若需要重新对FLASH编程时,必须先将OPT设置为OFF解除保护,此时,单片机的FLASH和EEPROM全被擦除。现在的问题是:在开启读出保 ...… 查看全部问答> |
|
Journal of Electromagnetic Analysis and Applications (Vol.03 No.06, Jun. 2011) Journal of Electromagnetic Analysis and Applications ISSN: 1942-0730 (Print) 1942-0749 (Online).JEMAA free online access: www.scirp.org/journal/jemaa. Table of Contents(Vol.03 No.06, Jun. 2011): SF6 Byproducts in High-Humidity E ...… 查看全部问答> |
|
最近在用FPGA做网络实验,试验lwip在raw模式下的性能, s3e 500的板子,mb核+xilkernel4.0+lwip130,已经调通,ping功能,tcp和udp收发数据正常, ping开发板的平均延时在4ms左右(偶尔会超时)……跑上系统基本没任何实用价值了。 在ra ...… 查看全部问答> |




