作者ARHAN (脑脑的阿贤脑脑的^.^\~/)
看板ASM
标题[问题] 8051 10进位4位数加减乘除
时间Tue Mar 25 01:21:22 2014
这是我们的考试题目 要在8051做出计算机
键盘数入 7段显示器亮
虽然老师要求我们用timer中断 但是我们的功力还不足
所以用了原始的方法
先附上我的程式码:
http://1drv.ms/1fUrHib
基本上加减乘都做完了(乘有一点小BUG,但不是大问题)
只剩下除法(只要求做出商数)
1个暂存器只能放到255啊QQ
要用div ab 不可能
我的程式里面的方法是
------------------------------------------------------------
fir4~1(高位元到低)被除数,
sec4~1除数,
temp4~1复制除数,
ten4~1商
sec4~1一直加
temp4~1 结果存回
sec4~1 跟
fir4~1比较
小於就继续加 同时
ten4~1加往上数 等到大於就停止加
ten4~1就是商数
-----------------------------------------------------------------
基本上概念是这样
但是我怎麽打都错QQ
改了好几次 有时候当掉 有时候怎麽按都是1...
有神手愿意教我其他更好的方法吗?
或是教我这个方法的写法
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.118.137.236
1F:→ ARHAN:对了 7段显示器4颗 03/25 01:22
2F:→ morewatertw:1.用keilc写除法看编译後的asm code 2.用减法做除法 03/25 08:55
3F:→ smtmike:解开了没? 03/31 02:27
4F:→ ARHAN: ok了! 04/01 00:05