Главная » Delphi » Позиционные системы

0

Большие числа в римской системе записывать трудно. Поэтому были придуманы позиционные системы, к которым, в частности, принадлежала и упомянутая ранее вавилонская шестидесятеричная (см. рис. П1.1). Позднее в Европе позиционную систему переоткрыл (видимо) Архимед, затем от греков она была воспринята индусами и арабами, и на рубеже I и II тысячелетий опять попала в Европу1 — с тех пор мы называем цифры арабскими, хотя по справедливости их следовало бы назвать индийскими. Это была уже современная десятичная система в том виде, в котором мы ее используем по сей день, > арабов отличается только написание цифр. С тем фактом, что заимствована она именно у арабов, связано не всеми осознаваемое несоответствие порядки записи цифр в числе с привычным нам порядком следования текста: арабы, как известно, пишут справа налево. Поэтому значение цифры в зависимости от позиции ее в записи числа возрастает именно справа налево, что в нашем случае нелогично— приходится заранее обозревать число целиком и готовить ему место в тексте. Впрочем, в быту к этому все привыкли и неудобсгв не испытывают, а вот для программистов это приводит к некоторым сложностям: по мере чтения из памяти компьютера числа располагаются по старшинству адресов, т. е. в естественном для европейца порядке записи текста, слева направо. Между тем, сами числа (при побайтном представлении) являются двухзнаковыми, и при их записи соблюдается обычный арабский порядок — справа налево. Поэтому получаются довольно неудобные для восприятия конструкции: скажем, десятичное число 1234 в такой записи имело бы вид 34122.

Строгое определение позиционной системы является следующим: сначала выбирается некоторое число р, которое носит название основания системы счисления. Тогда любое число в такой системе может быть представлено следующим образом:

В самой записи числа степени основания подразумеваются, а не пишутся (и для записи основания даже нет специального значка), т. е. запись будет представлять собой просто последовательность ап… а0 (еще раз обратим внимание на то, что запись производится справа налево по старшинству — обычная математическая запись выглядела бы наоборот). Отдельные позиции в записи числа называются разрядами. Например, в десятичной системе (т. е. в системе с основанием 10) полное представление четырехразрядного числа 1024 таково:

Рис. П1.1. Вавилонские глиняные таблички с записью чисел. Вверху перевод некоторых из них в десятичную систему

Источник: Ревнч Ю. В.  Нестандартные приемы программирования на Delphi. — СПб.: БХВ-Петербург, 2005. — 560 е.: ил.

По теме:

  • Комментарии