Цитата
это необходимо реализовать массив как Аi*Bi, так?

mad.gif Не понимаю ваш вопрос. На языке C должно быть так: A[0]-первый множитель, A[1]-второй, A[2]-произведение, т.е. A[2]=A[0]*A[1]

Вообщем намеками и примерами не смог дать понять идею алгоритма... sad.gif
Ну ладно, придется обьяснить.
Имеем числа A и B представленые в двоичной системе. Представим число B=R3*1000+R2*100+R1*10+R0
где R3,R2,R1,R0 - цифры числа B третьего, второго, первого, нулевого разряда соответственно.
Тогда A*B=A*(R3*1000+R2*100+R1*10+R0)=A*R3*1000+A*R2*100+A*R1*10+A*R0=C3+C2+C1+C0, где Сn=A*Rn*10^n
Теперь разберемся с Rn. Он может быть равен либо 1 либо 0, тогда число Cx=A*10^x либо Cx=0
Умножение на 10^n можно реализовать с помошью команды SHL или ROL (какой из них точно не помню).
Напоминаю, что все представленые выше числа (кроме индексов) записаны в 2-ичной системе счисления.
Вопросы? biggrin.gif