主题:如何做BCD码加法器啊?
skyking
[专家分:0] 发布于 2008-05-10 21:49:00
如何在VB6.0里实现BCD码加法器呢?关键是算法的思路,望各位编程高手指点!
回复列表 (共1个回复)
沙发
老大徒伤悲 [专家分:29120] 发布于 2008-05-10 23:08:00
咳,不就是二-十进制嘛,说得那么文雅?
声明布尔变量二个:进位标志1,进位标志2
声明字节变量六个:加数1、被加数1、和1,加数2、被加数2、和2
对原加数取最低第一个字节,
do
如果被加数存在该字节
如果被加数还有更低位
将更低位,直接写入和
结束如果
使用and运算将加数和被加数分别拆分成两位(并判断是否有大于9的情况,如果有,报警后退出)
分别赋给加数1、被加数1、加数2、被加数2
加 加数1,被加数1,进位2,和1,进位1
加 加数2,被加数2,进位1,和2,进位2
将和1与和2用or运算合成结果的一个字节,写入和
否则
将该字节写入和
结束如果
取下一字节
loop 直到两者都没有下一字节
sub 加(加数 字节,被加数 字节,进位 布尔,和 字节,和进位 布尔)
和=加数+被加数
如果 进位 和=和+1
如果 和>9
和=和-10
和进位=真
否则
和进位=假
结束如果
end sub
我来回复