高几位在一字节的算法

[复制链接]
876|7
 楼主| chuxh 发表于 2015-1-8 20:58 | 显示全部楼层 |阅读模式
这10位二进制数可以使高8位在一字节,或者高2位在一字节.谁有好的算法. 用汇编.
juventus9554 发表于 2015-1-8 20:58 | 显示全部楼层
输入  r7: b9 b8 b7 b6 b5 b4 b3 b2
          r6: b1 b0  0   0   0   0   0   0
输出  r7:  千位  百位
       r6:  十位  个位
;=======================
         mov a,r7
         mov b,#25
         div ab
         add a,#0
         da  a
         mov r7,a
         mov a,#10
         xch a,b
         orl a,r6
         rl  a
         rl  a
         div ab
         swap a
         orl a,b
         mov r6,a
司徒老鹰 发表于 2015-1-8 20:59 | 显示全部楼层
错???      
        mov a,r7
         mov b,#25
         div ab
         add a,#0
         da  a
         mov r7,a
         mov a,b
         orl   a,r6
         rl  a
         rl  a
         add a, #0
         da  a
         mov r6,a
llljh 发表于 2015-1-8 21:00 | 显示全部楼层
对与错验证一下便知了。比如说输入16,(r7r6 = 00000100  00xxxxxx)
3 楼输出:r7r6 = 0016 h(bcd)
4 楼输出:r7r6 = 0010 h(???)
司徒老鹰 发表于 2015-1-8 21:01 | 显示全部楼层
恩,打错了
         mov a,r7
         mov b,#25
         div ab
         add a,#0
         da  a
         mov r7,a
         mov a,b
         orl   a,r6
         add a,acc
         add a,acc
         da  a
         mov r6,a
llljh 发表于 2015-1-8 21:01 | 显示全部楼层
R7=37,R6=0时试了一下,3楼对,5楼错
 楼主| chuxh 发表于 2015-1-8 21:02 | 显示全部楼层
多谢大家,明白了
 楼主| chuxh 发表于 2015-1-8 21:02 | 显示全部楼层
结贴了啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

936

主题

11296

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部