Теория

Система счисления — символический метод записи чисел, представление чисел с помощью письменных знаков.
Символы, при помощи которых записывается число, называются цифрами.
Система счисления:
  • даёт представления множества чисел (целых или вещественных)
  • даёт каждому числу уникальное представление (или, по крайней мере, стандартное представление)
  • отражает алгебраическую и арифметическую структуру чисел.

По современным данным, развитые системы нумерации впервые появились в древнем Египте. Для записи чисел египтяне применяли иероглифы один, десять, сто, тысяча и т.д. Все остальные числа записывались с помощью этих иероглифов и операции сложения. Недостатки этой системы - невозможность записи больших чисел и громоздкость.
Разные народы в разные времена использовали разные системы счисления. Следы древних систем счета встречаются и сегодня в культуре многих народов. К древнему Вавилону восходит деление часа на 60 минут и угла на 360 градусов. К Древнему Риму - традиция записывать в римской записи числа I, II, III и т. д. К англосаксам - счет дюжинами: в году 12 месяцев, в футе 12 дюймов, сутки делятся на 2 периода по 12 часов.
В конце концов, самой популярной системой счисления оказалась десятичная система. Десятичная система счисления пришла из Индии, где она появилась не позднее VI в. н. э. В ней всего 10 цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 но информацию несет не только цифра, но также и место позиция, на которой она стоит. В числе 444 три одинаковых цифры обозначают количество и единиц, и десятков, и сотен. А вот в числе 400 первая цифра обозначает число сотен, два 0 сами по себе вклад в число не дают, а нужны лишь для указания позиции цифры 4.

Классификация систем счисления


Системы счисления подразделяются на позиционные и непозиционные.

Позиционные системы счисления

Позиционные системы счисления (СС) - это системы счисления, в которых количественный эквивалент каждой цифры (её вес) зависит от ее положения (позиции) в записи числа. 

Путем долгого развития человечество пришло к созданию позиционного принципа записи чисел, который состоит в том, что каждая цифра, содержащаяся в записи числа, занимает определенное место, называемое разрядом. Отсчет разрядов производится справа налево. Единица каждого следующего разряда всегда превосходит единицу предыдущего разряда в определенное число раз. Это отношение носит название основание системы счисления (у непозиционных систем счисления понятия «разряда» и «основания» отсутствуют).

Например:
число 237 состоит из 3 цифр. Понятно, что отдельно взятая цифра 7 больше чем цифра 2. Однако, в составе числа, двойка стоит на позиции сотен, а семёрка - на позиции единиц, поэтому количественное представление двойки - две сотни, или двести, а семёрка - всё та же семь.

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

  1. шестидесятиричная (Древний Вавилон) - первая позиционная система счисления. До сих пор при измерении времени используется основание равное 60 (1 мин = 60 с, 1 ч = 60 мин);
  2. двенадцатеричная система счисления (широкое распространение получила в XIX в. Число12 - «дюжина»: в сутках две дюжины часов. Счет не по пальцам. а по суставам пальцев. На каждом пальце руки, кроме большого, по 3 сустава - всего 12;
В настоящее время наиболее распространенными позиционными системами счисления являются десятичная, двоичная, восьмеричная и шестнадцатеричная.

Общее свойство всех позиционных систем счисления: при каждом переходе влево (вправо) в записи числа на один разряд величина цифры увеличивается (уменьшается) во столько раз, чему равно основание системы счисления.

Достоинства позиционных систем счисления:

  • в позиционных системах счисления устранены все недостатки непозиционных:
  • в них можно записать любое число (как натуральное, таки действительное);
  • запись чисел компактна и удобна;
  • благодаря поразрядной организации записи чисел с ними легко проводить математические операции.

Непозиционные системы счисления

В непозиционных системах счисления величина, которую обозначает цифра, не зависит от положения в числе. Например: Римская система счисления.
Из многочисленных представителей этой группы в настоящее время сохранила свое значение лишь римская система счисления, где для обозначения цифр используются латинские буквы:
VXLСDМ
1510501005001000
С их помощью можно записывать натуральные числа. Например, число 1995 будет представлено, как MCMXCV (М-1000,СМ-900,ХС-90 и V-5).

Правила записи чисел в римской системе счисления:

  • если большая цифра стоит перед меньшей, они складываются, например: VI – 6 (5+1);
  • если меньшая цифра стоит перед большей, то из большей вычитается меньшая, причем в этом случае меньшая цифра уже повторяться не может, например: XL — 40 (50-10), XXL – нельзя;
  • цифры М, С, Х, I могут повторяться в записи числа не более трех раз подряд;
  • цифры D, L, V могут использоваться в записи числа только по одному разу.
Например, запись XXX обозначает число 30, состоящее из трех цифр X, каждая из которых, независимо от места ее положения в записи числа, равна 10. Запись MCXX1V обозначает 1124, а самое большое число, которое можно записать в этой системе счисления, это число MMMCMXCIX (3999). Для записи еще больших чисел пришлось бы вводить все новые обозначения. По этой причине, а также по причине отсутствия цифры ноль, римская система счисления не годится для записи действительных чисел.
Таким образом, можно констатировать следующие основные недостатки непозиционных систем счисления:
  • в них нельзя записать любое число;
  • запись чисел обычно громоздка и неудобна;
  • математические операции над ними крайне затруднены.

Алфавит и основание системы счисления

Алфавитом системы счисления называется совокупность различных цифр, используемых в позиционной системе счисления для записи чисел. Например:
Десятичная система: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Двоичная система: {0, 1}
Восьмеричная система: {0, 1, 2, 3, 4, 5, 6, 7}
Шестнадцатеричная система: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}

Количество цифр в алфавите равно основанию системы счисления. Основанием позиционной системы счисления называется количество знаков или символов, используемых для изображения числа в данной системе счисления.
Базисом позиционной системы счисления называется последовательность чисел, каждое из которых задает количественное значение или «вес» каждого разряда. Например: Базисы некоторых позиционных систем счисления.
Десятичная система: 100, 101, 102, 103, 104,…, 10n,…
Двоичная система: 20, 21, 22, 23, 24,…, 2n,…
Восьмеричная система: 80, 81, 82, 83, 84,…, 8n,…
Пример. Десятичное число 4718,63, двоичное число 1001,1, восьмеричное число 7764,1, шестнадцатеричное число 3АF.
Позиция цифры в числе называется разрядом: разряд возрастает справа налево, от младших к старшим, начиная с нуля.

Развёрнутая форма представления числа

В позиционной системе счисления любое вещественное число в развернутой форме может быть представлено в следующем виде:
А = ± (an-1qn-1+an-2qn-2+ … +a0q0+a-1q-1+a-2q-2+ … +a-mq-m)
Здесь:
А - само число, 
q
 - основание системы счисления, 
ai
 - цифры, принадлежащие алфавиту данной системы счисления, 
n
 - число целых разрядов числа, 
m
 - число дробных разрядов числа. 
Развернутая форма записи числа - сумма произведений коэффициентов на степени основания системы счисления.
Пример. Десятичное число А10 = 4718,63 в развернутой форме запишется так:
А10 = 4•103 + 7•102 + 1•101 + 8•100 + 6•10-1 + 3•10-2
Двоичное число А2 = 1001,1 = 1•23 + 0•22 + 0•21 + 1•20 + 1•2-1
Восьмеричное число А8 = 7764,1 = 7•83 + 7•82 + 6•81 + 4•80 + 1•8-1
Шестнадцатеричное число А16 = 3АF = 3•162 + 10•161 + 15•160

Системы счисления, используемые в вычислительной технике

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

Чем меньше различных сигналов в электрических цепях, тем проще микросхемы, являющиеся основой конструкции большинства узлов ЭВМ, и тем надежнее они работают.

Наименьшее основание, которое может быть у позиционных систем счисления это – двойка. Именно поэтому двоичная система счисления используется в вычислительной технике, а двоичные наборы приняты за средство кодирования информации. В компьютере имеются только два устойчивых состояния работы микросхем, связанных с прохождением электрического тока через данное устройство (1) или его отсутствием (0). Говоря точнее, (1) кодирует высокое напряжение в схеме компьютера, а (0) – низкое напряжение.

Если вспомнить, что двоичная система счисления обладает самыми маленькими размерами таблиц сложения и умножения, то можно догадаться, что этот факт должен сильно радовать конструкторов ЭВМ, поскольку обработка сигнала в этом случае будет также самой простой. Таким образом, двоичная система счисления, с точки зрения организации работы ЭВМ, является наилучшей.
Мы уже говорили о преимуществах двоичной системы счисления с технической точки зрения организации работы компьютера. Зачем нужны другие системы счисления, кроме, естественно, еще и десятичной, в которой человек привык работать? Чтобы ответить на него, возьмем любое число в десятичной системе счисления, например 255, и переведем его в другие системы счисления с основаниями, кратными двойке:

25510 = 111111112 =33334 = 3778 =FF16.

Чем меньше основание системы счисления, тем больше разрядов требуется для его записи то есть, тем самым мы проигрываем в компактности записи чисел и их наглядности.  Поэтому, наряду с двоичной и десятичной системами счисления, в вычислительной технике применяют так же запись чисел в 8-и 16-ричных системах счисления. Поскольку их основания кратны двойке, они органично связаны с двоичной системой счисления и преобразуются в эту систему наиболее быстро и просто (по сути они являются компактными видами записи двоичных чисел). Все другие системы счисления представляют для вычислительной техники чисто теоретический интерес.

Алгоритмы перевода в системы счисления по разным основаниям

Алгоритм перевода чисел из любой системы счисления в десятичную

  1. Представить число в развернутой форме. При этом основание системы счисления должно быть представлено в десятичной системе счисления.
  2. Найти сумму ряда. Полученное число является значением числа в десятичной системе счисления.

Алгоритм перевода целых чисел из десятичной системы счисления в любую другую

  1. Последовательно выполнять деление данного числа и получаемых целых частных на основание новой системы счисления до тех пор, пока не получится частное, меньше делителя.
  2. Полученные остатки, являющиеся цифрами числа в новой системе счисления, привести в соответствие с алфавитом новой системы счисления.
  3. Составить число в новой системе счисления, записывая его, начиная с последнего остатка.

Алгоритм перевода правильных дробей из десятичной системы счисления в любую другую

  1. Последовательно умножаем данное число и получаемые дробные части произведения на основание новой системы счисления до тех пор, пока дробная часть произведения не станет равна нулю или будет достигнута требуемая точность представления числа.
  2. Полученные целые части произведений, являющиеся цифрами числа в новой системе счисления, привести в соответствие с алфавитом новой системы счисления.
  3. Составить дробную часть числа в новой системе счисления, начиная с целой части первого произведения.

Алгоритм перевода произвольных чисел из десятичной системы счисления в любую другую

Перевод произвольных чисел, т.е. содержащих целую и дробную часть, осуществляется в два этапа:
  1. Отдельно переводится целая часть.
  2. Отдельно переводится дробная.
  3. В итоговой записи полученного числа целая часть отделяется от дробной запятой.

Перевод чисел из двоичной системы счисления в систему счисления с основанием q=2n

Для облегчения решения задач заполним следующую таблицу: 
 Десятичная Двоичная Восьмеричная Шестнадцатеричная
0000
111
2102
3113
4100 44
510155
6110 6
711177
81000108
9100111 9
10101012 A
11101113 
12110014 
13110115 
14111016 
15111117 

Если основание q-ричной системы счисления является степенью числа 2, то перевод чисел из q-ричной систему счисления в 2-ичную и обратно можно проводить по более простым правилам.
  1. Двоичное число разбить справа налево на группы по n в каждой.
  2. Если в левой последней группе окажется меньше n разрядов, то её надо дополнить слева нулями до нужного числа разрядов.
  3. Рассмотреть каждую группу как n-разрядное двоичное число и записать её соответствующей цифрой в системе счисления с основанием q=2n

Двоичная арифметика


Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же хорошо известным правилам. 

Сложение

Рассмотрим сложение чисел в двоичной системе счисления. В основе лежит таблица сложения одноразрядных двоичных чисел: 
0+0=0
0+1=1
1+0=1
1+1=10
1+1+1=11
Важно обратить внимание на то, что при сложении двух единиц происходит переполнение разряда и производится перенос в старший разряд. Переполнение разряда наступает тогда, когда величина числа в нем становится равной или больше основания системы счисления. Для двоичной системы счисления эта величина равна двум. 
Сложение многоразрядных двоичных чисел происходит в соответствие с вышеприведенной таблицей сложения с учетом возможных переносов из младших разрядов с старшие. 

Вычитание

Рассмотрим вычитание двоичных чисел. В основе лежит таблица вычитания одноразрядных двоичных чисел. При вычитании из меньшего числа (0) большего (1) производится заем из старшего разряда. В таблице заем обозначается 1 с чертой. 
0-0=0
0-1=11
1-0=1
1-1=0

Умножение

В основе умножения лежит таблица умножения одноразрядных двоичных чисел: 
0*0=0
0*1=0
1*0=0
1*1=1
Умножение многоразрядных двоичных чисел происходит в соответствии с приведенной таблицей умножения по обычной схеме, применяемой в десятичной системе счисления, с последовательным умножением множимого на очередную цифру множителя. 

Деление

Операция деления выполняется по алгоритму, подобному алгоритму выполнения операции деления в десятичной системе счисления.

Комментариев нет:

Отправить комментарий