Правила арифметики в системах счисления
Арифметические действия в позиционной системе счисления выполняются почти так же, как в десятичной, но перенос или заём происходят при достижении основания системы. Перед вычислениями полезно повторить основание системы счисления и разложение числа по разрядам.
Основание и разряды
Позиционная система счисления имеет основание \(p\). В одном разряде можно записать цифру от \(0\) до \(p-1\). Если после сложения в разряде получилась величина \(p\) или больше, из этого разряда выделяют единицу следующего разряда. При вычитании, если верхней цифры недостаточно, занимают одну единицу соседнего старшего разряда; она превращается в \(p\) единиц текущего разряда.
Основание \(p\) — количество цифр, используемых в системе, включая ноль. Например, в двоичной системе \(p=2\) и цифры только \(0,1\); в восьмеричной \(p=8\) и цифры \(0,1,\ldots,7\); в шестнадцатеричной \(p=16\) используются цифры \(0,\ldots,9\) и буквы \(A,\ldots,F\), где \(A=10\), \(F=15\).
Индекс \(0\) указывает на младший разряд. Поэтому при письменных вычислениях числа выравнивают по правому краю: справа находятся разряды единиц, левее — разряды \(p\), \(p^2\) и так далее.
В любой системе счисления перенос равен \(1\) единице следующего разряда, то есть \(p\) единиц текущего разряда. Например, \(10_2\) — это две единицы, \(10_8\) — восемь единиц, а \(10_{16}\) — шестнадцать единиц.
Сложение
Сложение выполняют справа налево. Складывают цифры одного разряда и добавляют перенос из предыдущего разряда. Если результат меньше основания, записывают его как цифру текущего разряда. Если результат не меньше основания, записывают остаток от деления на \(p\), а частное переносится влево.
Здесь \(a\) и \(b\) — цифры складываемых чисел, \(c\) — перенос из младшего разряда. Для двух цифр перенос обычно равен \(0\) или \(1\), но при сложении нескольких слагаемых он может быть больше.
На каждом разряде сложите цифры и перенос. Запишите остаток при делении результата на основание, а частное перенесите в следующий разряд.
Например, в восьмеричной системе \(7+5=12_{10}=14_8\): в текущем разряде записывают \(4\), а \(1\) переносят влево. Цифра \(8\) в восьмеричной записи недопустима, поэтому результат нельзя оставлять как «12» с цифрой, полученной обычным десятичным сложением.
Вычитание
Вычитание также выполняют справа налево. Если верхняя цифра больше или равна нижней, действие выполняют обычно. Если верхняя цифра меньше нижней, занимают \(1\) единицу соседнего разряда. В текущем разряде это добавляет \(p\), а в соседнем старшем разряде уменьшает цифру на \(1\).
Занимать можно через несколько нулевых разрядов. Тогда ближайший слева ненулевой разряд уменьшается на \(1\), а все нулевые разряды между ним и текущим получают по \(p-1\) единиц.
Вычтем \(10000_2-1_2\). Единицу нельзя вычесть из нуля, поэтому заём проходит через все нулевые разряды. Старшая единица уменьшается до нуля, а разряды после неё превращаются в единицы. Получаем \(01111_2\), то есть \(1111_2\).
Проверить вычитание можно сложением: к разности прибавляют вычитаемое и получают уменьшаемое. Это особенно полезно, если в записи было несколько заёмов.
Какой перенос возникает при сложении \(6_8+5_8\)?
Умножение
При умножении столбиком каждую цифру одного множителя умножают на каждую цифру другого, начиная с младшего разряда. Если произведение с учётом переноса равно или превышает основание, его младшую цифру записывают в текущий разряд, а старшую часть переносят в следующий.
Частичные произведения сдвигают влево на число разрядов, соответствующее позиции цифры множителя. Сдвиг на один разряд в системе с основанием \(p\) равносилен умножению на \(p\).
Приписывание справа одного нуля умножает число на основание: \((a)_p\cdot p=(a0)_p\). Например, \(101_2\cdot2=1010_2\), а \(37_8\cdot8=370_8\).
Разобранный пример
Выполним в шестнадцатеричной системе действие \(2A_{16}+17_{16}\). Буква \(A\) означает цифру \(10\). Сначала складываем младшие разряды, затем старшие.
Проверка переводом в десятичную систему: \(2A_{16}=2\cdot16+10=42\), \(17_{16}=1\cdot16+7=23\), сумма \(65\). Число \(41_{16}=4\cdot16+1=65\), значит, результат верен.
Можно проверить результат двумя способами: перевести исходные числа и ответ в десятичную систему либо выполнить обратное действие. Для больших чисел часто достаточно проверить младшие разряды и наличие корректных цифр.
Типичные ошибки и связь с экзаменационными задачами
В заданиях на арифметику в системах счисления важно не только получить ответ, но и правильно трактовать запись. Если требуется сравнить выражения или найти неизвестное основание, удобно раскрывать числа через степени основания, как в разложении по разрядам. Для преобразований между основаниями может понадобиться метод последовательного деления.
1. Использование недопустимой цифры: в системе с основанием \(p\) цифра \(p\) невозможна. 2. Выравнивание чисел по левому, а не по правому краю. 3. Забытый перенос или заём. 4. Неправильный заём через нули. 5. Перевод только одного слагаемого в десятичную систему. 6. Запись десятичного результата без обратного перевода в требуемую систему.
- Определите основание и проверьте допустимость всех цифр.
- Выровняйте числа по правому краю.
- Выполняйте действие справа налево.
- После каждого разряда учитывайте перенос или заём.
- Проверьте ответ обратным действием или переводом в десятичную систему.
Контрольный тест
Проверь себя
Главное
- В системе с основанием \(p\) допустимы цифры от \(0\) до \(p-1\).
- При сложении записывают остаток по модулю \(p\), а частное переносят в следующий разряд.
- При вычитании заём из старшего разряда добавляет к текущему разряду \(p\).
- При умножении используют формулу \(a\cdot b+c\) и выполняют перенос по тому же правилу.
- Числа всегда выравнивают справа, а результат полезно проверять переводом или обратным действием.