I have been reading an article on cryptography, and I thought to myself “How does a 32bit computer actually perform operations on a 512bit value, or even a 64 bit value?”
Would anyone be able to point me in the right direction? Maybe I am at a loss of how to properly express what I want to know, but Google searches haven’t been very helpful in figuring this out.
Thanks!
This is an expansion of GregS’s comment.
Suppose I know all the one hundred
single-digit * single-digitmultiplications (from0 * 0 = 0up to9 * 9 = 81), and someone asks me to calculate561 * 845. I could say, “sorry I can’t multiply numbers that large”; or, I could remember my childhood education and do this:which requires only that I can do, in any given step, a multiplication within my known range, or an addition (with carry).
Now, suppose that instead of decimal digits, each of the symbols above was instead a 32 bit word; and instead of me, we had a processor that can multiply 32 bit words to a 64 bit result, and add (With carry) 32 bit words. Voila, we have a system for doing arbitrarily large binary multiplications.