Подпишитесь на наши новости
Вернуться к началу с статьи up
 

КОМПЬЮ́ТЕРНАЯ АРИФМЕ́ТИКА

  • рубрика
  • родственные статьи
  • image description

    В книжной версии

    Том 14. Москва, 2009, стр. 708

  • image description

    Скопировать библиографическую ссылку:




Авторы: А. И. Грушин

КОМПЬЮ́ТЕРНАЯ АРИФМЕ́ТИКА, тех­нич. дис­ци­п­ли­на, пред­ме­том ис­сле­до­вания ко­то­рой яв­ля­ет­ся пред­став­ле­ние чи­сел в ЭВМ, ал­го­рит­мы вы­чис­ле­ния эле­мен­тар­ных функ­ций, ариф­ме­тич. опе­ра­ций и др., а так­же реа­ли­зую­щая их ап­па­ра­ту­ра.

К. а. ак­тив­но раз­ви­ва­ет­ся, что обу­слов­ле­но со­вер­шен­ст­во­ва­ни­ем мик­ро­элек­тро­ни­ки (напр., зна­чи­тель­но умень­ши­лось вре­мя пе­ре­клю­че­ния тран­зи­сто­ра). Од­но из осн. на­прав­ле­ний К. а.  ап­па­рат­ная реа­ли­за­ция ал­го­рит­мов, ко­то­рые пре­ж­де осу­ще­ст­в­ля­лись про­грамм­ным спо­со­бом. Напр., рань­ше во мно­гих ЭВМ опе­ра­ция де­ле­ния вы­пол­ня­лась спец. под­про­грам­мой, те­перь поч­ти во всех ЭВМ есть уст­рой­ст­во де­ле­ния и из­вле­че­ния квад­рат­но­го кор­ня; вы­чис­ле­ние эле­мен­тар­ных функ­ций так­же всё ча­ще реа­ли­зу­ет­ся ап­па­рат­ны­ми сред­ст­ва­ми. Это по­зво­ля­ет зна­чи­тель­но ус­ко­рить (ино­гда в ты­ся­чи раз) вы­чис­ле­ния.

В совр. ЭВМ при­ме­ня­ет­ся дво­ич­ная сис­те­ма счис­ле­ния (см. Ин­фор­ма­ции пред­став­ле­ние в ЭВМ). Для пред­став­ле­ния чи­сел в ЭВМ обыч­но ис­поль­зу­ют пря­мой, об­рат­ный и до­пол­ни­тель­ный ко­ды. Во всех ко­дах зна­че­ние зна­ко­во­го раз­ря­да по­ло­жи­тель­но­го чис­ла рав­но 0, а от­ри­ца­тель­но­го 1. Пря­мой код чис­ла пред­став­ля­ет со­бой знак чис­ла (зна­ко­вый раз­ряд) и мо­дуль (аб­со­лют­ную ве­ли­чи­ну) чис­ла. Пред­став­ле­ние по­ло­жи­тель­ных чи­сел во всех ко­дах сов­па­да­ет. Об­рат­ный код от­ри­ца­тель­но­го чис­ла име­ет 1 в ка­че­ст­ве зна­ка и по­раз­ряд­ную ин­вер­сию (за­ме­ну всех ну­лей еди­ни­ца­ми и всех еди­ниц ну­ля­ми) мо­ду­ля в ос­таль­ных раз­ря­дах. До­пол­нит. код от­ри­ца­тель­но­го чис­ла ра­вен об­рат­но­му ко­ду это­го чис­ла, к млад­ше­му раз­ря­ду ко­то­ро­го при­бав­ле­на 1. В К. а., как пра­ви­ло, ис­поль­зу­ют­ся два спо­со­ба пред­став­ле­ния чи­сел: с фик­си­ро­ван­ной и пла­ваю­щей за­пя­той. Чис­ла с фик­сир. за­пя­той – это чис­ла, у ко­то­рых за­пя­тая, от­де­ляю­щая це­лую часть от дроб­ной, сто­ит на по­сто­ян­ном, т. е. фик­си­ро­ван­ном, мес­те (обыч­но спра­ва от млад­ше­го раз­ря­да чис­ла). В на­уч. и тех­нич. вы­чис­ле­ни­ях ис­поль­зу­ют­ся как очень боль­шие, так и очень ма­лень­кие чис­ла, т. е. тре­бу­ет­ся боль­шой диа­па­зон пред­став­ле­ния чи­сел, ко­то­рый не мо­гут обес­пе­чить чис­ла с фик­сир. за­пя­той. В этом слу­чае при­ме­ня­ют чис­ла с пла­ваю­щей за­пя­той. Чис­ло с пла­ваю­щей за­пя­той пред­став­ля­ет­ся в ви­де: $$N=(-1)^S·M·2^E, $$где $N $ – ве­ли­чи­на чис­ла, $S$ – знак чис­ла, $M $ – ман­тис­са, $E$ – по­ря­док. Ес­ли $S=0 $, то чис­ло по­ло­жи­тель­ное, ес­ли $S=1 $, то чис­ло от­ри­ца­тель­ное. Обыч­но на ман­тис­су на­кла­ды­ва­ет­ся ог­ра­ни­че­ние $1\leq M<2 $; ман­тис­са, удов­ле­тво­ряю­щая это­му ус­ло­вию, на­зы­ва­ет­ся нор­ма­ли­зо­ван­ной. По­ря­док чис­ла пред­став­ля­ет­ся со сме­ще­ни­ем на по­ло­ви­ну диа­па­зо­на (напр., у чи­сел с пла­ваю­щей за­пя­той фор­ма­та 64 раз­ря­да по­ря­док за­ни­ма­ет $11 $ дво­ич­ных раз­ря­дов, к по­ряд­ку все­гда при­бав­ля­ет­ся сме­ще­ние $1023=2^{10}-1 $); сме­щён­ный по­ря­док $E $  все­гда по­ло­жи­тель­ное чис­ло.

Вы­чис­ле­ния с пла­ваю­щей за­пя­той при­бли­зи­тель­ны, по­сколь­ку млад­шие раз­ря­ды ре­зуль­та­та, ко­то­рым не хва­та­ет мес­та в раз­ряд­ной сет­ке ЭВМ, от­бра­сыва­ют­ся и про­из­во­дит­ся ок­руг­ле­ние. При вы­чис­ле­ни­ях ошиб­ка ок­руг­ле­ния на­ка­п­ли­ва­ет­ся и мо­жет стать дос­та­точ­но боль­шой. Ин­тер­валь­ная ариф­ме­ти­ка (раз­ра­ба­ты­ваю­щая ме­то­ды ин­тер­валь­ных вы­чис­ле­ний) в ка­че­ст­ве ре­зуль­та­та опе­ра­ции да­ёт не чис­ло, а ин­тер­вал ме­ж­ду дву­мя чис­ла­ми, со­дер­жа­щий точ­ный ре­зуль­тат, ко­то­рый мож­но бы­ло бы по­лу­чить, ес­ли бы млад­шие раз­ря­ды ре­зуль­та­та не те­ря­лись. Ес­ли ин­тер­вал, в ко­то­ром за­клю­чён ре­зуль­тат, очень боль­шой, то вы­бран­ный ал­го­ритм име­ет не­дос­та­точ­ную точ­ность.

Рань­ше ре­зуль­та­ты од­ной и той же про­грам­мы, про­из­во­дя­щей вы­чис­ле­ния с пла­ваю­щей за­пя­той, на ЭВМ раз­ных се­мейств раз­ли­ча­лись, по­сколь­ку се­ман­ти­ка опе­ра­ций с пла­ваю­щей за­пя­той не бы­ла стро­го опи­са­на в сис­те­ме ко­манд ЭВМ (ЭВМ от­ли­ча­лись по чис­лу раз­ря­дов по­ряд­ка и ман­тис­сы, спо­со­бу их ко­ди­ров­ки, ос­но­ва­нию сис­те­мы счис­ле­ния, спо­со­бу ок­руг­ле­ния и др.). В свя­зи с этим в 1985 в США был при­нят стан­дарт на дво­ич­ную ариф­ме­ти­ку с пла­ваю­щей за­пя­той ANSI/IEEE Standard No. 754. Его при­ня­тие зна­чи­тель­но улуч­ши­ло пе­ре­но­си­мость про­грамм (напр., с ЭВМ од­ной плат­фор­мы на ЭВМ др. плат­фор­мы), по­вы­си­ло точ­ность вы­чис­ле­ний. С кон. 20 в. боль­шин­ст­во вы­пус­кае­мых ЭВМ со­от­вет­ст­ву­ет это­му стан­дар­ту.

При хра­не­нии, пе­ре­да­че и об­ра­бот­ке ин­фор­ма­ции в ЭВМ воз­мож­но по­яв­ле­ние ошиб­ки. Раз­ра­бо­та­ны ко­ды, об­на­ру­жи­ваю­щие ошиб­ки, и ко­ды, ко­то­рые ис­прав­ля­ют ошиб­ки (напр., т. н. ко­ды Хэм­мин­га). На ос­но­ве эле­мен­тар­ной тео­рии чи­сел в К. а. раз­ра­ба­ты­ва­ют­ся ал­го­рит­мы и ап­па­ра­ту­ра шиф­ров­ки и де­шиф­ров­ки ин­фор­ма­ции для крип­то­гра­фии.

Лит.: Кар­цев М. А. Ариф­ме­ти­ка циф­ро­вых ма­шин. М., 1969; Koren I. Computer arithmetic algorithms. 2nd ed. Natick, 2002.

Вернуться к началу