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



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

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

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

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

4. Для перевода десятичного числа в двоичную систему его необходимо последовательно делить на 2 до тех пор, пока не останется остаток, меньший или равный 1. Число в двоичной системе записывается как последовательность последнего результата деления и остатков от деления в обратном порядке. Число 2210 перевести в двоичную систему счисления. 2210=101102.

5. Для перевода десятичного числа в восьмеричную систему его необходимо последовательно делить на 8 до тех пор, пока не останется остаток, меньший или равный 7. Число в восьмеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.

Например, переведем число 57110 в восьмеричную систему счисления. 57110=10738.

6. Для перевода десятичного числа в шестнадцатеричную систему его необходимо последовательно делить на 16 до тех пор, пока не останется остаток, меньший или равный 15. Число в шестнадцатеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.

К примеру число 746710 перевести в шестнадцатеричную систему счисления. Для перевода из 2-ной в 8-ную и наоборот, из 2-ной в 16-ную и наоборот, из 8-ной в 16-ную и обратно, используется таблица следующего вида:

Основание системы

10 2 8 16
0 0 000 0000
1 1 001 0001
2 - 010 0010
3 - 011 0011
4 - 100 0100
5 - 101 0101
6 - 110 0110
7 - 111 0111
8 - - 1000
9 - - 1001
10 - - 1010
11 - - 1011
12 - - 1100
13 - - 1101
14 - - 1110
15 - - 1111

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

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

Правило 1. Перевод чисел в десятичную систему счисления.

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

C=CmPm+Cm-1 Pm-1+…+C1P1+C0P0 +C-1P-1+…+C-sP-s, где P – основание, C – коэффициенты, i – номера разрядов выражены в новой системе. Первая позиция слева от разделителя целой и дробной части имеет номер 0, слева от неё находится первая позиция, ещё левее – вторая и т.д. Первая позиция справа от разделителя имеет номер -1, следующая за ней – номер -2 и т.д. Все действия надо выполнять в новой системе.

Примеры.

 3 2 1 0 - 1 -2

1101,012 = 1·23  + 1·22  + 0·21 + 1·20 + 0·2-1 + 1·2-2 = 8 + 4 + 1 + 0,25 = 13,2510,

1 0 -1 -2

52,258 = 5·81 + 2·80 + 2·8-1 + 5·8-2 = 40 + 2 + 0,25 + 0,078 = 42,32810,

 2 1 0 -1

1A9,416 = 1·162  + 10·161 + 9·160 + 4·16-1 = 256 + 160 + 9 + 0,25 = 425,2510.

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

Для перевода целого десятичного числа применяется следующее правило:

1. Разделить число на основание той системы счисления, в которую осуществляется перевод: выделить целую часть частного и остаток от деления. Остаток будет младшим разрядом искомого числа;

2. Целую часть частного снова разделить на основание системы счисления. Остаток от деления будет следующим разрядом числа;

3. Продолжать процесс до тех пор, пока целая часть частного не станет равной нулю.

    Примеры.

1) Перевести десятичное число 356 в двоичную систему счисления.

35610=1011001002

356 2

2   178 2

15 16  89 2

14   18 8 44 2

16 18  9 4 22 2

16   0  8 4 2  11 2

0            1 4 2 10 5 2

                          0 2     1 4 2 2

                                  0        1 2 1

                                                       0

2) Перевести десятичное число 625 в восьмеричную систему счисления.

62510=11618

625 8

56 78  8

65 72 9 8

64 6 8 1  

1        1   

3) Перевести десятичное число 182 в шестнадцатеричную систему счисления.

18210=B616

182 16

16 11 = B

22

16

6

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

Чтобы перевести дробную часть десятичных чисел в другую систему счисления, нужно выполнить следующие действия:

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

2. Дробную часть произведения снова умножить на основание системы счисления. Целая часть этого произведения будет следующим разрядом дроби (позиция номер -2);

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

Примеры.

1) Перевести десятичное число 0,25 в двоичную систему счисления

0,2510=0,012

0,25 · 2 = 0,5; 0 – старший разряд двоичной дроби;

0,5· 2 = 1,0   1 – следующий разряд.

2) Перевести десятичное число 0,53 в двоичную систему счисления с точностью до шестого знака после запятой.

0,5310 = 0,1000012

0,53 · 2 = 1,06;

0,06 · 2 = 0,12

0,12 · 2 = 0,24

0,24 · 2 = 0,48

0,48 · 2 = 0,96

0,96 · 2 = 1,92

3) Перевести десятичное число 0,13 в восьмеричную систему счисления с точностью до шестого знака после запятой.

0,1310 =0,1024368

0,13 · 8 = 1,04

0,04 · 8 = 0,32

0,32 · 8 = 2,56

0,56 · 8 = 4,48

0,48 · 8 = 3,84

0,84 · 8 = 6,72

4. Перевести десятичное число 0,96 в восьмеричную систему счисления с точностью до пятого знака после запятой.

0,9610 = 0,753418

0,96 · 8 = 7,68

0,68 · 8 = 5,44

0,44 · 8 = 3,52

0,52 · 8 = 4,16

0,16 · 8 = 1,28

5. Перевести десятичное число 0,891 в шестнадцатеричную систему счисления с точностью до пятого знака после запятой.

0,89110 = 0,Е418916

0,891 · 16 = 14,256

0,256 · 16 = 4,096

0,096 · 16 = 1,536

0,536 · 16 = 8,576

0,576 · 16 = 9,216

6. Перевести десятичное число 0,398 в шестнадцатеричную систему счисления с точностью до четвёртого знака после запятой.

0,39810 = 0,65Е3

   0,398 · 16 = 6,368

   0,368 · 16 = 5,888

   0,888 · 16 = 14,208

0,208 · 16 = 3,328

7. Перевести десятичное число 13,25 в двоичную систему счисления. 13,2510 = 1101,012

13 2    
12 6 2  
1 6 3 2
  0 2 1
    1  

 

0,25 · 2 = 0,5;

0,5· 2 = 1,0

 

8. Перевести десятичное число 42,33 в восьмеричную систему счисления с точностью до двух знаков после запятой.

42,3310 = 52,258

42 8
40 5
2  
   
   

                   0,33 · 8 = 2,64

                   0,64 · 8 = 5,12

        

9. Перевести десятичное число 425,77 в шестнадцатеричную систему счисления с точностью до трёх знаков после запятой.

425,7710 = 1А9,C5116

 

425 16  
32 26 16
105 16 1
96 10  
9    

                 0,77 · 16 = 12,32

                 0,32 · 16 = 5,12

                 0,12 · 16 = 1,92

 

 

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

Для перевода числа из восьмеричной в двоичную систему счисления достаточно перевести каждый символ отдельно, а затем записать символы последовательно друг за другом, причём, каждое двоичное число, соответствующее одному восьмеричному символу, должно состоять из трёх разрядов – триад (т.к. 8 = 23). Пустые позиции в начале числа заполняются нулями.

Примеры.

1) Перевести восьмеричное число 615,278 в двоичную систему счисления:

68 = 1102

18 = 0012

58 = 1012

28 = 0102

78 = 1112

615,278 = 110001101,0101112

2) Перевести восьмеричное число 173,548 в двоичную систему счисления

18 = 0012

78 = 1112

38 = 0112

58 = 1012

48 = 1002

173,548 = 001111011,1011002

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

Обратный перевод осуществляется следующим образом:

1. Двоичное число разбивается на триады. Разбивка выполняется вправо и влево от разделителя целой и дробной части. Неполные крайние триады дописываются нулями.

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

Примеры.

1) Перевести двоичное число 10111001,011012 в восьмеричную систему счисления.

 


1 0 1 1 1 0 0 1 , 0 1 1 0 12 = 010 111 001 ,011 0102 = 271,328.

2) Перевести двоичное число 1011000011,10012 в восьмеричную систему счисления.

1011000011,10012 = 001 011 000 011 , 100 1002 = 1303,448.

Правило 6. Перевод чисел из шестнадцатеричной в двоичную систему счисления.

Для перевода числа из шестнадцатеричной в двоичную систему счисления достаточно перевести каждый символ отдельно, а затем записать символы последовательно друг за другом, причём, каждое двоичное число, соответствующее одному шестнадцатеричному символу, должно состоять из четырёх разрядов – тетрад (т.к. 16 = 24). Пустые позиции в начале числа заполняются нулями.

Примеры.

1) Перевести шестнадцатеричное число 6F3,A516 в двоичную систему счисления

616 = 01102

F16 = 11112

316 = 00112

A16 = 10102

516 = 01012

6F3,A516 = 011011110011,101001012

2) Перевести шестнадцатеричное число A39,F416 в двоичную систему счисления

A16 = 10102

316 = 00112

916 = 10012

F16 = 11112

416 = 01002

A39,F416 = 101000111001,111101002

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

Обратный перевод осуществляется следующим образом:

1. Двоичное число разбивается на тетрады. Разбивка выполняется вправо и влево от разделителя целой и дробной части. Неполные крайние тетрады дописываются нулями.

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

Примеры.

1) Перевести двоичное число 111101,011012 в шестнадцатеричную систему счисления.

111101,011012  = 0011 1101 , 0110 10002 = 3D,6816.

2) Перевести двоичное число 1010000,011102 в шестнадцатеричную систему счисления.

1010000,011102 = 0101 0000 , 0111 00002 = 50,716.

Правило 8. Перевод чисел из восьмеричной в шестнадцатеричную систему счисления.

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

Для этого необходимо выполнить следующие действия:

1. Восьмеричное число перевести в двоичное число, причём, каждое двоичное число, соответствующее одному восьмеричному символу, должно состоять из триад;

2. Полученное двоичное перевести в шестнадцатеричную систему счисления, разбив двоичное число на тетрады.

Примеры.

1) Перевести восьмеричное число 534,7138 в шестнадцатеричную систему счисления.

534,7138 = 1 0 1 0 1 1 1 0 0 , 1 1 1 0 0 1 0 1 12 = 0001  0101 1100, 1110 0101 10002

                58 38 48  78 18 38       

= 15С,Е5816.

2) Перевести восьмеричное число 360,2348 в шестнадцатеричную систему счисления.

360,2348 = 0 1 1 1 1 0 0 0 0 , 0 1 0 0 1 1 1 0 02 = 0000 1111 0000, 0100 1110

38 68 08  28 38 48

00002 = F0,4E16.

Правило 9. Перевод чисел из шестнадцатеричной в восьмеричную систему счисления.

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

Для этого необходимо выполнить следующие действия:

1. Шестнадцатеричное число перевести в двоичное число, причём, каждое двоичное число, соответствующее одному шестнадцатеричному символу, должно состоять из тетрад;

2. Полученное двоичное перевести в восьмеричную систему счисления, разбив двоичное число на триады.

Примеры.

1) Перевести шестнадцатеричное число A2C,316 в восьмеричную систему счисления.

 


A2C,316 = 1 0 1 0 0 0 1 0 1 1 0 0 , 0 0 1 12   = 101 000 101 100 , 001 1002 = 5054,148.

A16   216 C16    316     

2) Перевести шестнадцатеричное число CBF5,E616 в восьмеричную систему счисления.

 


CBF5,E616 = 1 1 0 0 1 0 1 1 1 1 1 1 0 1 0 1 , 1 1 1 0 0 1 1 02 = 001 100 101 111 110  

C16 B16 F16    516   E16    616

101, 111 001 1002 = 145765,71416

 


Дата добавления: 2019-09-08; просмотров: 238; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!