Задачи на системы счисления
Системы счисления нужны для записи и обработки числовой информации. На экзамене важно уметь переводить числа между системами, находить неизвестное основание и выполнять арифметические действия, не смешивая правила разных систем.
1. Позиционная запись и основание
В позиционной системе значение цифры зависит от её места в записи. Основание системы \(q\) показывает, сколько различных цифр используется: от \(0\) до \(q-1\). Например, в десятичной системе основание равно \(10\), а в двоичной — \(2\). Подробнее о записи числа и его месте в разряде см. в статьях позиционная система счисления и разряд числа.
Основание \(q\) — целое число \(q\ge 2\), определяющее набор цифр и веса разрядов. В системе с основанием \(q\) допустимы цифры \(0,1,\ldots,q-1\).
Индекс в скобках — основание системы. Если индекс не указан, обычно подразумевается десятичная система. Запись \((1011)_2\) означает не число «одна тысяча одиннадцать», а сумму \(1\cdot2^3+0\cdot2^2+1\cdot2+1\).
Каждая цифра записи должна быть меньше основания: \(0\le a_i<q\). Поэтому цифра \(8\) недопустима в восьмеричной системе, а цифра \(2\) недопустима в двоичной.
2. Перевод чисел между системами
Перед решением полезно повторить алгоритмы на странице перевод чисел между системами счисления. Для перевода целого числа из системы с основанием \(q\) в десятичную используют разложение по степеням основания.
- Запишите разряды числа справа налево: нулевой разряд имеет вес \(q^0=1\).
- Умножьте каждую цифру на соответствующую степень основания.
- Сложите полученные произведения.
Для обратного перевода из десятичной системы в систему с основанием \(q\) число последовательно делят на \(q\). Остатки записывают снизу вверх: последний полученный остаток становится первой цифрой результата.
Восьмеричное число можно переводить в двоичное заменой каждой цифры на три двоичных разряда: \(0\to000\), \(7\to111\). Для шестнадцатеричной системы используют группы по четыре бита. Нули слева в первой группе можно убрать.
Какое десятичное значение имеет число \((10101)_2\)?
3. Как найти неизвестное основание
В заданиях экзамена может быть дана запись числа и его значение в десятичной системе, например \((132)_q=60\). Тогда составляют уравнение по разрядам. Неизвестное основание входит в степени, поэтому сначала раскрывают позиционную запись, а затем решают уравнение.
Если \((a_na_{n-1}\ldots a_0)_q=N\), то основание находят из уравнения \(a_nq^n+a_{n-1}q^{n-1}+\ldots+a_0=N\). После решения обязательно проверяют \(q\ge2\) и \(q>a_i\) для всех цифр.
Разобранный пример: поиск основания
Найдём основание \(q\), если \((132)_q=60\). Цифра \(3\) уже показывает, что \(q>3\).
Полученное уравнение не имеет целого корня, значит условие \((132)_q=60\) не задаёт целочисленное основание. Это тоже результат: в корректном экзаменационном задании обычно получается допустимое целое \(q\). Важно не округлять найденное основание. Например, для записи \((132)_q=42\) уравнение \(q^2+3q+2=42\) даёт \(q^2+3q-40=0\), откуда \(q=5\) или \(q=-8\); выбираем \(q=5\), потому что основание положительно и больше цифры 3.
Иногда основание удобно искать перебором. Для короткой записи можно подставлять целые \(q\) от \(m+1\), где \(m\) — максимальная цифра, до разумной границы, пока равенство не выполнится.
4. Арифметические операции в разных системах
Сложение, вычитание и умножение выполняют столбиком почти так же, как в десятичной системе. Отличается правило переноса: перенос происходит после достижения основания \(q\). Основные приёмы собраны также на странице арифметика в системах счисления.
- При сложении, если сумма в разряде не меньше \(q\), записывают остаток от деления на \(q\), а \(1\) переносят в следующий разряд.
- При вычитании, если верхняя цифра меньше нижней, занимают \(1\) единицу старшего разряда. Она равна \(q\) единицам текущего разряда.
- При умножении промежуточные результаты сдвигают на один разряд влево, как обычно, но все цифры и переносы считают в основании \(q\).
Рассмотрим \((57)_8+(26)_8\). В разряде единиц: \(7+6=13_{10}=15_8\), записываем \(5\), переносим \(1\). В разряде восьмёрок: \(5+2+1=8_{10}=10_8\), записываем \(0\), переносим \(1\). Ответ: \((105)_8\).
Проверка переводом в десятичную систему: \(57_8=47\), \(26_8=22\), сумма \(69\), а \(105_8=1\cdot64+0\cdot8+5=69\).
5. Экзаменационный алгоритм и ошибки
- Определите, что требуется: перевод, поиск основания или арифметическая операция.
- Выпишите основание возле каждой записи и проверьте допустимость цифр.
- Для перевода в десятичную раскройте разряды; для обратного перевода применяйте деление с остатком.
- При неизвестном основании составьте уравнение и оставьте только целые допустимые решения.
- Проверьте ответ обратным переводом или подстановкой.
Путают цифру и число: в основании \(q\) цифра \(q\) недопустима. Читают остатки не в том порядке: при последовательном делении их записывают снизу вверх. Забывают перенос: в двоичной системе \(1+1=10_2\), а не \(2\). Решают квадратное уравнение и берут оба корня: отрицательное основание не подходит. Смешивают основания: выражение \(7+5=14\) верно в десятичной системе, но в восьмеричной записи результат будет \(14_8\), если сумма равна \(12_{10}\).
Вес разряда справа налево: \(q^0,q^1,q^2,\ldots\). Перевод в десятичную систему — сумма цифр, умноженных на веса. Перевод из десятичной — деление на основание и чтение остатков снизу вверх.
Быстрая проверка
Главное
- Основание \(q\) определяет допустимые цифры и веса разрядов \(q^0,q^1,q^2,\ldots\).
- Для перевода в десятичную систему раскладывают запись по степеням основания.
- Для обратного перевода делят число на новое основание, а остатки читают снизу вверх.
- Неизвестное основание находят из уравнения по разрядам и проверяют допустимость корня.
- В арифметике перенос выполняют каждый раз, когда значение разряда достигает основания.