1. A method of multiplying a first operand and a second operand, comprising: storing the first operand as a first array of n words, and storing the second operand as a second array of n words, wherein n is an integer that is a power of two; determining a first weighted sum from multiple subproducts of corresponding words of the first operand and the second operand; and iteratively determining a next weighted sum from a previous weighted sum and a recursively calculated intermediate product.