Термины
NS (СС) — Numeral System (Система Счисления)
Перевод из десятичной NS в двоичную
Существует два способа перевести из десятичной NS в двоичную. Далее будут разобраны оба алгоритма.
Алгоритм №1
Мы можем перевести число из десятичной NS в двоичную, следуя следующему алгоритму:
Для этого необходимо выполнить следующие действия:
Делим
на
и записываем остаток от деления
Результат деления вновь делим на
и опять записываем остаток
Повторяем операцию до тех пор пока результат деления не будет равен нулю
Записываем полученные остатки в обратном порядке. Полученное число и будет искомым
Пример:
Дано число
Ответ:
Алгоритм №2
Есть и другой способ перевода числа из десятичной NS в двоичную: путем "прикидок" степеней двоек, не превышающих данного числа.
Пример:
Дано число
Шаг первый. Прикинем степень двойки, не превышающую данного числа.
Шаг второй. Так как число
больше
, значит мы можем представить число
в виде суммы
.
Повторим первый шаг: прикинем степень двойки, не превышающую второго слагаемого.
Повторим второй шаг: так как число
больше
, значит мы можем представить число
в виде суммы
.
Далее повторим вторые и третьи шаги до тех пор, пока мы не разложим число
на сумму степеней двоек. В итоге мы получим следующую запись:
Шаг третий. Расставим единицы в тех разрядах, номера которых равны степеням двоек в полученной ранее сумме (разряды пронумерованы с
).
Ответ:
Перевод из двоичной NS в десятичную
Перевод числа из двоичной NS в десятичную осуществляется путем умножения каждого разряда числа на , где
— номер разряда, начиная с
.
Пример:
Дано число
Шаг первый. Пронумеруем разряды данного нам двоичного числа от 0 справа налево:
Шаг второй. Запишем сумму вида
, где
— номер разряда, начиная с
:
Ответ:
Перевод из двоичной NS в восьмеричную
Разобьем данное нам число на триады (на блоки по три цифры), а затем заменим каждую триаду соответствующей цифрой, согласно таблице перевода (см приложение).
Пример:
Дано число
По таблице увидим, что двоичному числу соответствует восьмеричное число
, а числу
—
, значит, заменив каждую триаду на соответствующее восьмеричное число, получим:
Ответ:
Перевод из восьмеричной NS в двоичную
Заменим каждую цифру числа соответствующей триадой из таблицы перевода (см приложение).
Пример:
Дано число
Ответ:
Перевод из десятичной NS в восьмеричную
Алгоритм перевода в восьмеричную NS тот же, что и алгоритм №1 перевода в двоичную NS.
Необходимо выполнить следующие действия:
Делим
на
и записываем остаток от деления
Результат деления вновь делим на
и опять записываем остаток
Повторяем операцию до тех пор пока результат деления не будет равен нулю
Записываем полученные остатки в обратном порядке. Полученное число и будет искомым
Пример:
Дано число
Ответ:
Перевод из восьмеричной NS в десятичную
Для перевода из восьмеричной NS в десятичную, необходимо умножить каждый разряд числа на
, где
— номер разряда, начиная с
, а затем сложить полученные значения.
Пример:
Дано число
Ответ:
Перевод из десятичной NS в шестнадцатеричную
Алгоритм перевода в восьмеричную NS практически тот же, что и алгоритм №1 перевода в двоичную NS.
Необходимо выполнить следующие действия:
Делим
на
и записываем остаток от деления
Результат деления вновь делим на
и опять записываем остаток
Повторяем операцию до тех пор пока результат деления не будет равен нулю
Переводим остатки бо́льшие
согласно таблице перевода (см приложение)
Записываем полученные остатки в обратном порядке. Полученное число и будет искомым
Пример:
Дано число
Ответ:
Перевод из шестнадцатеричной NS в десятичную
Для перевода из восьмеричной NS в десятичную, необходимо перевести в соответствующие числа
по таблице перевода (см приложение) и умножить каждый разряд числа
на
, где
— номер разряда, начиная с
, а затем сложить полученные значения.
Пример:
Дано число
Ответ:
Приложение
Общий вид формулы для перевода числа из произвольной NS в десятичную:
, где:
— число в десятичной NS
— цифра числа в исходной NS, начиная с младшего разряда (справа налево)
— основание исходной NS
— номер старшего разряда (индекс последней цифры
количество цифр в исходном числе
)
Таблица перевода между NS
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 3 | 3 |
4 | 100 | 4 | 4 |
5 | 101 | 5 | 5 |
6 | 110 | 6 | 6 |
7 | 111 | 7 | 7 |
8 | 1000 | 10 | 8 |
9 | 1001 | 11 | 9 |
10 | 1010 | 12 | A |
11 | 1011 | 13 | B |
12 | 1100 | 14 | C |
13 | 1101 | 15 | D |
14 | 1110 | 16 | E |
15 | 1111 | 17 | F |
... | ... | ... | ... |