Представление о система счисления. Однородные позиционные системы счисления. Многочленное представление числа. Веса разрядов.

Система счисления(далее СС) - совокупность приемов и правил для записи чисел цифровыми знаками.

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

В зависимости от способов изображения чисел цифрами, системы счисления делятся на непозиционные и позиционные. Непозиционной системой называется такая, в которой количественное значение каждой цифры не зависит от занимаемой ей позиции в изображении числа (римская система счисления). Позиционной системой счисления называется такая, в которой количественное значение каждой цифры зависит от её позиции в числе (арабская система счисления). Количество знаков или символов, используемых для изображения числа, называется основанием системы счисления.

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

 

Запись чисел может быть представлена в виде

,

где A(D) - запись числа A в СС D; Di - символ системы, образующие базу. По этому принципу построены непозиционные СС.

В общем же случае системы счисления: A(B)=a1B1+a2B2+...+anBn. Если положить, что Bi=q*Bi-1, а B1=1, то получим позиционную СС. При q=10 мы имеем дело с привычной нам десятичной СС. На практике также используют другие СС:

q

Название

Цифры

2

двоичная

0, 1

3

троичная

0, 1, 2

8

восьмеричная

0,..., 7

16

шестнадцатиричная

0,...,9,A, ..., F

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

Если основание системы q превышает 10, то цифры, начиная с 10, при записи обозначают прописными буквами латинского: A,B,...,Z. При этом цифре 10 соответствуею знак 'A', цифре 11 - знак 'B' и т.д. В таблице ниже приводятся десятичные числа от 0 до 15 и их эквивалент в различных СС:

q=10

q=2

q=16

0

0

0

1

1

1

2

10

2

3

11

3

4

100

4

5

101

5

6

110

6

7

111

7

8

1000

8

9

1001

9

10

1010

A

11

1011

B

12

1100

C

13

1101

D

14

1110

E

15

1111

F

В позиционной СС число можно представить через его цифры с помощью следующего многочлена относительно q:

A=a1*q0+a2*q1+...+an*qn (1)

Выражение (1) формулирует правило для вычисления числа по его цифрам в q-ичной СС. Для уменьшения количества вычислений пользуются т.н. схемой Горнера. Она получается поочередным выносом q за скобки:

A=(...((an*q+an-1)*q+an-2)*q+...)*q+a1

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

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

3.3.1.1. Правила перевода целых чисел

Результатом является целое число.

1.      Из десятичной системы счисления – в двоичную и шестнадцатеричную:

а) исходное целое число делится на основание системы счисления, в которую переводится (2 или 16); получается частное и остаток;

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

в) все полученные остатки и последнее частное преобразуются в соответствии с таблицей в цифры той системы счисления, в которую выполняется перевод;

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

Пример 3.1. Выполнить перевод числа 19 в двоичную систему счисления:

             _19    2

18         _9    2

     1      8    _4    2

              1      4     _2    2

                      0       2    1       

                                         0                последнее частное от деления (последующее деление 1 на 2 не дает отличного от нуля частного). Это старший разряд результирующего двоичного числа.

1       0          0          1          1 – результирующее число.

Таким образом, 19 = 100112.

Пример 3.2.  Выполнить перевод числа 19 в шестнадцатеричную систему счисления:

                _19    16

                   16                  1

       3           

 

         1  3 – результирующее число.

Таким образом, 19 = 1316.       

Пример 3.3. Выполнить перевод числа 123 в шестнадцатеричную систему счисления:

       _123   16

112    7

  11

 

     7 В – результирующее число.

Таким образом, 123 = 7В16.

2. Из двоичной и шестнадцатеричной систем счисления – в десятичную. В этом случае рассчитывается полное значение числа по формуле.

Пример 3.4. Выполнить перевод числа 1316 в десятичную систему счисления. Имеем:

1316 =  1*161 + 3*160 = 16 + 3 = 19.

Таким образом, 1316 = 19.

Пример 3.5. Выполнить перевод числа 100112 в десятичную систему счисления. Имеем:

100112 = 1*24 + 0*23 + 0*22 + 1*21 + 1*20 = 16+0+0+2+1 = 19.

Таким образом, 100112 = 19.

3. Из двоичной системы счисления в шестнадцатеричную:

а) исходное число разбивается на тетрады (т.е. 4 цифры), начиная с младших разрядов. Если количество цифр исходного двоичного числа не кратно 4, оно дополняется слева незначащими нулями до достижения кратности 4;

б) каждая тетрада заменятся соответствующей шестнадцатеричной цифрой в соответствии с таблицей

Пример 3.6. Выполнить перевод числа 100112 в шестнадцатеричную систему счисления.

Поскольку в исходном двоичном числе количество цифр не кратно 4, дополняем его слева незначащими нулями до достижения кратности 4 числа цифр. Имеем:

100112 =  000100112

                                 первая тетрада – младшая цифра числа

                     вторая тетрада – старшая цифра числа

В соответствии с таблицей 00112 = 112  = 316 и 00012 = 12 = 116. Тогда 100112 = 1316.

4. Из шестнадцатеричной системы счисления в двоичную:

а) каждая цифра исходного числа заменяется тетрадой двоичных цифр в соответствии с табл. 3.1. Если в таблице двоичное число имеет менее 4 цифр, оно дополняется слева незначащими нулями до тетрады;

б) незначащие нули в результирующем числе отбрасываются.

Пример 3.7.  Выполнить перевод числа 1316 в двоичную систему счисления.

По таблице имеем: 116 = 12 и после дополнения незначащими нулями 12 = 00012; 316 = 112 и после дополнения незначащими нулями 112 = 00112. Тогда 1316 = 000100112. После удаления незначащих нулей имеем 1316 = 100112.

3.3.1.2. Правила перевода правильных дробей

Результатом является  всегда правильная дробь.

1.      Из десятичной системы счисления – в двоичную и шестнадцатеричную:

а) исходная дробь умножается на основание системы счисления, в которую переводится (2 или 16);

б)  в полученном произведении целая часть преобразуется в соответствии с таблицей в цифру нужной системы счисления и отбрасывается – она является старшей цифрой получаемой дроби;

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

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

д) формируется результат: последовательно отброшенные в шаге б) цифры составляют дробную часть результата, причем в порядке уменьшения старшинства.

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

 Имеем:

*0,847

       2

 1,694                        *0,694

                              2  

                                                              1,388           *0,388

                                         2

                                                                       0,776           *0,776

                                                                                                   2  

                                                                                               1,552 и т.д.

 

0,1101 – результирующее число.

 

В данном примере процедура перевода прервана на четвертом шаге, поскольку получено требуемое число разрядов результата. Очевидно, это привело к потере ряда цифр.

Таким образом, 0,847 = 0,11012.

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

*0,847

      16

13,552         *0,552

                            16

D                    8,832                       *0,832

                                                   16

8                                              13,312 и т.д.

D

 

0,D8D – результирующее число.

В данном примере также процедура перевода прервана.

 Таким образом, 0,847 = 0,D8D16.

2. Из двоичной и шестнадцатеричной систем счисления – в десятичную. В этом случае рассчитывается полное значение числа по формуле (3.3), причем коэффициенты ai принимают десятичное значение в соответствии с табл. 3.1.

Пример 3.10. Выполнить перевод из двоичной системы счисления в десятичную числа 0,11012. Имеем:

0,11012 = 1*2-1 + 1*2-2 + 0*2-3 +1*2-4 = 0,5 + 0,25 + 0 + 0,0625 = 0,8125.

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

Таким образом, 0,11012 = 0,8125.

Пример 3.11. Выполнить перевод из шестнадцатеричной системы счисления в десятичную числа 0,D8D16. Имеем:

0,D8D16 = 13*16-1 + 8*16-2 + 13*16-3 = 13*0,0625 + 8*0,003906 + 13* 0,000244 = 0,84692.

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

Таким образом, 0,D8D16 = 0,84692.

3. Из двоичной системы счисления в шестнадцатеричную:

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

б) каждая тетрада заменяется шестнадцатеричной цифрой в соответствии с табл. 3.1.

Пример 3.12. Выполнить перевод из двоичной системы счисления в шестнадцатеричную числа 0,11012. Имеем:

0,11012 = 0,11012

                                             первая (и единственная) тетрада

В соответствии с табл. 3.1 11012 = D16. Тогда имеем 0,11012 = 0,D16.

Пример 3.13. Выполнить перевод из двоичной системы счисления в шестнадцатеричную числа 0,00101012.

Поскольку количество цифр дробной части не кратно 4, добавим справа незначащий ноль:

0,00101012 = 0,001010102.

                                                        вторая тетрада

                                             первая тетрада

В соответствии с табл. 3.1 00102 = 102 = 216 и 10102 = A16. Тогда имеем 0,00101012 = 0,2A16.

4. Из шестнадцатеричной системы счисления  в двоичную:

а) каждая цифра исходной дроби заменяется тетрадой двоичных цифр в соответствии с табл. 3.1;

б) незначащие нули отбрасываются.

Пример 3.14. Выполнить перевод из шестнадцатеричной системы счисления в двоичную числа 0,2А16.

По таблице 3.1 имеем 216 = 00102 и А16 = 10102.

Тогда 0,2А16 = 0,001010102.

Отбросим в результате незначащий ноль и получим окончательный результат: 0,2А16 = 0,00101012.

3.3.1.3. Правило перевода дробных чисел

Отдельно переводится целая часть числа, отдельно – дробная. Результаты складываются.

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

Представим исходное число как сумму целого числа и правильной дроби:

19,847 = 19 + 0,847.

Как следует из примера 3.2, 19 = 1316; а в соответствии с примером 3.9 0,847 = 0,D8D16.

Тогда имеем:

19 + 0,847 = 1316 + 0,D8D16 = 13,D8D16.

Таким образом, 19,847 = 13,D8D16.

 

ForStu / Лекции / Информатика / ВСЁ О КОМПЬЮТЕРЕ (лекция) /

Copyright © 2004-2017, ForStu

Яндекс.Метрика