AOP_Tom2 (1021737), страница 60
Текст из файла (страница 60)
— ДЖОН НЕПЕР (Л МАР!Ен (МЕРА!Я)) (1616) Терпеть не могу складыватш Самая большая ошибка — считать аоисометику точной наукой. Сушествуют... тайные законы Чисел, которые может постигнуть только ум, подобный моему. К примеру, при сложении чисел в столбик сначала снизу вверх, а затем наоборот вы всегда получите разные суммы. — М. П. ЛА ГУШ (М.
Р. 1.А ТООСНЕ) (1676) Не могу представить, чтобы кому-нибудь понадобилось выполнять умножение со скоростью 40 000 или даже 4 000 операций в час; такое радикальное средство, как переход к восьмеричной системе счисления, не следует навязывать всему человечеству'ради нескольких личностей. — гр. Х. УЭЙЛС (Р. Х. ЧЧАЬЕБ) (1936) Большинство специалистов в теории чисел не проявляют интереса к арифметике. — Б.
ПАРЛЕТ т (В. РАВ1 Е гТ) (1979) Основное нлзначкник этой главы — тщательный анализ четырех основных действнй арифметики: сложения, вычитания, умножения н деления. Арифметику многие считают трнвнальной дисциплиной, которой обучают детей, а арнфметнческне действия — уделом компьютеров; но мы увидим далее, что арифметика— это увлекательный предмет с множеством интересных аспектов.
Она лежит в основе многих важных компьютерных приложений, поэтому необходимо самым тщательным образом изучить зффектнвные методы вычислительных операций нвд числами. На самом деле, арифметика — это живая и все еще успешно развивающаяся отрасль науки, сыгравшая важную роль в мировой истории. В этой главе будут проанализированы алгоритмы выполнения операций над разлнчнымн типами величин: числами с "плавающей точкой", очень большими числами, дробями (рацнональнымн числами), полнномамн и степенными рядами. Кроме того, здесь будут рассмотрены связанные с ними вопросы, такие как преобразование нз одной снстемы счисления в другую, разложение чисел на множители и операции над полнномамн. 4.1. ПОЗИЦИОННЫЕ СИСТЕМЫ СЧИСЛЕНИЯ Сносов выполнкния ягиемктичкских опкглций тесно связан со способом представления чисел, над которыми выполняются операции.
Поэтому резонно начать изучение предмета с обсуждения принципиальных подходов к представлению чисел. Позиционное представление с основанием 6 (илн по основанию Ь) определяется правилом (...азаза1ао.а )а т .)э . + аэЬ + азЬ~+ а1Ь'+ ае+ а 1Ь ~ + а зЬ ~+ ... например, (520.3)в — — 5 6з + 2 6' + 0+ 3 6 ' = 192-'. Традиционная десятичная система — зто, разумеется, частный случай, когда Ь равно десяти, а значения аь выбираются из "десятичных цифр" О, 1, 2, 3, 4, 5, 6, 7, 8, 9; в этом случае индекс 6 в (1) может быть опущен.
Простейшие обобщения десятичной системы получаются, когда в качестве Ь берется целое число, большее 1, а в качестве аь — целые числа из интервала 0 < аь с Ь. Таким образом приходим к стандартной двоичной (Ь = 2), троичной (6 = 3)., четверичной (6 = 4), пятеричной (6 = 5),... системам счисления. В общем случае в качестве Ь можно взять любое ненулевое число, а числа аь выбирать из произвольного заранее заданного ряда чисел. Как мы увидим далее, это приводит к некоторым интересным ситуациям.
Точка между ае и а 1 в (1) называется позиционной нли разделяющей. (Если Ь = 10, точка также называется десятичной; в случае, когда 6 = 2, она иногда называется двоичной точкой и т. д.). В странах Европейского коншиненша (Великобритания, как известно, себя к таковым не относит) вместо разделяющей точки часто используется запятая. Числа аь в (1) называются цифрами представлении. Цифру а~ с большим Ь называют более значимой, чем аь с меньшим lс; крайнюю слева, или "ведушую", цифру называют наиболее значимой, а крайнюю справа, или "хвостовую",— наименее значимой. В стандартной двоичной системе двоичные цифры зачастую называют битлами; в стандартной шестнадцатеричной системе (с основанием шестнадцать) шестнадцатеричные цифры от нуля до пятнадцати обычно обозначаются так: О, 1, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, О, К, Р.
История развития способов представления чисел †увлекательн повесть, так как их развитие происходит параллельно развитию самой цивилизации. Однако при подробном рассмотрении этой истории мы ушли бы далеко в сторону от главной темы; тем не менее полезно конспективно изложить основные ее моменты. Наиболее ранние формы представления чисел, обнаруженные в древних цивилизациях, обычно основываются на использовании групп пальцев, кучек камней и т.
и. с дополнительными соглашениями о замене некоторой группы, скажем, из пити или десяти объектов одним объектом специального вида или объектом, расположенным в специальном месте. Подобные системы естественно приводят к наиболее ранним из известных способам представления чисел в письменном виде, таким как вавилонские, египетские, греческие, китайские и римские числа, но такого рода обозначения чрезвычайно неудобны для выполнения арифметических операций, кроме разве что простейших случаев.
Глубокий анализ древних клинописных табличек, обнаруженных археологами на Среднем Востоке, который выполнен историками математики в 20 столетии, показал, что вавилоняне применяли фактически две различные системы представления чисел. Числа, которые использовались при ведении повседневных деловых записей., записывались при помощи унаследованных от более ранних цивилизаций Месопотамии обозначений, основанных на группировании по десяткам, сотням и т. д.
При этом необходимость в операциях с большими числалги возникала редко. При решении более сложных математических задач вавилонские математики широко использовали шестидесятеричную (по основанию шестьдесят) позиционную систему, достаточно хорошо разработанную к 1750 г.
до н. э. Эта числовая система была уникальной в том смысле, что она фактически была формой представления с плавающей точкой с опущенным показателем степени, соответствующий масштабный множитель, или степеныпестидесяти, определялся из контекста, так что, например, числа 2, 120, 7200, зо и т.
д. записывались одинаково. Особенно удобно было пользоваться этой системой для умножения и делении при помощи вспомогательных таблиц, поскольку выравнивание порядков никак не влияло на ответ. Примером такой вавилонской системы записи может служить выписка из древних таблиц "Квадрат 30 есть 15е (что можно прочесть, как "Квадрат -' есть;"", "Число, обратное 81 = (1 21)ео, равно (44 26 40)ео", "Квадрат этого числа равен (32 55 18 31 6 40)ео"). У вавилонян был символ для обозначения нуля, но из-за их идеологии обращения с плаваюгцей точкой он использовался между цифрами, но никогда — в крайней справа позиции длн обозначения масштаба.
Об интересной истории ранней вавилонской математики можно прочесть в книгах О. НеибеЬаиег, ТЛе Ехасс Яс!епсея лп Апбйшгу (Рг!псе!оп, Х. 3л Рппсесоп Пп!уегя!гу Ргеяя, 1952), В. Е. уап г!ег Жаегг!еп, Ясзепсе Ана)сеп!п8, переведенной на английский А. Дрезденом (А. Огеяс)еп) (Огоп!пйеи: Р. Ноогс!Ьо(г", 1954)*, а также О. Е. КиилЬ, САСМ 15 (1972), 671-677; 19 (1976), 108. Позиционная система с фиксированной точкой, очевидно, впервые появилась в Центральной Америке у индейцев Майя около 2 000 лет тому назад. Их система счисления по основанию двадцать была достаточно хорошо продуманной.
особенно если учесть потребности в записи астрономических наблюдений и календарных дат. Индейцы Центральной Америки ввели в употребление письменный знак для нуля около 200 г. н. э. Однако испанские завоеватели уничтожили почти все книги Майя по истории и науке, поэтому нам трудно судить об уровне абстракции, достигнутом аборигенами Америки в арифметике. Были найдены таблицы умножения специального назначения, но не обнаружено никаких примеров по делению. (См. 3. Епс Я. ТЬошряоп, Сопгпбибопя го Ашег.
АпсЛгоро!оду алб Н1ягогу 7 (Сагпек!е 1пяи о(%аяЫпб!оп, 1941), 37-67; Л. Лиягеяоп, "Апс!еп! Меяоаплепсап сошрил!пб ргас!!сея", Н!аготу оГбс!енсе 3 (Коше: 1яЫи!о с!е11а Еис!с!орес!!а 1са!!апа), в печати.) За несколько столетий до новой эры греки применяли для своих вычислений раннюю разновидность счетной доски (абаки), используя песок и/или гальку на доске с начерченными строками и столбцами, которые естественным образом соответствуют нашей деснтичной системе. Нам, привыкшим выполнять расчеты при помощи карандаша и бумаги, скорее всего, покажется странным, что тот же позиционный принцип никогда не применялся ими для записи чисел, ведь мы так к нему е Имеется русский перевод книги; Б.
Л. Ван дер Варден, Пробуждающаяся наука, Фнзмаггнз, 1959. — Прим. нерее. привыкли. Но ббльшая простота вычислений на абаке (писать тогда умели далеко не все; кроме того, вычисления на абаке делали ненужным запоминание таблиц сложения и умножения), вероятно, привела греков к убеждению, что нелепо даже предполагать, что вычисления удобнее выполнять, "царапая на бумаге". В то же время греческие астрономы для записи дробей использовали шестидесятеричную систему счисления, чему они научились у вавилонии.
Привычная нам десятичная система, отличающаися от более ранних форм прежде всего наличием фиксированной разделяющей точки, а также использованием символа нуля для обозначения пустой позиции, впервые появилась в Индии. Точная дата возникновения этой системы неизвестна, но есть основания полагать, что это произошло около 6 в. н. э. Индусская наука того времени достигла довольно высокого уровня развития, в частности это относится к астрономии. В наиболее ранних известных индийских манускриптах, в которых применяется деснтичная система, числа записываются в обратном порядке (с наиболее значимой пифрой справа), но позднее стало правилом расположение наиболее значимой цифры слева. Около 750 г.
н. э, на арабский язык было переведено несколько важных работ индусских математиков, и принципы десятичной арифметики таким образом попали в Персию. Живописное описание этого периода можно найти в древнееврейской рукописи Абрахама Ибн Эзра (АЬгаЬаш 1Ьп Езга), перевод которой на английский язык опубликован в журнале АММ 25 (1918), 99-108. Вскоре после этого альХорезми написал на арабском языке свое руководство.