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

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

В зависимости от способа изображения чисел с помощью цифр системы счисления делятся на позиционные и непозиционные.

В непозиционных системах любое число определяется как некоторая функция от численных значений совокупности цифр, представляющих это число. Цифры в непозиционных системах счисления соответствуют некоторым фиксированным числам. Пример непозиционной системы - римская система счисления. В вычислительной технике непозиционные системы не применяются.

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

В позиционной системе счисления любое число записывается в виде последовательности цифр:

(A=   +a m-1a m-2...a k...a 0,a -1...a -l) ( I )

Позиции, пронумерованные индексами k (-l < k < m-1) называются разрядами числа. Сумма m+l соответствует количеству разрядов числа (m - число разрядов целой части числа, l - дробной части).

Каждая цифра a (k) в записываемой последовательности может принимать одно из N возможных значений. Количество различных цифр (N), используемых для изображения чисел в позиционной системе счисления, называется основанием системы счисления. Основание N указывает, во сколько раз единица k+1 -го разряда больше единицы k -го разряда, а цифра a(k) соответствует количеству единиц k -го разряда, содержащихся в числе.

Таким образом, число может быть представлено в виде суммы:

A N=   +(a m-1N m-1+a m-2N m-2+...a 0+a -1N -1+...a -lN -l) ( II )

Основание позиционной системы счисления определяет ее название. В вычислительной технике применяются двоичная, восьмеричная, десятичная и шестнадцатеричная системы. В дальнейшем, чтобы явно указать используемую систему счисления, будем заключать число в скобки и в индексе указывать основание системы счисления.

В двоичной системе счисления используются только две цифры: 0 и 1. Любое двоичное число может быть представлено в следующей форме:

A 2= +(a m-12 m-1)+a m-22 m-2+...+a 0+a -12 -1+...+a -l2 -l)

Например, двоичное число 10101,101 2= 1*2 4+0*2 3+1*2 2+0*2+1+1*2 -1+0*2 -2+1*2 -3=21,625 10

В восьмеричной системе счисления для записи чисел используется восемь цифр (0,1,2,3,4,5,6,7), а в шестнадцатеричной - шестнадцать (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F).

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


Двоичные числа Восьмеричные числа Десятичные числа Шестнадцатеричные числа
0.0001 0.04 0.0625 0.1
0.001 0.1 0.125 0.2
0.01 0.2 0.25 0.4
0.1 0.4 0.5 0.8
0.001 0.1 0.125 0.2
1 1 1 1
10 2 2 2
11 3 3 3
100 4 4 4
101 5 5 5
110 6 6 6
111 7 7 7
1000 10 8 8
1001 11 9 9
1010 12 10 A
1011 13 11 B
1100 14 12 C
1101 15 13 D
1110 16 14 E
1111 17 15 F
10000 20 16 10

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

В двоичной системе очень просто выполняются арифметические и логические операции над числами.

Таблица сложения:



0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10


Таблица умножения:



0 * 0 = 0
0 * 1 = 0
1 * 0 = 0
1 * 1 = 1

Многоразрядные числа складываются, вычитаются, умножаются и делятся по тем же правилам, что и в десятичной системе счисления.

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

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

При переводе дробной части числа целые части чисел, получающихся при умножении, не участвуют в последующих умножениях. Они представляют собой цифры дробной части исходного числа в новой системе счисления, изображенные числами старой системы. Значение первой целой части является первой цифрой после запятой переве- денного числа.
Пример перевода числа 30,6 из десятичной системы в двоичную:

Перевод целой части Перевод дробной части

Последовательное Остатки Целые части - Последовательное
деление разряды пере- умножение
веденной дроби

0, 6
X
2
30 / 2 0 ----¦ -------------------
15 / 2 1 ----¦| ¦--------- 1, 2
7 / 2 1 ----¦|| | X
3 / 2 1 ----¦||| | 2
1 / 2 1 ----¦|||| | --------------------
0 ||||| |¦-------- 0, 4
||||| || X
||||| || 2
||||| || --------------------
||||| ||¦------- 0, 8
||||| ||| X
||||| ||| 2
||||| ||| --------------------
||||| |||¦------ 1, 6
||||| ||||
Результат: 11110,1001

Если при переводе дробной части получается периодическая дробь, то производят округление, руководствуясь заданной точностью вычислений.

Пример перевода числа 111110,01 из двоичной системы в десятичную.
Перевод целой части Перевод дробной части
_111110|1010 0, 0100
1010 |110----¦ Х
----- | 1010
10110 | -----------------
1010 | ¦------10, 1000
----- | | Х
10-------¦| | 1010
|| | -----------------
|| |¦-----101, 0000
|| ||
|| ||
Результат: 62,25

Примечание 1:

  •  
      1010 - основание десятичной системы счисления в двоичной записи.

Примечание 2:

  •  
      десятичные эквиваленты разрядов искомого числа находим по таблице.

При переводе чисел из любой системы счисления в десятичную удобнее пользоваться непосредственно формулой ( II ): (775)8 = 7*8(2) + 7*8 + 5 = (509)10

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

При двоично-десятичной записи каждая цифра десятичного числа заменяется четырехзначным двоичным числом (тетрадой):

(983,65)10 = (1001 1000 0011, 0110 0101)2-10

При записи чисел в кодах ASCII цифрам от 0 до 9 поставлены в соответствие восьмиразрядные двоичные коды от 00110000 до 00111001.

ЭВМ, предназначенные для обработки экономической информации, например IBM AT, позволяют производить арифметические операции в десятичной системе счисления над числами, представленными в двоично-десятичных кодах и кодах ASCII.

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

Для перевода восьмеричного числа в двоичное достаточно каждый восьмеричный разряд представить тремя двоичными (триадой), а для перевода шестнадцатеричного числа - четырьмя (тетрадой):

376,51 8 = 011 111 110, 101 001 2

1AF8 16 = 0001 1010 1111 1000 2

Другие записи

10.06.2016. Представление чисел с фиксированной точкой
Целые положительные числа представляются в компьютере в обычном двоичном виде (см. предыдущий раздел). Каждой цифре двоичного представления соответствует один двоичный разряд памяти (бит). Легко подсчитать,…
10.06.2016. Операции над числами с фиксированной точкой
Операции над числами с фиксированной точкой аналогичны операциям с целыми десятичными числами. Задача. Сложить положительные числа 01001101 и 00011011. Решение. Складываем столбиком:             01001101+00011011…
10.06.2016. Представление чисел с плавающей точкой. Операции над числами с плавающей точкой
    3.3. Представление чисел с плавающей точкой Представление чисел с плавающей точкой - это представление числа с помощью двух других чисел: мантиссы (дробь от 0 до 0.999 ... ) и…