Как складывать числа с разными системами счисления
Перейти к содержимому

Как складывать числа с разными системами счисления

  • автор:

Урок 32. Перевод чисел между системами счисления

При программировании мы часто сталкиваемся с необходимостью перевода чисел между системами счисления, по основанию: 2, 4, 8, 16 и 10.

Основание системы счисления указывает какое количество цифр используется в этой системе для написания чисел:

  • Привычная нам система счисления по основанию 10 (десятичная система счисления) использует 10 цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. После 9 идёт не цифра, а число 10, состоящее из двух цифр: 1 и 0. Таким образом, мы записываем любые числа, используя указанные цифры в определённой последовательности.
  • Система счисления по основанию 2 (двоичная система счисления) использует 2 цифры: 0, 1.
  • Система счисления по основанию 4 (четверичная система счисления) использует 4 цифры: 0, 1, 2, 3.
  • Система счисления по основанию 8 (восьмеричная система счисления) использует 8 цифр: 0, 1, 2, 3, 4, 5, 6, 7.
  • Система счисления по основанию 16 (шестнадцатеричная система счисления) использует 16 цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. В данном случае, буквы ABCDEF являются цифрами. Цифра A шестнадцатеричной системы, равна числу 10 десятичной системы, цифра B равна числу 11 десятичной системы, . , цифра F равна числу 15 десятичной системы.

Можно использовать любую систему счисления, например по основанию 12 (счет дюжинами), но наиболее популярными при программировании, являются: десятичная, шестнадцатеричная и двоичная, системы счисления.

Все выше перечисленные системы счисления относятся к позиционным системам. Значение числа зависит не только от того из каких цифр оно состоит, но и в какой последовательности они записаны. Например число 1234 не равно числу 4321.

Методы представления чисел в разных системах счисления:

  • двоичная система счисления:
    • (10101)2 — математическое представление (число)основание системы
    • 0b10101 — представление в скетчах Arduino IDE (число записывается с ведущими символами «0b»).
    • B10101 — представление в скетчах Arduino IDE (число до 256 записывается с ведущим символом «B»).
    • (10101)8 — математическое представление (число)основание системы
    • 010101 — представление в скетчах Arduino IDE (число записывается с ведущим символом «0» ноль).
    • (10101)10 — математическое представление (число)основание системы
    • 10101 — представление в скетчах Arduino IDE (число записывается как есть без ведущих символов)
    • (10101)16 — математическое представление (число)основание системы
    • 0x10101 — представление в скетчах Arduino IDE (число записывается с ведущими символами «0x»).
    Перевод чисел в десятичную систему счисления:

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

    Σ(цифра_числа * основание_системы позиция_цифры )

    Примеры перевода чисел в десятичную систему счисления:

    Перевод чисел из десятичной системы счисления:

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

    Примеры перевода чисел из десятичной системы счисления:

    • (43)10 перевести в двоичную систему счисления:
      • 43/2 = 21 и 1 в остатке
      • 21/2 = 10 и 1 в остатке
      • 10/2 = 5 и 0 в остатке
      • 5/2 = 2 и 1 в остатке
      • 2/2 = 1 и 0 в остатке
      • 1/2 = 0 и 1 в остатке
      • результат — цифры остатков в обратном порядке = (101011)2
      • 751/8 = 93 и 7 в остатке
      • 93/8 = 11 и 5 в остатке
      • 11/8 = 1 и 3 в остатке
      • 1/8 = 0 и 1 в остатке
      • результат — цифры остатков в обратном порядке = (1357)8
      • 15305/16 = 956 и 9 в остатке
      • 956/16 = 59 и 12 в остатке — соответствует цифре (C)16
      • 59/16 = 3 и 11 в остатке — соответствует цифре (B)16
      • 3/16 = 0 и 3 в остатке
      • результат — цифры остатков в обратном порядке = (3BC9)16
      Простой метод перевода:

      Легче всего переводить числа через двоичную систему счисления. О том как это сделать рассказано в нашем видеоуроке.

      СЛОЖЕНИЕ ДЕЛЕНИЕ УМНОЖЕНИЕ ЧИСЕЛ В ЛЮБОЙ СИСТЕМЕ СЧИСЛЕНИЯ ОНЛАЙН

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

      Вам необходимо определиться сколько чисел вам необходимо посчитать и выбрать это количество в графе количество чисел.

      Далее Вам необходимо ввести каждое число и выбрать его систему счисления. Если в указанном списке Вы не нашли нужной СС, то выберите пункт другая и введите числом основание вашей системы счисления.

      После ввода всех чисел и выбора арифметических операций нажмите кнопку рассчитать.

      • Калькулятор
      • Инструкция
      • Теория
      • История
      • Сообщить о проблеме

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

      Пример решения: 5436 7 — 1101 2
      Пример состоит из двух чисел 5436 7 и 1101 2 где в первом 7 и втором 2 — это основания системы счисления.

      Введем сначала 5436 7 в поле «число 1» без основания СС (то есть без 7) и укажем его систему в соответствующем поле — выбираем пункт другая и вводим 7. Результат на скришоте:

      Ввели число 5436 в семиричной СС

      ЛОЖЕНИЕ ДЕЛЕНИЕ УМНОЖЕНИЕ ЧИСЕЛ В ЛЮБОЙ СИСТЕМЕ СЧИСЛЕНИЯ ОНЛАЙН

      Теперь также введем число 11011 в двоичной системе счисления:

      СЛОЖЕНИЕ ДЕЛЕНИЕ УМНОЖЕНИЕ ЧИСЕЛ В ЛЮБОЙ СИСТЕМЕ СЧИСЛЕНИЯ ОНЛАЙН

      Далее выбираем в поле «операция» вычитание и указываем что расчет должен быть выполнен в десятичной СС. Если мы хотим чтобы результат расчета был в двоичной СС, то указываем это как на скриншоте:

      СЛОЖЕНИЕ ДЕЛЕНИЕ УМНОЖЕНИЕ ЧИСЕЛ В ЛЮБОЙ СИСТЕМЕ СЧИСЛЕНИЯ ОНЛАЙН

      Теперь нажимаем копку «Рассчитать» и смотрим результат:

      Если хотите посмотреть ход решения, то нажмите ссылку «Показать как оно получилось»

      Если Вам необходимо рассчитать более двух чисел то выберите нужное количество в пункте «Количество чисел» Максимум 7 чисел.
      При расчете сначала выполняются операции деления и умножения затем сложения и вычитания.

      Вы можете выполнять операции расчета деления столбиком.

      Последние 20 расчетов на этом калькуляторе

      1. Умножение 1011010011*1001111101 в двоичной Выполнен: 2023-12-09 17:05 МСК
      2. Деление AB19F÷F67A в шестнадцатеричной Выполнен: 2023-12-09 16:57 МСК
      3. Вычитание 22EF-FFCE в шестнадцатеричной Выполнен: 2023-12-09 16:52 МСК
      4. Вычитание B313-F31D в шестнадцатеричной Выполнен: 2023-12-09 16:50 МСК
      5. Сложение 101101+000110 в двоичной Выполнен: 2023-12-09 16:49 МСК
      6. Деление 11101011÷111101 в двоичной Выполнен: 2023-12-09 16:49 МСК
      7. Сложение 4536+7627 в восьмеричной Выполнен: 2023-12-09 16:48 МСК
      8. Вычитание 53311-5361 в восьмеричной Выполнен: 2023-12-09 16:48 МСК
      9. Умножение 1110101*1111 в двоичной Выполнен: 2023-12-09 16:47 МСК
      10. Сложение 5B585+E707 в шестнадцатеричной Выполнен: 2023-12-09 16:46 МСК
      11. Деление 40÷15 в шестнадцатеричной Выполнен: 2023-12-09 16:45 МСК
      12. Вычитание 1110111011-11111101 в двоичной Выполнен: 2023-12-09 16:45 МСК
      13. Деление 1000000÷10101 в двоичной Выполнен: 2023-12-09 16:40 МСК
      14. Сложение 28F+423 в шестнадцатеричной Выполнен: 2023-12-09 16:39 МСК
      15. Сложение 0101010+101010 в двоичной Выполнен: 2023-12-09 16:39 МСК
      16. Сложение 02BF9+07 в шестнадцатеричной Выполнен: 2023-12-09 16:37 МСК
      17. Сложение 27D+28A в шестнадцатеричной Выполнен: 2023-12-09 16:25 МСК
      18. Сложение 2F6.05+29A.90 в шестнадцатеричной Выполнен: 2023-12-09 16:24 МСК
      19. Вычитание 1-0.0010010001 в десятичной Выполнен: 2023-12-09 16:23 МСК
      20. Вычитание 1-0.1101101110 в десятичной Выполнен: 2023-12-09 16:23 МСК

      Двоичная арифметика

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

      Так же, как и в десятичной системе счисления, для выполнения арифметических действий необходимо знать таблицы сложения (вычитания) и умножения.

      Таблица сложения, вычитания и умножения для двоичной системы счисления

      Сложение Вычитание Умножение
      0 + 0 = 0 0 — 0 = 0 0 ∙ 0 = 0
      0 + 1= 1 1 — 0 = 1 0 ∙ 1 = 0
      1 + 0 = 1 1 — 1 = 0 1 ∙ 0 = 0
      1 + 1 = 10 10 — 1 = 1 1 ∙ 1 = 1

      Сложение двоичных чисел

      Сложение в двоичной системе счисления выполняется по тем же правилам, что и в десятичной. Два числа записываются в столбик с выравниванием по разделителю целой и дробной части и при необходимости дополняются справа незначащими нулями. Сложение начинается с крайнего правого разряда. Две единицы младшего разряда объединяются в единицу старшего.

      Двоичное сложение

      Пример : 1011,12 + 1010,112

      Двоичное сложение с переносом через разряд

      Интересна также ситуация, когда складываются больше двух чисел. В этом случае возможен перенос через несколько разрядов.
      Пример : 111,12 + 1112 + 101,12

      При сложении в разряде единиц (разряд 0) оказывается 4 единицы, которые, объединившись, дают 1002. Поэтому из нулевого разряда в первый разряд переносится 0, а во второй — 1.
      Аналогичная ситуация возникает во втором разряде, где с учетом двух перенесенных единиц получается число 5 = 1012. 1 остается во втором разряде, 0 переносится в третий и 1 переносится в четвёртый.

      Вычитание двоичных чисел

      Двоичное вычитание

      В случаях, когда занимается единица старшего разряда, она дает две единицы младшего разряда. Если занимается единица через несколько разрядов, то она дает по одной единице во всех промежуточных нулевых разрядах и две единицы в том разряде, для которого занималась.
      Пример : 10110,012 — 1001,12

      Умножение и деление двоичных чисел

      Двоичное деление

      Зная операции двоичной арифметики, можно переводить числа из двоичной системы счисления в любую другую.
      Пример: Перевести число 1011110112 в десятичную систему счисления.
      Поскольку 1010 = 10102, запишем

      Цифры двоичного деления

      Полученные остатки, 10012 = 910, =1112 = 710, 112 = 310. Искомое число 1011110112 = 37910.

      Комментариев к записи: 5

      Как сложить числа если они в РАЗНЫХ системах счисления. ??

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

      перевести в однй систему счисления

      Похожие вопросы

      Ваш браузер устарел

      Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *