§ 1.4  Операция умножение и операция деление

Operation multiplication and operation division

 

 

      На този етап няма да разглеждаме подробно тези две операции. Ще дадем само техните естествени определения. Определенията се дават като се има предвид изпълнение на операциите между цели числа. И двете операции се определят като двумесни, т.е. имат два операнда.

      Операция умножение се означава както следва X.Y=Z, където X се нарича множимо, Y се нарича множител, а Z се нарича произведение. Последното се определя като Y-кратна сума на множимото X, или като X-кратна сума на множителя Y (по силата на комутативния закон X.Y=Y.X), т.е.

      Лесно може да се съобрази, че изпълнението на тази операция е винаги възможно и се постига чрез разгледаната вече операция събиране. Формулите (1.4.1) естествено изразяват и алгоритъма за изпълнение на операцията. Той е циклически от вида с предварително известен брой повторения и се нарича алгоритъм по определение. Произведението Z се получава като непрекъснато разширяваща се отляво сума. Редът на полинома на произведението е сума от редовете на съмножителите.

      Когато се умножават числа със знак, произведението е също число със знак, който се определя според таблица 1.4.1, която води до логическата функция нееднозначност.

Таблица 1.4.1  Знак на произведението

Знак X

Знак Y

Знак Z

+

+

+

+

-

-

-

+

-

-

-

+

 

      Операция деление се означава както следва X/Y=Z, където X се нарича делимо, Y се нарича делител, а Z се нарича часно. Последното се определя като число, което показва колко пъти делителят Y се съдържа в делимото X. В този смисъл тази операция е определена само ако

      Горното условие се нарича условие за дефинираност.

      От определението следва, че частното може да се намери като се преброят възможните (според условие (1.3.1)) многократни и последователни изваждания на делителя от делимото, а в последствие на делителят от получаваните разлики, наричани частични остатъци. С други думи алгоритъмът по определение е циклически, но с предварително неизвестен брой повторения.

      Ако текущото изваждане на делителя от частичния остатък, не е възможно според условието (1.3.1), то операция деление завършва, в което се състои разбирането за целочислено деление. По тази причина опереция деление се определя като не винаги възможна, т.е. тя не е възможна, когато делимото е по-малко по модул от модула на делителя.

      По тази причина това условие се нарича условие за изпълнимост. Ясно е, че при това условие часното е нула, което е правилен резултат. В зависимост от стойността на последния частичен остатък R, т.е. на последната разлика, частното може да се представи както следва:

      Както се вижда от горния израз, операция деление се характеризира още като точна или неточна, според стойността на последния частичен остатък.

      Последният частичен остатък (последната разлика в процеса на деление), след получаване на окончателната стойност на часното, наричаме просто остатък. Остатъкът R допълва произведението на делителят Y с полученото часно Z, както това изразява формула (1.4.4), откъдето той може да се изрази и така X-Y.Z=R. В този смисъл остатъкът е цяло число, което математически се означава още така

      Остатъкът R се чете или се определя още като “X по модул Y ”. Остатъкът е число, което в някои алгоритми се търси като самостоятелен и отделен резултат. Ето защо операция целочислено деление генерира два резултата – часно и остатък, което я прави уникална. На практика читателят може да се запознае с тази особеност на операция деление, кагато изучава съответните машинни команди DIV, IDIV, описани в книга [4], раздел 3.4.2 от този сайт.

      Редът на полинома на частното е разликата от редовете на делимото и делителя.

      Когато се делят числа със знак, частното е също число със знак, който се определя аналогично според таблица 1.4.1. Знакът на остатъка обаче винаги носи знака на делимото, което следва от (1.4.4).

      Основния недостатък на алгоритмите по определение за изпълнение на операции умножение и деление е зависимостта на продължителността им от модулите на операндите. Ето защо тяхното реално реализиране в цифровите процесори е практически изключено. С реалните машинни алгоритми за изпълнение на представените операции читателят ще бъде запознат в глава 3.

 

 

Следващият раздел е:

§ 1.5  Други математически операции  ( Other mathematical operations )