Разное

Основания системы счисления это: Основание системы счисления

4.1. Что такое система счисления?

Главная  > Справочник по образованию  > Энциклопедия де-факто  > Математика и компьютерные дисциплины  > Информатика  > Электронная версия учебника по информатике 10-11  > Глава 1.4. Арифметические основы компьютеров (Системы счисления)  > 4.1. Что такое система счисления?

Система счисления — это способ записи чисел с помощью заданного набора специальных знаков (цифр).

Существуют позиционные и непозиционные системы счисления.

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

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

(позиции) в последовательности цифр, изображающих число. Например, в числе 757,7 первая семерка означает 7 сотен, вторая — 7 единиц, а третья — 7 десятых долей единицы.

Сама же запись числа 757,7 означает сокращенную запись выражения

700 + 50 + 7 + 0,7 = 7•102 + 5•101 + 7•100 + 7•10-1 = 757,7.

Любая позиционная система счисления характеризуется своим основанием.

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

За основание системы можно принять любое натуральное число — два, три, четыре и т.д. Следовательно, возможно бесчисленное множество позиционных систем

: двоичная, троичная, четверичная и т.д. Запись чисел в каждой из систем счисления с основанием q означает сокращенную запись выражения

an-1 qn-1 + an-2 qn-2+ . .. + a1 q1 + a0 q0 + a-1 q-1 + … + a-m q-m,

где ai

— цифры системы счисления; n и m — число целых и дробных разрядов, соответственно.

Например:

Другие записи

10.06.2016. 4.10. Как производятся арифметические операции в позиционных системах счисления? (Сложение, Вычитание, Умножение, Деление)

Рассмотрим основные арифметические операции: сложение, вычитание, умножение и деление. Правила выполнения этих операций в десятичной системе хорошо известны — это сложение, вычитание, умножение столбиком…

10. 06.2016. 4.11. Как представляются в компьютере целые числа?

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

10.06.2016. 4.12. Как компьютер выполняет арифметические действия над целыми числами?

Сложение и вычитание В большинстве компьютеров операция вычитания не используется. Вместо нее производится сложение уменьшаемого с обратным или дополнительным кодом вычитаемого. Это позволяет существенно…

10.06.2016. 4.13. Как представляются в компьютере вещественные числа?

Вещественными числами (в отличие от целых) в компьютерной технике называются числа, имеющие дробную часть. При их написании вместо запятой принято писать точку. Так, например, число 5 — целое, а числа…

10. 06.2016. 4.14. Как компьютер выполняет арифметические действия над нормализованными числами?

К началу выполнения арифметического действия операнды операции помещаются в соответствующие регистры АЛУ. Сложение и вычитание При сложении и вычитании сначала производится подготовительная операция,…

Системы счисления (СС): основание СС, базисные цифры

 

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

0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

Эти цифры введены для обозначения десяти последовательных целых чисел от 0 до 9. Обозначая число «ДЕСЯТЬ», мы используем уже имеющиеся цифры «10». При этом значение каждой из цифр поставлено в зависимость от того места (позиции), где она стоит в изображении числа. Такая система счисления называется позиционной. (Примером непозиционной системы счисления является римская система счисления).

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

Так, число 123,45 можно записать в виде выражения

123,45 = 1·102+2·101+3·100+4·10-1+5·10-2.

Аналогично десятичная запись произвольного числа x в виде последовательности цифр anan-1…a1a0,a-1a-2…a-m основана на представлении этого числа в виде полинома:

x = an·10n+an-1·10n-1+…+a1·101+a0·100+

+a-1·10-1+a-2·10-2+…+a-m·10-m

где ai — десятичные цифры. При этом запятая, отделяющая целую часть от дробной, является, по существу, началом отсчета.

 
Число P единиц какого-либо разряда, объединяемых в единицу более старшего разряда, называется основанием системы счисления, а сама система счисления называется P-ичной. Так, в десятичной системе счисления основанием системы является число 10.

Для записи произвольного числа в P-ичной системе счисления достаточно иметь P различных цифр. Цифры, служащие для обозначения чисел в заданной системе счисления называются базисными.
Запись произвольного числа x в позиционной системе счисления с основанием P в виде полинома:

x = an·Pn+an-1·Pn-1+…+a1·P1+a0·P0+a-1·P-1+a-2·P-2+…+a-m·P-m

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

В качестве базисных чисел обычно используются числа от 0 до P-1 включительно. Для указания того, в какой системе счисления записано число, основание системы указывается в виде нижнего индекса. В десятичной записи, например 12,43810.

Назад: Представление данных и архитектура ЭВМ

Почему мы используем систему счисления с основанием 10? – Tales of a New Qualified Teacher

Опубликовано Кимберли Ренни

Простой вопрос, который могут подумать многие люди. У нас десять пальцев, так что это может быть инструментом, помогающим нам считать. Однако сколько учителей говорили вам в детстве не использовать пальцы для счета? Я помню, как прятал пальцы под столом, начиная примерно с пятого класса, чтобы считать.

Как насчет тем, которые мы используем в математике, которые не используют систему счисления с основанием? Время. Время использует базу 60 для минут и секунд. Время использует систему с основанием двенадцать для часов. Почему мы не учитываем ни одну из этих базовых систем? Вот почему время может быть очень трудным для ребенка, чтобы учиться. При подсчете они использовали только десятичную систему счисления, а затем, когда мы вводим время, все знакомое вылетает из окна. Теперь они знакомятся со счетом по 60 за каждую минуту, за каждый час. Другая ученица на этом факультативе обсуждала, должны ли мы по-прежнему уделять время обучению из-за этого (Dunne, 2015) – ее мнение интересно для чтения.

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

Как уже кратко обсуждалось в предыдущем посте («Наша система счисления»), существует множество различных систем счисления, которые считают в разных системах счисления. Шумеры «разработали самую раннюю известную систему счисления», в которой использовалась система с основанием 60. Система счисления с основанием 60 возникла в результате слияния двух племен, поскольку одно использовало систему счисления с основанием 12, а другое использовало систему счисления с основанием 5, и наименьшее общее кратное обеих систем было бы 60. Их символы для их системы счисления ниже:

Система с основанием 60, возможно, сделает время обучения намного проще, чем система с основанием 10. Это имело бы смысл для минут и секунд, но также было бы очень запутанным для часов. С другой стороны, в этой системе много символов, которые детям может быть довольно сложно выучить.

Однако у десятичной системы есть ряд преимуществ. Система с основанием 10 позволяет просто объяснять сотни десятков и единиц и т. д. Использование системы с основанием два, такой как племя арара в Амазонке, довольно быстро станет очень повторяющимся и запутанным, но, с другой стороны, использование системы с основанием 60 потребует много времени.

долго, пока вы не обменяете его на другой, чтобы начать снова. Система с основанием 10 имеет то преимущество, что она достаточно велика, чтобы не повторяться, но достаточно мала, чтобы вам не приходилось постоянно считать перед обменом.

Это дало мне глубокое понимание того, почему возникла наша базовая система. Преимущества системы с основанием десять и почему это просто, а также сложно, когда речь идет о таких вещах, как время или углы, для детей, чтобы научиться считать. Хотя существует много различных типов систем счисления, которые не просто отличаются от обычной системы счисления с основанием десять или римской системы счисления, которым мы учим детей, я мог бы использовать их, чтобы расширить знания детей, в моей будущей карьере, о различных типах систем счисления, таких как демонстрируя им ян, тан, тетеру… видео ниже как другой тип системы счисления (система с основанием 20), которая использовалась для подсчета овец, более широко использовавшаяся в начале 20 9 г.0023-й

-й век, но до сих пор используется фермерами.

 

Ссылки:

Dunne, J. (2015)  Не пора ли отбросить время? Доступно по адресу: https://blogs.glowscotland.org.uk/glowblogs/jennysjourney/2015/10/25/is-it-time-to-scrap-time/ (дата обращения: 11.04.15)

Рубрики3.1 Преподавание и обучение, Знакомство с математикойТегиСчет, Математика, Системы счисления

Базы странных чисел

Если вы занимаетесь программированием компьютеров, вы, вероятно, хорошо знакомы с системами счисления, отличными от десятичных.

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

В зависимости от систем, с которыми вы работаете, у вас может быть даже некоторый опыт работы с восьмеричным числом (с основанием 8).

1110100000101 2 = 16405 8 = 7429 10 = 1D05 16

89

(Стандартный способ обозначения базы счисления, если это не очевидно из контекста, — с нижним индексом в конце, рядом с наименее значащей цифрой).

Даже не осознавая этого, вы, вероятно, неплохо знакомы с шестидесятеричным числом (с основанием 60), поскольку в минуте шестьдесят секунд, а в часе шестьдесят минут. Если вы использовали десятичное представление времени (или работали с углами или координатами широта/долгота), вам, возможно, приходилось конвертировать между ними (в научных калькуляторах обычно есть встроенные функции для обработки DMS-преобразований, потому что они очень распространены).

Полчаса (0,5 часа) = 30 минут

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

  • В одном фунте (веса) 16 унций, и если я спрошу отца о его весе, он все равно ответит в камнях (в камне 14 фунтов).

  • До децимиляции в Великобритании было 12 пенни в одном шиллинге и 20 шиллингов в одном фунте (что означает, что один фунт = 240 пенни). Я родился до децимиляции, и когда я учился в школе, во многих моих старых учебниках были проблемы со сложением, вычитанием, умножением и делением различных сумм в фунтах, шиллингах и пенсах.

  • В сутках 24 часа (или двенадцать повторяющихся часов, в зависимости от вашей точки зрения).

  • Многие языки демонстрируют склонность к системам счисления с основанием 20 (ирландский, галльский…), а майя также использовали десятичную систему счисления (с основанием 20).

  • Вы покупаете пончики дюжинами, а пиво — ящиками!

Позиционное обозначение

Большинство систем счисления, которые мы используем сегодня, можно описать как 9. 0110 позиционная нотация (иногда называемая позиционной нотацией). Позиция, в которой находится цифра, последовательно определяет ее значение. Этот сильно упрощает арифметику.

Наиболее распространенным примером непозиционной записи являются римские цифры. Здесь один и тот же символ может иметь разные значения в зависимости от его положения и модифицируется окружающими его символами. Хаос!

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

Представления непозиционных обозначений, однако, не всегда плохи и хаотичны. Есть несколько невероятно полезных систем представления. Вероятно, самый известный в двоичном коде Грея.

Стандарт для позиционной записи состоит в том, что для каждой цифры, которую вы перемещаете влево, вы увеличиваете степень на единицу основания, на которое умножается любая цифра в этом столбце. В основе 10 первый столбец представляет собой меру единиц 10 0 , следующий столбец представляет собой меру десятки 10 1 , затем сотни 10 2 , тысяч 10 3

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

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

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

Где b — это основание числа, а d i — это i -я цифра в номере.

Дроби

Дробные части числа могут быть представлены цифрами, расположенными справа от «десятичной точки», и они используются для представления прогрессивно отрицательных показателей степени основания. В десятичной системе: 1 / 10ths (10 -1 ), 1 / 100ths (10 -2 ), 1 / 1000 -й (10 -3 / 1000 -й (10 -3 )…

  • 9005 -й . 0,125 10 = 1 / 10 + 2 / 100 + 5 / 1000

    . Нет причины, почему номерной базой по имени 7

    . должно быть целым числом!

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

     

    основание №

    Несмотря на то, что число π иррационально (в десятичном виде), это не проблема. Мы можем просто применить те же принципы увеличения степени основания и представить числа, основанные на степенях числа π.

    … π 3 , π 2 , π 1 , π 0

    Окружность диаметром 1 π будет иметь длину окружности 10 π (а окружность диаметром 10 π будет иметь длину окружности 100 π …)

    Круг с радиусом 1 π будет иметь площадь 10 π , круг с радиусом 10 π будет иметь площадь 1000 π и круг с радиусом 100 π будет иметь площадь 100000 π

    база

    e

    Основание, использующее трансцендентную константу e , обладает некоторыми интересными свойствами, одно из которых заключается в том, что натуральные логарифмы ведут себя немного как «десятичные» логарифмы:

    ln(1 e ) = 0, ln(10 e ) = 1, ln(100 e ) = 2, ln(1000 e ) = 3

    основание

    √2

    Хорошо, это увлекательно: основание √2 имеет интересную связь с ванильным основанием 2 (двоичным).

    Чтобы преобразовать любое число из двоичного в основание √2, все, что вам нужно сделать, это вставить ноль между каждой цифрой двоичного представления!

    1911 10 = 11101110111 2 = 101010001010100010101 √2 5118 10 = 1001111111110 2 = 1000001010101010101010100 √2

    Отсюда видно, что любое целое число может быть представлено в системе счисления √2 без использования «десятичной точки», более строго называемой «точкой счисления».

    основание

    φ

    Ах, золотое сечение. Он любит всплывать во множестве интересных мест (некоторые из них даже правдивы).

    Основа золотого сечения была изучена настолько, что получила разговорное название Phinary!

    Любое неотрицательное действительное число может быть представлено в виде числа с основанием φ, используя только цифры 0 и 1 и избегая последовательности цифр «11». Ниже приведены первые десять десятичных цифр и их двоичные эквиваленты:

    .
    Десятичный Степени φ Основание φ
    1 ф 0 1
    2 φ 1 + φ −2 10.01
    3 φ 2 + φ −2 100.01
    4 φ 2 + φ 0 + φ −2 101.01
    5 φ 3 + φ −1 + φ −4 1000.1001
    6 φ 3 + φ 1 + φ −4 1010.0001
    7 φ 4 + φ −4 10000. 0001
    8 φ 4 + φ 0 + φ −4 10001.0001
    9 ф 4 + ф 1 + φ −2 + φ −4 10010.0101
    10 φ 4 + φ 2 + φ −2 + φ −4 10100.0101

    Некоторые из этих странных оснований могут показаться немного произвольными (и, возможно, забавными, если вы математик), но есть ли у них какое-либо «практическое» применение? Ну да, может быть, они делают.

    Например,

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

    (Двоичное представление числа является «длинным», но использует только одно из двух значений. И наоборот, сохранение чего-либо в десятичном виде может сделать число «короче», но каждый символ может быть извлечен из большего количества значений. Число хранение в базе e является наиболее эффективным с математической точки зрения способом кодирования, согласно теории хранения информации*).

    Это одна из тех проблем типа «Златовласки». Сделайте систему счисления слишком маленькой (например, двоичной), и хотя ваш «словарь» используемых символов очень мал, результирующая строка, представляющая число, будет очень длинной. И наоборот, наличие большой системы счисления сократило бы длину строки, необходимой для представления числа, но каждая цифра должна была бы исходить из большого словаря, и для кодирования каждой цифры потребовалось бы больше места.

    «Этот слишком большой», «Этот слишком маленький» … какая система счисления «В самый раз»?

    … ответ по основанию e.

    Другая аналогия — письменность. Используя западный (латинский) алфавит, мы можем писать слова, но средняя длина слов составляет много символов каждое. Сравните это с письменным китайским языком, где тысячи символов, а для многих слов требуется всего один символ.

    *За пределами аналогового мира цифровые компьютеры хранят точные квантованные значения для представлений. Если бы компьютерные схемы были изготовлены для хранения данных с тремя состояниями вместо двоичных (3 ближе к целому числу e , чем 2), то компьютеры могли бы хранить данные более эффективно.

    e &прибл. 2,71828182845

    353602874713526624977572470936999595 …

    Мы немного отклонились от темы, но та же математика применима к таким вещам, как системы меню и системы меню телефона. Если бы эти сервисы предлагали меню с тройным деревом (трех состояний), они минимизировали бы среднее количество вариантов меню, которые средний клиент должен был бы прослушать, чтобы добраться до желаемого места.

    На заре вычислительной техники было построено несколько экспериментальных советских компьютеров, которые обрабатывали с использованием сбалансированного троичного (подробнее об этом позже) вместо двоичного, самым известным из которых является Сетунь (изображение справа), названный в честь реки в Москве. . Более пятидесяти таких компьютеров были построены в 1960-х и 1970-х годах.

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

    Использование сбалансированного троичного числа + , 0 , для хранения значений ( «trit» вместо «bit» )*, как мы увидим ниже, дает интересные преимущества для кодирования. знак числа тоже.

    Примечание . Существует небольшая разница между сбалансированным тройным значением, в котором используются значения: −1, 0, +1 ср. ванильный тернар, который использует значения: 0, 1, 2. Подробнее об этом чуть позже, ниже…

    *Набор «тритов» образует «трите», точно так же, как «биты» составляют «байт»!

    Далее по кроличьей норе (отрицательные корни)

    Хорошо, пойдем дальше по кроличьей норе. Как насчет того, чтобы вместо дробных оснований использовать отрицательные основания? Математически, опять же, это легко сделать. Нечетные степени отрицательных оснований создают отрицательные числа, но четные степени производят положительные. Поскольку мы складываем эти цифры, по-прежнему можно создавать разные числа. Например, давайте посмотрим на базу -2. Иногда называют «Негабинарий» .

    111011001 -2

    = 1×(-2) 8 + 1×(-2) 7 + 1×(-2) 6 + 0×(-2) 5 + 1×(-2) 4 + 1×(-2) 3 + 0×(-2) 3 + 0×(-2) 1 + 1×(-2) 0

    = 1×(256) + 1 ×(-128) + 1×(64) + 0×(-32) + 1×(16) + 1×(-8) + 0×(4) + 0×(-2) + 1×(1)

    = 256 − 128 + 64 + 16 − 8 + 1

    = 201 10

    Существует очень интересное свойство отрицательной системы счисления: Нет различия между положительными и отрицательными числами ; все они просто числа, и все они закодированы одинаково. Знак числа инкапсулирован в число. Нам не нужен знаковый бит.

    Если все, что вы когда-либо использовали, — это целые числа без знака, вы, возможно, не видите в этом большого преимущества, но для всех остальных числа со знаком обычно кодируются с использованием дополнения до двух (вроде того, как одометр на автомобиле обертывает круглосуточно после получения 99999), а отрицательные числа представлены в обратном порядке (сверху) и идентифицируются по установленному самому верхнему биту (наиболее значащему биту).

    Опять же, это хорошо, если вы имеете дело с числами, которые закодированы всего в один байт/слово (в зависимости от ширины, с которой вы имеете дело), ​​но если вам нужно кодировать и обрабатывать арифметические операции для больших чисел, вам нужно охватить эти числа в нескольких словах. Теперь слова другие. «Младшие» слова числа используют все биты, но самое значимое слово имеет зарезервированный верхний бит, чтобы (потенциально) указать, что число отрицательное.

    Давайте посмотрим на непорядковое десятичное число:

    Мы можем применить ту же самую стратегию отрицательного счисления для описания чисел с основанием -10 (называемых «непорядковыми»)

    17478 -10

    = 1×(-10) 4 + 7×(-10) 3 + 4×(-10) 2 + 7×(-10) 1 + 8×(-10) 0

    = 1×(10000) – 7×(1000) + 4×(100) – 7×(10) + 8×(1)

    = 10000 — 7000 + 400 — 70 + 8

    = 3338 10

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

    Таблицы чисел

    Здесь представлен набор чисел в десятичном, негадеричном, негабинарном и негатернарном виде:

    Десятичная база 10 Негадесятичная база -10 Негабинарная база -2 Negaternarybase -3
    -100 1900 11101100 121112
    -64 76 11000000 120212
    -32 48 100000 1021
    -16 24 110000 1102
    -15 25 110001 1220
    -14 26 110110 1221
    -13 27 110111 1222
    -12 28 110100 1210
    -11 29 110101 1211
    -10 10 1010 1212
    -9 11 1011 1200
    -8 12 1000 1201
    -7 13 1001 1202
    -6 14 1110 20
    -5 15 1111 21
    -4 16 1100 22
    -3 17 1101 10
    -2 18 10 11
    -1 19 11 12
    0 0 0 0
    1 1 1 1
    2 2 110 2
    3 3 111 120
    4 4 100 121
    5 5 101 122
    6 6 11010 110
    7 7 11011 111
    8 8 11000 112
    9 9 11001 100
    10 190 11110 101
    11 191 11111 102
    12 192 11100 220
    13 193 11101 221
    14 194 10010 222
    15 195 10011 210
    16 196 10000 211
    32 172 1100000 12122
    64 144 1000000 11101
    100 100 110100100 10201
    1000 19000 10000111000 2212001
    10000 10000 111111100010000 222112101

    У вас будут отмечены. нечетное количество цифр.

    Сложение двух отрицательных чисел

    Теперь, когда у нас есть два необратимых числа, как их сложить?

    На самом деле это не так сложно, как вы думаете, потому что непорядковая система счисления по-прежнему является позиционной системой счисления. Мы просто применяем правила сложения, которым научились в школе; столбцы суммирования (от наименее значимых к наиболее значимым, с переносом вперед по мере необходимости).

    Во-первых, тривиальный пример, сложение двух «маленьких» чисел (без переноса). Какова сумма 12343 -10 и 6101 -10 ?

    12343 -10 = 8263 10 и 6101 -10 = -5899 10

    Обратите внимание, что здесь два числа обрабатываются одинаково, хотя одно из них оказывается отрицательным. ?

    Он ведет себя так, как мы и ожидали, мы просто суммируем каждый столбец. Сумма первой цифры 1+3=4. Пока все хорошо, и мы можем пройтись по колоннам по порядку. Результат 18444 -10 , что соответствует 2364 10 , как мы и ожидали (=8263 10 −5899 10 ).

    Хорошо, теперь давайте представим более сложный пример. Что делать, если у нас есть переполнение (перенос) в любом столбце? Ответ, как и в традиционной арифметике, состоит в том, что мы переносим в следующий столбец, но, поскольку мы имеем дело с отрицательным числом, мы переносим на отрицательное .

    Складывая 4 и 7 вместе, мы получаем 11. Мы записываем 1 в сумме, переносим -1 в начало следующего столбца и продолжаем. Затем мы обнаруживаем, что −1+4=3, так что на этот раз переноса нет…

    Мы продолжаем этот процесс до тех пор, пока не достигнем конца (что опять же, к счастью, именно этого мы и ожидаем!) Каждый раз мы продвигаемся вперед по мере необходимости.

    12707 -10 + 14444 -10 = 25131 -10 8707 10 + 6364 10 = 15071 10

    Нам нужно научиться последнему трюку, а потом мы дома и ни о чем. Что мы делаем, если нам нужно перенести вперед отрицательную единицу, а все мы в соседней колонке нули? (у нас не может быть -1, так как каждая цифра должна быть в диапазоне 0-9). Ответ довольно прост, так как -1 в непорядковом запятом равно 19, мы просто добавим это к началу (это все равно, что сказать, что мы «заимствуем» 1 из следующей цифры, а затем используем это, чтобы помочь убрать перенос, который распространился вперед) . Чтобы «одолжить» единицу, мы вычитаем отрицательную единицу, что равносильно переносу положительной единицы вперед.

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

    Интересно, что в этом примере отрицательное и десятичное представление двух добавляемых чисел совпадают.

    10009 -10 +

    -10 = 1

    1 -10 10009 10 +

    10 = 100011 10

    Мы можем применить ту же стратегию для сложения отрицательных двоичных чисел; применяя принципы, которые мы изучили в школе, и продвигая вперед по мере необходимости. Нам нужно быть немного более осторожными с негабинарными, так как даже при сложении двух чисел нам может понадобиться перенести два столбца вперед за один раз!

    Сбалансированный тройной

    Следует еще упомянуть о сбалансированной тройке, так как мы ссылались на нее ранее применительно к раннесоветским компьютерам. Традиционный троичный использует значения: 0,1,2 для кодирования, используя их для умножения мощности основания. Сбалансированная тройка использует цифры: −1, 0, +1.

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

    Поскольку любая цифра может находиться в одном из трех состояний, и было бы (очень, очень) запутанно предлагать, чтобы «2» представляло «-1», используется другое соглашение.

    В старой русской литературе в документации иногда использовалась перевернутая цифра «1» для обозначения «-1», но это трудно читать и легко спутать. Другие исследователи использовали «T» для обозначения «-1», а другие до сих пор используют «Θ». Я собираюсь использовать «T» ниже.

    … + д 2 3 2 + D 1 3 1 + D 0 3 0 , где D N IS {−1, 0, +1}

    Примеры:

    1T0 BAL3 = 1 × 3 2 2 2 23 2 2 23 2 2 23 2 2 23 2 2 3 23 2 2 2 2

    1T0 . − 1×3 1 + 0×3 0 = 9 − 3 + 0 = 6 10

    TT1 bal3 = −1×3 2 9021 + 1×9024 + 933 9 0 3 0 = -9 — 3 + 1 = -11 10

    101 bal3 = 1×3 2 + 0×3 1 + 1×3 3 0 = + 0 + 1 = 10 10

    1T10 bal3 = 1×3 3 − 1×3 2 + 1×3 1 + 0×3

    0 0 = 21 10

    Сбалансированный тройной код — это круто!

    Еще глубже в кроличью нору — смешанные системы счисления

    Нет никаких причин, по которым перемещение влево в позиционной системе счисления обязательно должно увеличивать показатель степени основания. Это просто общее определение и стандарт, с которым мы согласны. Если вы описываете правила и последовательно их применяете, вы можете кодировать числа так, как вам хочется. Например, вы можете использовать столбцы для представления факториалов (или, что еще лучше, 9).0110 праймеры , которые похожи на факториалы, но каждый следующий член, на который вы умножаете, является не следующим числом в последовательности, а следующим появляющимся простым ; Примориалы — это целые числа без квадратов, и каждое из них имеет больше различных простых делителей, чем любое меньшее число).

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

    Факторная база
    Цифра д 7 д 6 д 5 д 4 д 3 д 2 д 1 д 0
    Основание 8 7 6 5 4 3 2 1
    Разрядное значение 7! 6! 5! 4! 3! 2! 1! 0!
    Десятичный 5040 720 120 24 6 2 1 1
    Первобытная база
    Цифра д 6 д 5 д 4 д 3 д 2 д 1 д 0
    Основание 17 13 11 7 5 3 2
    Разрядное значение 6 =13) 5 =11) 4 =7) 3 =5) 2 =3) (p 1 =2) 0 =1)
    Десятичный 30030 2310 210 30 6 2 1

    24201 ! = 349 10

    = (2 &times 5!) + (4 &times 4!) + (2 &times 3!) + (0 &times 2!) + (1 &times 1!) = 240 + 96 + 12 + 0 + 1 = 349

    Если математика со смешанной системой счисления звучит безумно, вспомните некоторые вступительные комментарии в этой статье. Мы живем в смешанном радиксном обществе. В минуте 60 секунд, в часе 60 минут, а в сутках 24 часа, а в году (почти) 365,25 дня…

    Последняя остановка сумасшедшего поезда — сложные корни

    Я не буду говорить о них здесь, но нет причин ограничивать себя реальными числами при выборе базы счисления! Почему бы не использовать сложную систему счисления?

    Три хорошо изученных основания — это основание 2i (известное как мнимое основание Quatar), основание -1+i и основание -i-1. Кватеримнимая система счисления была впервые предложена Дональдом Кнутом в 1955 году в конкурсе на поиск талантов в средней школе!

    Как мы видели, следствием использования отрицательного основания для кодирования чисел является отсутствие различия между представлением положительных и отрицательных чисел (по сравнению с традиционным двоичным кодированием знаковый бит не требуется). Это не только значительно упрощает типы данных, но также сокращает (наполовину) такие вещи, как условные инструкции и даже базовые операции, которым больше не нужно беспокоиться о знаковом бите; есть ли она и как с ней бороться. Усечение стало проще (оно соответствует округлению), а математические операции можно применять независимо от длины слов (и положения текущего слова относительно всего числа). Также сокращается количество необходимых инструкций.

    Компиляторы было бы проще писать, а после написания их легче тестировать, и исполнялось бы меньше путей.

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

    Если история повторится, окажемся ли мы в двоичном вычислительном обществе? Если бы более ранние пионеры продолжили исследования с тремя состояниями, все ли наши устройства теперь использовали бы тритов и тритов ?

    Если мы встретим пришельцев, будут ли они использовать устройства с основанием три? (математика, в конце концов, является универсальным языком, и преимущества сбалансированного троичного кода не зависят от того, как их описать).

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

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