Умножение это довольно распространенная операция. Данную операцию можно выполнить как отдельной командой ассемблера, например MUL a,b Так и с помощью простых операций сложения и смещения. Конечно, использовать одну команду это удобно, но она не отражает саму механику процесса, не говоря уже о том, что не на всех микроконтроллерах, данная операция может вообще быть доступна. Также с помощью данного алгоритма можно умножать многобайтовые числа с помощью 8-битных операций. Разберем процесс умножения...
Как и обещал, сегодня расскажу про блоки умножения и деления, которые я сделал для CPU-1 несколько дней назад. Но перед этим опишу принципы умножения и деления двоичных чисел для тех, кто их не знает. Честно говоря, я и сам их не знаю полностью, по крайней мере, я не знаю, как работать со знакомыми числами. Но с этим можно будет разобраться позже, а пока разберёмся с беззнаковыми. Умножение. Как же мы умножаем? Перед тем, как делать схему для умножения двоичных чисел, разберёмся с тем, как мы умножаем десятичные числа...