Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Системы счисления. Перевод чисел из одной системы счисления в другую. Арифметические действия в системах счисления.



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

 

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

· возможность представления любого числа в рассматриваемом диапазоне величин;

· единственность представления (каждой комбинации символов должна соответствовать одна и только одна величина);

· простоту оперирования числами;

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

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

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

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

 

,


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

 

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

q Название Цифры
двоичная 0, 1
троичная 0, 1, 2
восьмеричная 0,..., 7
шестнадцатеричная 0,..., 9, A, ..., F

 

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

десятичная двоичная восьмеричная шестнадцатеричная
А
В
С
D
E
F


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


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


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


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


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

 

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


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

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

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

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

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

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

 

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

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

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

 

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

Пример 4. Выполнить перевод числа 1316 в десятичную систему счисления. Имеем:
1316 = 1*161 + 3*160 = 16 + 3 = 19.
Таким образом, 1316 = 19.

Пример 5. Выполнить перевод числа 100112 в десятичную систему счисления. Имеем:
100112 = 1*24 + 0*23 + 0*22 + 1*21 + 1*20 = 16+0+0+2+1 = 19.
Таким образом, 100112 = 19.


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

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

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

 

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

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


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

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

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

 

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

 

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


Результатом является всегда правильная дробь.
Из десятичной системы счисления - в двоичную и шестнадцатеричную:

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

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

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

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

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


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

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

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

В данном примере также процедура перевода прервана. Таким образом, 0, 847 = 0, D8D2.


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

Пример 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.

Пример 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.
Расхождение полученного результата с исходным для получения двоичной дроби числом вызвано тем, что процедура перевода в шестнадцатеричную дробь была прервана.
Таким образом, 0, D8D16 = 0, 84692.


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

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

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


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

Пример 13. Выполнить перевод из двоичной системы счисления в шестнадцатеричную числа 0, 00101012.
Поскольку количество цифр дробной части не кратно 4, добавим справа незначащий ноль: 0, 00101012 = 0, 001010102. В соответствии с таблицей 00102 = 102 = 216 и 10102 = A16. Тогда имеем 0, 00101012 = 0, 2A16.

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

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

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


Пример 14. Выполнить перевод из шестнадцатеричной системы счисления в двоичную числа 0, 2А16.
По таблице имеем 216 = 00102 и А16 = 10102. Тогда 0, 2А16 = 0, 001010102.
Отбросим в результате незначащий ноль и получим окончательный результат: 0, 2А16 = 0, 00101012.

 

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


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

Пример 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. Правила выполнения простейших арифметических действий.

Правила сложения

При сложении цифры суммируются по разрядам, и если при этом возникает избыток, то он переносится влево. Таблицы сложения:

 

Сложение в двоичной системе

+

 

Сложение в восьмеричной системе

+

 

Сложение в шестнадцатеричной системе

+ A B C D E F
A B C D E F
A B C D E F
A B C D E F
A B C D E F
A B C D E F
A B C D E F
A B C D E F
A B C D E F
A B C D E F
A B C D E F
A A B C D E F
B B C D E F 1A
C C D E F 1A 1B
D D E F 1A 1B 1C
E E F 1A 1B 1C 1D
F F 1A 1B 1C 1D 1E

 


Пример 16. Сложить двоичные числа 11012 и 110112.
Запишем слагаемые в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:
номера разрядов:

5 4 3 2 1
+ 1 1 0 1
1 1 0 1 1


Процесс образования результата по разрядам описан ниже:

a. разряд 1 формируется следующим образом: 1 + 1 = 10; 0 остается в разряде 1, 1 переносится во второй разряд;

b. разряд 2 формируется следующим образом: 0 + 1 + 1 = 10, где вторая 1 - единица переноса; 0 остается в разряде 2, 1 переносится в третий разряд;

c. третий разряд формируется следующим образом: 1 + 0 + 1 = 10, где вторая 1 - единица переноса; 0 остается в разряде 3, 1 переносится в разряд 4;

d. четвертый разряд формируется следующим образом: 1 + 1 + 1 = 11, где третья 1 - единица переноса; 1 остается в разряде 4, 1 переносится в пятый разряд;

e. пятый разряд формируется следующим образом: 1 + 1 = 10; где вторая 1 - единица переноса; 0 остается в разряде 5, 1 переносится в шестой разряд.


Таким образом:

1 1 0 1
+ 1 1 0 1 1
1 0 1 0 0 0


Проверим результат. Для этого определим полные значения слагаемых и результата:
11012 = 1*23 +1*22 + 0*21 + 1*20 = 8 + 4 + 1 = 13;
110112 = 1*24 + 1*23 + 0*22 + 1*21 + 1*20 = 16 + 8 + 2 + 1 = 27;
1010002 = 1*25 + 0*24 + 1*23 + 0*22 + 0*21 + 0*21 = 32 + 8 = 40.
Поскольку 13 + 27 = 40, двоичное сложение выполнено верно.

Пример 17. Сложить шестнадцатеричные числа 1С16 и 7В16.
Запишем слагаемые в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

2 1
+ 1 С
7 В


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

a. разряд 1 формируется следующим образом: С16 + В16 = 12 + 11 = 23 = 1716; 7 остается в разряде 1; 1 переносится в разряд 2;

b. разряд 2 формируется следующим образом: 116 + 716 + 116 = 916, где вторая 116 - единица переноса.


Таким образом:

1 С
+ 7 В
9 7


Проверим результат. Для этого определим полные значения слагаемых и результата:
16 = 1*161 + 12*160 = 16 + 12 = 28;
16 = 7*161 + 11*160 = 112 + 11 = 123;
9716 = 9*161 + 7*160 = 144 + 7 = 151.
Поскольку 28 + 123 = 151, сложение выполнено верно.

 

Правила вычитания


Пример 18. Вычесть из двоичного числа 1012 двоичное число 112.
Запишем алгебраические слагаемые в столбик в порядке " уменьшаемое - вычитаемое" и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

3 2 1
- 1 0 1
1 1


Процесс образования результата по разрядам описан ниже:

a. разряд 1 формируется следующим образом: 1 - 1 = 0;

b. разряд 2 формируется следующим образом: поскольку 0 меньше 1 и непосредственное вычитание невозможно, занимаем для уменьшаемого единицу в старшем разряде 3. Тогда разряд 2 рассчитывается как 10 - 1 = 1;

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


Таким образом:

1 0 1
- 1 1
1 0


Проверим результат. Для этого определим полные значения слагаемых и результата. По таблице имеем::
1012 = 5;
112 = 3;
102 = 2.
Поскольку 5 - 3 = 2, вычитание выполнено верно.

Пример 19. Вычесть из шестнадцатеричного числа 9716 шестнадцатеричное число 7В16.
Запишем алгебраические слагаемые в столбик в порядке " уменьшаемое - вычитаемое" и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

2 1
- 9 7
7 В


Процесс образования результата по разрядам описан ниже:

a. разряд 1 формируется следующим образом: поскольку 7 меньше В и непосредственное вычитание невозможно, занимаем для уменьшаемого единицу в старшем разряде 2. Тогда 1716 - В16 = 23 - 11 = 12 = С16;

b. разряд 2 формируется следующим образом: поскольку единица была занята в предыдущем шаге, разряд 2 уменьшаемого стал равным 816. Тогда разряд 2 рассчитывается как 8166 - 716 = 116.


Таким образом:

9 7
- 7 В
1 С


Для проверки результата используем данные из примера 3.17.
Таким образом, вычитание выполнено верно.

 

Правила умножения

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

Умножение в двоичной системе

Х

 

Умножение в восьмеричной системе

Х

 

Умножение в шестнадцатеричной системе

 

Х A B C D E F
A B C D E F
A C E 1A 1C 1E
C F 1B 1E 2A 2D
C 1C 2C 3C
A F 1E 2D 3C 4B
C 1E 2A 3C 4E 5A
E 1C 2A 3F 4D 5B
1B 2D 3F 5A 6C 7E
A A 1E 3C 5A 6E 8C
B B 2C 4D 6E 8F 9A A5
C C 3C 6C 9C A8 B4
D D 1A 4E 5B 8F 9C A9 B6 C3
E E 1C 2A 7E 8C 9A A8 B6 C4 D2
F F 1E 2D 3C 4B 5A A5 B4 C3 D2 E1

 

 

Пример 20. Умножить двоичное число 1012 на двоичное число 112.
Запишем множители в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

3 2 1
* 1 0 1
1 1


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

a. умножение множимого на разряд 1 множителя дает результат: 1012 * 12 = 1012;

b. умножение множимого на разряд 2 множителя дает результат: 1012 * 102 = 10102. Здесь значение разряда 2 множителя сформировано по принципам формирования значения числа в позиционных системах счисления;

c. для получения окончательного результата складываем результаты предыдущих шагов: 1012 + 10102 = 11112.


Для проверки результата найдем полное значение сомножителей и произведения (см. таблицу):
1012 = 5;
112 = 3;
11112 = 15.
Поскольку 5 * 3 = 15, умножение выполнено верно: 1012 * 112 = 11112.

Пример 21. Умножить шестнадцатеричное число 1С16 на шестнадцатеричное число 7В16.
Запишем множители в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

2 1
* 1 С
7 В


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

a. умножение множимого на разряд 1 множителя дает результат: 1С16 * В16 = 28 * 11 = 308 = 13416;

b. умножение множимого на разряд 2 множителя дает результат: 1С16 * 716 = 28 * 112 = 3136 = С4016. Здесь значение разряда 2 множителя сформировано по принципам формирования значения числа в позиционных системах счисления;

c. для получения окончательного результата складываем результаты предыдущих шагов: 13416 + С4016 = D7416.


Для проверки результата найдем полное значение сомножителей и произведения, воспользовавшись результатами примера 17 и правилами формирования полного значения числа:
16 = 28;
16 = 123;
D7416 = 13*162 + 7*161 + 4*160 = 3444.
Поскольку 28 * 123 = 3444, умножение выполнено верно: 1С16 * 7В16 = D7416.

 

Правила деления


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

Для проверки правильности результата воспользуемся данными из примера 20. Они показывают, что деление выполнено верно: 11112 / 112 = 1012.


Поделиться:



Популярное:

  1. Ex. Переведите, обратив внимание на перевод инфинитива, определите его функцию.
  2. Hапечатать все перестановки чисел 1..N
  3. I) Получение передаточных функций разомкнутой и замкнутой системы, по возмущению относительно выходной величины, по задающему воздействию относительно рассогласования .
  4. I. РАЗВИТИИ ЛЕКСИЧЕСКОЙ СИСТЕМЫ ЯЗЫКА У ДЕТЕЙ С ОБЩИМ НЕДОРАЗВИТИЕМ РЕЧИ
  5. I. Сила толерантного взаимодействия
  6. II Физические загрязнения окружающей природной среды
  7. II. О ФИЛОСОФСКОМ АНАЛИЗЕ СИСТЕМЫ МАКАРЕНКО
  8. II. Перепишите следующие предложения и переведите их, обращая внимание на особенности перевода на русский язык определений, выраженных именем существительным (см. образец выполнения 2).
  9. III. ЗАЩИТНЫЕ ДЕЙСТВИЯ Я, РАССМАТРИВАЕМЫЕ КАК ОБЪЕКТ АНАЛИЗА
  10. IV Перепишите и письменно переведите предложения на русский язык, обращая внимание на перевод неопределенных и отрицательных местоимений.
  11. M. МЕХАНИЗМ ДЕЙСТВИЯ ЖЕВАТЕЛЬНОЙ РЕЗИНКИ
  12. Past Simple переводится глаголами несовершенного вида, прошедшего времени (что делал?).


Последнее изменение этой страницы: 2017-03-09; Просмотров: 531; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.084 с.)
Главная | Случайная страница | Обратная связь