Системы счисления (Фомин) - Популярные лекции по математике выпуск №40 1964 - старые книги
Советская академическая и специальная литература
Назначение: Издание рассчитано на самые широкие круги читателей
В книге рассказывается об истории возникновения, свойствах и применениях различных систем счисления. Изложение ведется в очень популярной форме, не требующей никаких специальных математических знаний, выходящих за пределы программы средней школы.
© "НАУКА" Главная редакция физико-математической литературы Москва 1964
Авторство: Сергеи Васильевич Фокин
Формат: PDF Размер файла: 4.03 MB
СОДЕРЖАНИЕ
Предисловие. 4
- 1. О круглых и некруглых числах . 5
- 2. Происхождение десятичной системы счисления 7
- 3. Другие системы счисления и их происхождение 8
$ 4. Позиционные и непозиционные системы счисления . 11
- 5. Арифметические действия в различных системах счисления 12
- 6. Перевод чисел из одной системы счисления в другую . 14
- 7. О признаках делимости. 18
- 8. Двоичная система 21
- 9. Двоичный код в телеграфии 25
- 10. Несколько слов о вычислительных машинах 26
- 11. Почему электронная машина «предпочитает» двоичную систему счисления. 29
- 12. Об одном замечательном свойстве троичной системы . . 32
- 13. О бесконечных дробях. 35
Скачать бесплатно Академическое и специальное издание времен СССР - Системы счисления - популярные лекции по математике выпуск 40 (Фомин) 1964 года
СКАЧАТЬ PDF
ПРЕДИСЛОВИЕ
Язык чисел, как и обычный язык, имеет свой алфавит. В том языке чисел, которым сейчас пользуются практически на всем земном шаре, алфавитом служат десять цифр, от 0 до 9. Этот язык называется десятичной системой счисления. Однако не во все времена и не везде люди пользовались десятичной системой. С точки зрения чисто математической она не имеет специальных преимуществ перед другими возможными системами счисления, и своим повсеместным распространением эта система обязана вовсе не общим законам математики, а причинам совсем иного характера.
В последнее время у десятичной системы появились серьезные конкуренты в лице двоичной и отчасти троичной систем, которыми «предпочитают пользоваться» современные вычислительные машины.
О свойствах, истории возникновения и применениях различных систем счисления будет рассказано в этой книжке. Ее чтение не требует математических познаний, выходящих за пределы школьной программы.
- 1.0 КРУГЛЫХ И НЕКРУГЛЫХ ЧИСЛАХ
«Из подъезда вышел человек лет около 49; пройдя по улице метров 196, он зашел в магазин, купил там две семерки яиц и пошел дальше.». Не правда ли, такое описание звучит несколько странно? Когда мы оцениваем какую-то величину — возраст человека, расстояние и т. п. — приблизительно, то мы всегда пользуемся круглыми числами и говорим обычно «метров 200», «человек лет 50» и т. п. С круглыми числами удобнее оперировать, чем с некруглыми. Например, ни для кого не составит труда умножить в уме 100 на 200, если же нужно перемножить два некруглых трехзначных числа, скажем 147 и 343, то далеко не всякий сделает это без карандаша и бумаги.
Говоря о круглых числах, мы обычно не отдаем себе отчета в том, что деление чисел на круглые и некруглые по существу условно и что одно и то же число можег быть круглым или некруглым в зависимости от того, какой системой записи чисел или, как обычно говорят, какой системой счисления мы пользуемся. Чтобы разобраться в этом вопросе, посмотрим прежде всего, что представляет собой наша обычная десятичная система счисления, которой мы все пользуемся. В этой системе каждое целое положительное число представляется в виде суммы единиц, десятков, сотен и т. д., т. е. в виде суммы различных степеней числа 10 с коэффициентами, которые могут принимать значения от 0 цо 9 включительно. Например, запись 2548 означает, что рассматриваемое число содержит 8 единиц, 4 десятка, 5 сотен и 2 тысячи, т. е. 2548 — это
Таким образом, чтобы вычислительная машина могла сложить два числа, содержащих данное фиксированное число двоичных разрядов, в ней на каждый из этих разрядов должно существовать устройство, работающее следующим образом: в этом устройстве должно быть три входа, отвечающих величинам а, b и с, и два выхода, отвечающих величинам s и t. Будем предполагать, как это обычно бывает в электронных устройствах, что единица означает наличие тока на данном входе или выходе, а нуль — его отсутствие. Рассматриваемое устройство, называемое одноразрядным сумматором, должно работать в соответствии с указанной выше таблицей, т. е. так, что если ни на один из трех входов не подается ток, то его не должно быть ни на одном из выходов; если подается ток на а, но не подается на b и с, то должен быть ток на s и отсутствие тока на /, и т. д. Устройство, работающее по такой схеме, нетрудно сконструировать из электронных ламп или из полупроводниковых элементов.
- 12. ОБ ОДНОМ ЗАМЕЧАТЕЛЬНОМ СВОЙСТВЕ ТРОИЧНОЙ СИСТЕМЫ
Для оценки пригодности той или иной системы счисления в качестве основы для конструирования вычислительной машины имеет значение, кроме простоты осуществления арифметических операций в ней, также и то, что обычно называют экономичностью системы. Под этим понимается тот запас чисел, которые можно записать в данной системе с помощью определенного количества знаков. Поясним это на примере. Чтобы в десятичной системе записать 1000 чисел (от 0 до 999), необходимо 30 знаков (по 10 цифр для каждого разряда). А в двоичной системе можно с помощью 30 знаков записать 215 различных чисел (так как для каждого двоичного разряда нужны только две цифры 0 и 1, то с помощью 30 цифр мы можем записывать числа, содержащие до 15 двоичных разрядов). Но
215 > 1000, поэтому, имея 15 двоичных разрядов, можно записать больше различных чисел, чем с помощью 3 десятичных. Таким образом, двоичная система более экономич- 32
означает, как известно,
2 • 10* + 3 • 10° + 5 • 10-’ + 8 • IO-2 + 1 • IO"3
и т. п.
Различные числа удобно изображать точками на прямой. Возьмем некоторую прямую и выберем на ней определенную точку О (начало отсчета) и единицу масштаба— отрезок ОА (рис. 5). Будем считать, что точка О изображает число нуль, а точка А — единицу. Отложив от точки О отрезок ОА два, три и т. д. раз, мы получим точки, отвечающие числам два, три и т. д. Таким образом можно изобразить на прямой все целые числа. Для изображения дробных чисел, содержащих десятые, сотые и т. д., нужно делить отрезок О А на десять, сто и т. д. частей и пользоваться этими более мелкими единицами длины. Мы можем, таким образом, отметить на прямой точки, отвечающие всевозможным числам вида
- • • д1#0’ b&i • • • Рис. 5.
т. е. всевозможным десятичным дробям. При этом мы, конечно, не займем всех точек, имеющихся на прямой. Например, если на прямой отложить от точки О отрезок, представляющий собой диагональ квадрата со стороной единица, то конец этого отрезка не попадет в число точек, отвечающих какой-либо десятичной дроби, поскольку сторона квадрата и его диагональ несоизмеримы.
Если мы хотим каждой точке прямой поставить в соответствие некоторую дробь, то для этого нам придется прибегнуть уже не к конечным, а к бесконечным десятичным дробям. Поясним смысл этого последнего утверждения.
Чтобы каждой точке прямой поставить в соответствие некоторую (бесконечную) десятичную дробь, поступим следующим образом. Будем, для удобства, говорить не о всей прямой, а об определенной ее части, именно об отрезке ОА, принятом нами за единицу масштаба. Пусть х—некоторая точка этого отрезка. Разделим ОА на 10 равных частей и занумеруем эти части цифрами от 0 до 9. Обозначим Ь\ номер того частичного 36
отрезка, на котором находится точка х. Разделим теперь этот маленький отрезок снова на 10 частей, перенумеруем полученные части цифрами от 0 до 9 и обозначим Ь2 номер того из этих маленьких отрезков, на котором находится точка х. Отрезок с номером Ь2 снова разделим на 10 частей и, повторив всю процедуру, получим £>з. Будем продолжать этот процесс неограниченно, деля на каждом шаге отрезок, полученный на предыдущем шаге, на 10 частей. В результате этого мы получим последовательность цифр Ь2, ., Ьп, которую мы будем писать в виде 0, b\b2 • Ьп * и называть бесконечной десятичной дробью, отвечающей точке х. Оборвав эту дробь на некотором месте, мы получим обычную (конечную) десятичную дробь 0, Ь\ Ь2 . bnt определяющую положение точки х на прямой не точно, а приближенно (именно, с точностью до доли основного отрезка, если бесконечную дробь оборвать на /i-й цифре).
Итак, мы поставили в соответствие каждой точке прямой некоторую бесконечную десятичную дробь. Нетрудно заметить, что при этом неизбежно возникает некоторая неопределенность. Именно, разделив отрезок ОА на десять частей, рассмотрим, например, точку, граничную между первой и второй частями. Мы можем отнести ее как к первой части (имеющей номер 0), так и ко второй (имеющей номер 1). В первом случае мы, продолжая процесс последовательного деления, будем обнаруживать выбранную точку в самой правой (т. е. имеющей номер 9) из тех частей, на которые делится отрезок, полученный на предыдущем шаге, т. е. получим бесконечную дробь
0,0999., а во втором случае эта точка будет при каждом из последующих делений попадать на ту часть, которая имеет номер 0, т. е. получается дробь
0,1000.
Таким образом, мы получили две бесконечные дроби, отвечающие одной и той же точке. То же самое будет
иметь место и для любой другой точки, которая окажется пограничной (между двумя отрезками) при каком-либо из последовательных разбиений. Например, дроби
0,125000. и 0,124999.
изображаются на прямой одной и той же точкой.
Этой неопределенности можно избежать, условившись относить всякую пограничную точку или всегда к правому, или всегда к левому из содержащих ее частичных отрезков. Иначе говоря, мы можем изгнать или все дроби, содержащие «бесконечный хвост» из одних нулей, или все дроби, содержащие «бесконечный хвост» из одних девяток.
Введя такое ограничение, можно каждой точке отрезка ОА поставить в соответствие одну-единственную, вполне определенную бесконечную десятичную дробь, •причем двум разным точкам будут соответствовать две различные дроби.
То обстоятельство, что мы, желая зафиксировать положение точки на отрезке с помощью последовательных его подразделений, каждый раз делили соответствующий отрезок именно на 10 частей, конечно, не существенно. Это объяснялось просто нашей традиционной приверженностью к десятичной системе. Можно было бы взять вместо десяти какое-нибудь другое число, например двойку, т. е. делить каждый раз отрезок пополам, приписывая одной из этих половин номер 0, а другой — номер 1, и выбирать затем ту половину, которой принадлежит рассматриваемая точка. При этом мы каждой точке поставили бы в соответствие последовательность 61, 62, состоящую только из нулей и единиц, которую естественно писать в виде
(0, 6^2. Ьп . )г
и называть бесконечной двоичной дробью. Оборвав эту последовательность на каком-либо месте, мы получим конечную двоичную дробь
(0, 6^2 . • • 6Я), т. е. число определяющее положение рассматриваемой точки с точностью до части основного отрезка.
Бесконечные десятичные дроби, с помощью которых можно представить все точки прямой, представляют собой удобный аппарат для построения теории действительных чисел, служащей фундаментом для многих разделов высшей математики. С тем же самым успехом можно при этом пользоваться не десятичными, а какими-либо иными (например, двоичными, троичными и т. п.) бесконечными дробями.
В заключение рассмотрим следующую поучительную задачу. Возьмем снова отрезок ОА, разделим его на три равные части и выбросим среднюю часть (считая, чТо сами точки деления относятся к этой средней части, т. е. тоже выбрасываются; рис. 6). Далее, каждую из двух оставшихся частей опять разделим на три равные части и средние части выбросим. После этого останутся четыре маленьких кусочка, в каждом из которых мы снова выбросим среднюю треть. Будем повторять этот процесс неограниченно. Спрашивается, сколько точек отрезка ОА останутся при этом невыброшенными?
На первый взгляд может показаться, что в результате такой «чистки» останутся только крайние точки О и А. Это заключение подтверждается, казалось бы, следующим рассуждением. Подсчитаем сумму длин всех отрезков, выбрасываемых при описанном выше процессе. (Напомним, что длина всего отрезка ОА принимается равной I.) На первом шаге мы выбрасываем один отрезок длины I-, на втором шаге —два отрезка
1 „ d 1 по у каждый, на третьем — четыре отрезка по
каждый и т. д. Сумма длин всех выбрасываемых отрезков равна
1+2+Л +
Это — бесконечно убывающая геометрическая прогрессия с первым членом -$■ и знаменателем . По известной формуле ее сумма равна
1
Итак, сумма длин выброшенных отрезков в точности равна длине исходного отрезка 04!
И все же, описанный выше процесс оставляет на отрезке невыброшениыми кроме точек О и А еще бесконечно много точек. Чтобы убедиться в этом, сделаем следующее. Представим каждую точку единичного отрезка ОА с помощью бесконечной дроби, записанной по троичной системе. Каждая такая дробь будет состоять из нулей, единиц и двоек. Я утверждаю: при описанном выше процессе «выбрасывания середин» останутся те точки, которым отвечают троичные дроби, не содержащие ни одной единицы (т. е. состоящие целиком из нулей и двоек). Действительно, на первом шаге мы выбросили среднюю треть единичного отрезка, т. е. те точки, которым отвечают троичные дроби, имеющие на первом месте единицу. На втором этапе мы в каждой из оставшихся частей снова выбрасываем среднюю треть, т. е. изгоняем дроби, у которых на втором месте стоит единица, и т. д. (При этом мы выбрасываем и такие точки, которые представляются двумя троичными дробями, если хоть одна из этих дробей содержит единицу. Например, конец первой трети отрезка ОА можно представить троичной дробью
0,1000. или
0,0222,
эту точку мы выбросили.) Итак, описанный процесс оставляет на отрезке О А те точки, которым отвечают троичные дроби, состоящие только из нулей и двоек. Но 40
ведь таких дробей бесконечно много! Следовательно, кроме концевых точек на отрезке ОА останутся не выброшенными еще бесконечно много точек. Например, останется точка, отвечающая дроби
0,020202.,
которая представляет собой, как легко проверить, троичное разложение числа
Итак, оказывается, описанный выше процесс «выбрасывания середин» приводит к совокупности точек, которая, хотя и «совсем не занимает места» на отрезке (поскольку сумма длин выброшенных отрезков равна, как мы выяснили, единице), но в то же время содержит бесконечно много точек.
Эта совокупность точек обладает и другими интересными свойствами, однако их изучение потребовало бы от нас изложения сведений и понятий, выходящих за рамки нашей маленькой книжки, которую мы на этом заканчиваем.
Популярная математика - ДЛЯ ШИРОКОГО КРУГА, ПОЗНАВАТЕЛЬНОЕ
Популярная математика, Автор - Фокин С.В., Серия - Популярные лекции по математике