
Опишите алгоритм перевода числа из десятичной системы счисления в двоичную и обратно. СРОЧНО!!!!


Ответы на вопрос

Ответ:
Перевод чисел из одной системы счисления в другую составляет важную часть машинной арифметики.
1. Для перевода двоичного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 2, и вычислить по правилам десятичной арифметики:
При переводе удобно пользоваться таблицей степеней двойки:
2. Для перевода восьмеричного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 8, и вычислить по правилам десятичной арифметики:
При переводе удобно пользоваться таблицей степеней восьмерки:
3. Для перевода шестнадцатеричного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 16, и вычислить по правилам десятичной арифметики:
При переводе удобно пользоваться таблицей степеней числа 16:
4. Для перевода десятичного числа в двоичную систему его необходимо последовательно делить на 2 до тех пор, пока не останется остаток, меньший или равный 1. Число в двоичной системе записывается как последовательность последнего результата деления и остатков от деления в обратном порядке.
5. Для перевода десятичного числа в восьмеричную систему его необходимо последовательно делить на 8 до тех пор, пока не останется остаток, меньший или равный 7. Число в восьмеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.
6. Для перевода десятичного числа в шестнадцатеричную систему его необходимо последовательно делить на 16 до тех пор, пока не останется остаток, меньший или равный 15. Число в шестнадцатеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.
7. Чтобы перевести число из двоичной системы в восьмеричную, его нужно разбить на триады (тройки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую триаду нулями, и каждую триаду заменить соответствующей восьмеричной цифрой .
8. Чтобы перевести число из двоичной системы в шестнадцатеричную, его нужно разбить на тетрады (четверки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую тетраду нулями, и каждую тетраду заменить соответствующей восьмеричной цифрой
9. Для перевода восьмеричного числа в двоичное необходимо каждую цифру заменить эквивалентной ей двоичной триадой.
10. Для перевода шестнадцатеричного числа в двоичное необходимо каждую цифру заменить эквивалентной ей двоичной тетрадой.
11. При переходе из восьмеричной системы счисления в шестнадцатеричную и обратно, необходим промежуточный перевод чисел в двоичную систему.



Само собой, вот алгоритмы перевода числа из десятичной системы счисления в двоичную и обратно:
Из десятичной в двоичную:
Начните с заданного десятичного числа.
Разделите число на 2 и запишите остаток (0 или 1).
Продолжайте делить полученное частное на 2 до тех пор, пока частное не станет равным нулю.
Запишите остатки в обратном порядке - это и будет двоичное представление исходного числа.
Пример:
Пусть нам дано число 26.
yamlШаг 1: 26 / 2 = 13, остаток 0
Шаг 2: 13 / 2 = 6, остаток 1
Шаг 3: 6 / 2 = 3, остаток 0
Шаг 4: 3 / 2 = 1, остаток 1
Шаг 5: 1 / 2 = 0, остаток 1
Обратный порядок остатков: 11010
Итак, двоичное представление числа 26 - это 11010.
Из двоичной в десятичную:
Начните с заданного двоичного числа.
Начиная с самого правого бита, присвойте каждому биту позицию, начиная с 0 и увеличивая на 1 с каждым следующим битом.
Умножьте значение каждого бита на 2 в степени его позиции и сложите полученные произведения.
Пример:
Пусть нам дано двоичное число 11010.
yamlБит 0: 0 * 2^0 = 0
Бит 1: 1 * 2^1 = 2
Бит 2: 0 * 2^2 = 0
Бит 3: 1 * 2^3 = 8
Бит 4: 1 * 2^4 = 16
Сумма всех произведений: 0 + 2 + 0 + 8 + 16 = 26
Итак, десятичное представление двоичного числа 11010 - это 26.
Следует помнить, что правильность выполнения алгоритмов зависит от того, как вы реализуете их в программе. В разных языках программирования могут быть различия в синтаксисе и функциях для выполнения деления, умножения и других операций.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili