Перевод чисел из десятичной СС в любую другую СС

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

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

Алгоритм перевода можно записать в виде следующей последователь­ности шагов:

1. Разделить в целых числах заданное число А на основание р в той сис­теме, из которой переводят, и запомнить частное q и остаток а.

2. Если частное не равно нулю, то принять его за новое число и вер­нуться к шагу 1.

3. Если частное равно нулю, действия прекратить. Выписать остатки в порядке, обратном их получению, и принять их за цифры искомого числа. Арифметические действия по данному алгоритму произ­водят в той системе счисления, из которой число переводят.

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

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

Примеры:

1. Перевести число 25(10) в двоичную систему счисления:

25 |_ 2 Выполняем последовательное деление 25 на 2

- 24 12 |_ 2_

1 - 12 6 |_ 2

0 - 6 3 | _2_ Итак, 25 {10) = 11001 (2).

0 - 2 1

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

2. Перевести число 32(10) и 7110 в двоичную СС.

32 | 2 0 71| 2 1

16 | 2 0 35| 2 1

8 | 2 0 7| 2 1

4 | 2 0 8| 2 0

2 | 2 0 4| 2 0

1 1 32 (10) =100000(2) 2| 2 0 71(10) = 1000111(2)

1 1

Ø Перевод в шестнадцатеричную систему счисления

Рассмотрим примеры перевода чисел из десятичной СС в шестнадцатеричную с помощью алгоритма перевода, а полученного ре­зультата - снова в десятичную СС с помощью алгоритма замещения.

Примеры.

1. Перевести число 191(10) в шестнадцатеричную систему счисления и наоборот:

а) 191 | 16 Заменяем 11(10) на В(16), а 15(10) на F(l6). Итак, 191(10) = ВF(16).

-16 _ 11

-16

6) BF(16) = (В • 161 + F • 16°) = (11 • 16 + 15 • 1) = (176 + 15) = 191(10).

2. Перевести число 1723(10) в шестнадцатеричную систему счисления и наоборот:

а) _1723 | 16

16 _107 | 16

123 96 6

112 11

11 Итак, 1723(10) = 6ВВ(16)

б) 6ВВ(16) = (6•162 + В•161 + В•16°) = (1536 + 176 + 11) = 1723(10).

Ø Перевод в восьмеричную систему счисления

Пример

1. Перевести число 1723(10) в восьмеричную систему счисления и наоборот:

а) _1723 | 8

16 215 | 8

12 - 16 26 | 8_

8 55 - 24 3

43 - 48 2

- 40 7 Итак, 1723(10) = 3273(8);

б) 3273(8) = (3•83 + 2•82 + 7•81 + 3•80) = (1536 + 128 + 56 + 3) = 1723(10).

Перевод шестнадцатеричных чисел в десятичную СС.

При переводе шестнадцатеричных чисел в десятичную СС можно вос­пользоваться таблицей чисел вида а • 16k, помещенных в табл. 2.8.

Таблица 2.8-Перевод шестнадцатеричных чисел в десятичную СС
а(16) а •164 а • 163 а• 162 а • 161 а(10)
           
           
           
           
           
           
           
           
           
А          
В          
С          
D          
Е          
F          

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: