
- •Практическое занятие № 1 позиционные системы счисления
- •1. Перевод чисел из одной системы в другую
- •1.1. Алгоритмы перевода чисел в другую систему счисления, использующие арифметику исходной системы счисления (s).
- •1.2. Алгоритмы перевода чисел, использующие арифметику новой системы счисления (r).
- •1.3. Перевод чисел в системах счисления с кратными основаниями.
- •1.4. Машинные коды двоичных чисел
- •2. Задания к практическому занятию
1.2. Алгоритмы перевода чисел, использующие арифметику новой системы счисления (r).
Для перевода чисел в десятичную систему из любой другой удобно пользоваться арифметикой 10-й системы.
В этих случаях используются алгоритмы перевода целых и дробных чисел, основанные на представлении исходных в виде полинома (1.1). При этом исходное основание, номера позиций и все цифры надо представить в новой системе счисления и все арифметические операции выполнять по правилам новой (десятичной) системы счисления.
Пример 8. Представить в десятичной системе восьмеричное число 1172,258
83 |
82 |
81 |
80 |
|
8-1 |
8-2 |
|
|
1 |
1 |
7 |
2 |
, |
2 |
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,015625 |
|
0,078125 |
|
|
|
|
|
0,125 |
|
|
0,25 |
|
|
|
1 |
|
|
|
|
2,0 |
|
|
8 |
|
|
|
|
|
56,0 |
|
64 |
|
|
|
|
|
|
64,0 |
512 |
|
|
|
|
|
|
|
512,0 |
|
|
|
|
|
|
|
|
634,328125 |
Результат 1172,258=634,32812510
Пример 9. Представить в десятичной системе двоичное число 111012
X2=111012= 1∙24+1∙23+1∙22+0∙21+1∙20=1∙16+1∙8+1∙4+0∙2+1∙1=2910.
Пример 10. Представить в десятичной системе шестнадцатеричное число 27А,5416
162 |
161 |
160 |
|
16-1 |
16-2 |
|
|
2 |
7 |
А |
, |
5 |
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,00390625 |
|
0,015625 |
|
|
|
|
0,0625 |
|
|
0,3125 |
|
|
1 |
|
|
|
|
10,0 |
|
16 |
|
|
|
|
|
112,0 |
256 |
|
|
|
|
|
|
512,0 |
|
|
|
|
|
|
|
634,328125 |
Результат 27А,5416=634,32812510
1.3. Перевод чисел в системах счисления с кратными основаниями.
Если для оснований систем счисления S и R справедливо соотношение S=Rk, где k – целое положительное число, то такие системы называются системами счисления с кратными основаниями.
Примером систем с кратными основаниями являются двоичная, восьмеричная и шестнадцатеричная системы (23=8, 24=16).
Перевод чисел в системах с кратными основаниями не требует выполнения арифметических действий и выполняется достаточно просто путем шифрации.
1.3.1. Основание исходной системы счисления выше основания новой системы XS→XR , S=Rk , S>R.
Примером перевода являются: X8→X2, X16→X2.
Каждый символ числа XS заменяется своим k-разрядным представлением в R–системе.
При переводе числа из восьмеричной системы счисления в двоичную X8→X2, S=8, R=2, k=3 каждый восьмеричный символ заменяется двоичной тетрадой (тремя символами).
Пример 11. Перевести в двоичную систему счисления число X8=37,502
Исходное число: |
X8= |
3 |
7 |
, |
5 |
0 |
2 |
Эквивалентное число: |
X2= |
011 |
111 |
, |
101 |
000 |
010 |
X2=011111,101000010.
Незначащие нули в начале и конце можно отбросить, тогда X2=11111,10100001
При переводе числа из шестнадцатеричной системы счисления в двоичную X16→X2, S=16, R=2, k=4 каждый восьмеричный символ заменяется четырьмя двоичными символами.
Пример 11. Перевести в двоичную систему счисления число X16=F01,5A
Исходное число: |
X16= |
F |
0 |
1 |
, |
5 |
A |
Эквивалентное число: |
X2= |
1111 |
0000 |
0001 |
, |
0101 |
1010 |
X2=111100000001,01011010.
1.3.2. Основание исходной системы счисления ниже основания новой системы XS→XR , Sk=R , S<R.
Примером перевода являются: X2→ X8, X2→X16.
Число в исходной S-системе разбивается на группы по k разрядов (вправо и влево от запятой); неполные группы добавляются нулями (справа – для дробной части; слева – для целой части). Каждая группа из k символов системы счисления с основанием заменяется одним эквивалентным ей R-символом.
Пример 12. Перевести в восьмеричную систему счисления число X2=10111,1101101
Исходное число: |
X2= |
10 |
111 |
, |
110 |
110 |
1 |
Исходное число с разбивкой на триады и с добавлением нулей: |
X2= |
0 |
111 |
, |
110 |
110 |
100 |
Эквивалентное число: |
X8= |
2 |
7 |
, |
6 |
6 |
4 |
X8=27,664.
Пример 13. Перевести в шестнадцатеричную систему счисления число X2=10111,1101101
Исходное число: |
X2= |
1 |
0111 |
, |
1101 |
101 |
Исходное число с разбивкой на триады и с добавлением нулей: |
X2= |
0 |
0 |
, |
1 |
1 |
Эквивалентное число: |
X16= |
1 |
7 |
, |
D |
B |
X16=17,DB.