[an error occurred while processing this directive]
|
если умножение 32*32 i-раз при использовании 16-ти битных регистров, то берете младшие 16 бит первого числа и младшие 16 бит второго числа и умножаете i-раз с накоплением (i<256 для 40-битного аккумулятора).
далее берете старшие 16 бит первого числа и младшие 16 бит второго числа и опять в цикл.
далее берете младшие 16 бит первого числа и старшие 16 бит второго числа и снова в цикл.
и напоследок старшие 16 бит двух чисел.
при суммированнии надо учитывать сдвиги. для второго и третьего суммированния-умножения - сдвиг будет 16 бит влево.
для последнего - 32 бита влево.
если i>256, то алгоритм тот же, но придется делать циклов больше.
E-mail: info@telesys.ru