Почему римская система счисления не используется в компьютерах

Обновлено: 21.11.2024

Не имеет значения, насколько стары римские цифры (XIII, III, MDCXII) или насколько проще люди считают универсальные цифры (13, 3, 1612), факт в том, что римские цифры работают, и они никуда не поедем в ближайшее время. Будь то нумерация страниц в своей университетской работе или пометка двумя страницами в своем предложении совету директоров на своем рабочем месте, средний человек должен использовать римские цифры довольно много раз в течение своей жизни. Поскольку большая часть того, что мы делаем в настоящее время, мы делаем на наших компьютерах, многим людям нужно знать, как они могут набирать римские цифры на компьютере.

Ввод римских цифр на компьютере вовсе не является какой-то гигантской задачей, для решения которой вам нужен мастер. На самом деле это довольно просто! Тем не менее, вы должны знать, что есть два разных способа ввода римских цифр на компьютере: один чрезвычайно простой и приземленный, а другой чуть более сложный, но использует меньше символов и работает только в некоторых определенных программах. и области компьютера. Без дальнейших церемоний, вот два разных метода, которые вы можете использовать для ввода римских цифр на компьютере:

Способ 1. Введите римские числа, используя их аналоги в латинском алфавите

Самый простой способ набирать римские цифры на компьютере — использовать двойники римских цифр, присутствующие в латинском алфавите (алфавите, используемом на английской клавиатуре). По сути, это означает, что вы можете использовать заглавные буквы I, V, X, L, C, D и M для ввода римских цифр на компьютере. Если вы знаете, что означает каждая из этих букв в римской системе счисления, ввод римских чисел с использованием их двойников в латинском алфавите, который есть на вашей клавиатуре, не составит труда.

Способ 2. Введите римские цифры в формате Unicode

Unicode – это универсальный стандарт для кодирования и представления текста на компьютерах, и Unicode содержит практически все существующие римские цифры в своем блоке числовых форм. Однако только определенные программы и области компьютера способны преобразовывать Unicode в закодированный в нем текст, поэтому этот метод можно использовать только в определенных местах (в текстовом процессоре, таком как Microsoft Work, в программе для работы с электронными таблицами, такой как Microsoft Excel или при программировании и написании кода, например). Чтобы набрать римские цифры на компьютере в Юникоде, нужно просто:

  1. Введите символ Юникода, соответствующий римской цифре, которую вы хотите ввести, без символа U+ впереди (например, 2167 — это символ Юникода для римской цифры VIII). Для получения списка всех символов Unicode для всех римских цифр, доступных в Unicode, просто перейдите сюда.
  2. Нажмите и удерживайте клавишу Alt на клавиатуре.
  3. Удерживая нажатой клавишу Alt, нажмите X на клавиатуре. Как только вы это сделаете, введенный вами символ Unicode будет преобразован в соответствующую ему римскую цифру.
  4. В отличие от ввода римских цифр на компьютере с использованием их двойников, представленных в латинском алфавите, при вводе римских цифр в Юникоде каждый символ в Юникоде считается только одним символом, скажем, в текстовом процессоре. Например, XIII, написанный в Unicode, считается одним символом, тогда как XIII, написанный с использованием букв X и I на клавиатуре, считается четырьмя отдельными символами.

    Не имеет значения, насколько стары римские цифры (XIII, III, MDCXII) или насколько проще люди считают универсальные цифры (13, 3, 1612), факт в том, что римские цифры работают, и они никуда не поедем в ближайшее время. Будь то нумерация страниц в своей университетской работе или пометка двумя страницами в своем предложении совету директоров на своем рабочем месте, средний человек должен использовать римские цифры довольно много раз в течение своей жизни. Поскольку большая часть того, что мы делаем в настоящее время, мы делаем на наших компьютерах, многим людям нужно знать, как они могут набирать римские цифры на компьютере.

    Ввод римских цифр на компьютере вовсе не является какой-то гигантской задачей, для решения которой вам нужен мастер. На самом деле это довольно просто! Тем не менее, вы должны знать, что есть два разных способа ввода римских цифр на компьютере: один чрезвычайно простой и приземленный, а другой чуть более сложный, но использует меньше символов и работает только в некоторых определенных программах. и области компьютера. Без дальнейших церемоний, вот два разных метода, которые вы можете использовать для ввода римских цифр на компьютере:

    Способ 1. Введите римские числа, используя их аналоги в латинском алфавите

    Самый простой способ набирать римские цифры на компьютере — использовать двойники римских цифр, присутствующие в латинском алфавите (алфавите, используемом на английской клавиатуре). По сути, это означает, что вы можете использовать заглавные буквы I, V, X, L, C, D и M для ввода римских цифр на компьютере.Если вы знаете, что означает каждая из этих букв в римской системе счисления, ввод римских чисел с использованием их двойников в латинском алфавите, который есть на вашей клавиатуре, не составит труда.

    Способ 2. Введите римские цифры в формате Unicode

    Unicode – это универсальный стандарт для кодирования и представления текста на компьютерах, и Unicode содержит практически все существующие римские цифры в своем блоке числовых форм. Однако только определенные программы и области компьютера способны преобразовывать Unicode в закодированный в нем текст, поэтому этот метод можно использовать только в определенных местах (в текстовом процессоре, таком как Microsoft Work, в программе для работы с электронными таблицами, такой как Microsoft Excel или при программировании и написании кода, например). Чтобы набрать римские цифры на компьютере в Юникоде, нужно просто:

    1. Введите символ Юникода, соответствующий римской цифре, которую вы хотите ввести, без символа U+ впереди (например, 2167 — это символ Юникода для римской цифры VIII). Для получения списка всех символов Unicode для всех римских цифр, доступных в Unicode, просто перейдите сюда.
    2. Нажмите и удерживайте клавишу Alt на клавиатуре.
    3. Удерживая нажатой клавишу Alt, нажмите X на клавиатуре. Как только вы это сделаете, введенный вами символ Unicode будет преобразован в соответствующую ему римскую цифру.
    4. В отличие от ввода римских цифр на компьютере с использованием их двойников, представленных в латинском алфавите, при вводе римских цифр в Юникоде каждый символ в Юникоде считается только одним символом, скажем, в текстовом процессоре. Например, XIII, написанный в Unicode, считается одним символом, тогда как XIII, написанный с использованием букв X и I на клавиатуре, считается четырьмя отдельными символами.

      Вычислять римскими цифрами не так уж и сложно

      Мы выполняем расчеты в десятичной разрядной системе с использованием индийско-арабских цифр. Но как быть с римскими цифрами и без знака нуля в аддитивной системе счисления, если нет ручных счетов? (См. также Сообщения ACM: Как считали римляне?).

      При расчетах римскими цифрами порядок цифр значения не имеет. Исключения: если меньшая единица находится слева от большей единицы, она вычитается из большей единицы: IV, IX, IL, IC, ID, IM; ВЛ, ВК, ВД, ВМ; ХЛ, ХС, ХД, ХМ; LD, LM, а также CD и CM.

      Дополнение

      Слагаемое и слагаемое добавляются так же, как и на счетах (см. Табл. 1–2). При необходимости цифровые символы должны быть объединены (связаны).

      Вкладка. 1: Сложение в римской системе счисления 1

      Вкладка. 2: Сложение в римской системе счисления 2

      Вычитание

      Вычитаемое вычитается из уменьшаемого таким же образом, как и на счетах (см. Таблицу 3). При необходимости цифровые знаки должны быть разрешены (разобраны). Числа, которые встречаются как в уменьшаемом, так и в вычитаемом, могут быть удалены.

      Вкладка. 3: Вычитание в римской системе счисления

      Умножение

      Умножение — это многократное сложение. Множимое 23 прибавляется 6 раз (см. табл. 4). Точно так же вы считаете на счетах, и большинство механических калькуляторов используют аналогичную процедуру. В Средние века существовали и другие методы, такие как удвоение (удвоение), метод Гелосии (решеточное умножение) и египетское умножение (эфиопское умножение).

      Вкладка. 4: Умножение в римской системе счисления

      Отдел

      Деление — это последовательное вычитание. Делитель 7 можно вычесть из делимого 56 8 раз (см. табл. 5). Точно так же вы считаете на счетах, и большинство механических калькуляторов используют аналогичную процедуру. В Средние века существовали и другие методы, например халвинг (медитация).

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

      Римский настольный калькулятор Шеннона

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

      Рис. 1: Throbac Шеннона (любезно предоставлено Музеем Массачусетского технологического института, Кембридж, Массачусетс)

      Ссылки

      Шеннон, Клод Э.: Throbac I, Меморандум Bell Laboratories, 9 апреля 1953 г. (Клод Элвуд Шеннон: сборник статей, изд. NJA Sloane, Aaron D. Wyner, Piscataway, NJ: IEEE Press 1993, страницы 695–698)

      Уильямс, Майкл Рой: история компьютерных технологий, издательство IEEE Computer Society, Лос-Аламитос, Калифорния, 1997 г., страницы 7–8

      Журнал, в котором цифровой мир встречается с реальным миром.

      Пол Керзон, Лондонский университет королевы Марии

      Римляне были хороши в счете и сложении, но они были совершенно не в ладах с умножением. Это было не потому, что они были глупы. Это потому, что они не изобрели хороший способ представления чисел, а это означало, что им нужны были действительно запутанные алгоритмы.

      Римская система основана на очень простом способе записи чисел. Вы просто ставите строку для каждой вещи, которую вы посчитали. Вероятно, так пастухи считали овец, проводя линию для каждой овцы. Эти линии превратились в латинскую букву I. Чтобы добавить 1 к числу, вы просто добавляете еще одну I. Вы считаете: I, II, III и так далее, и это упрощает счет. Эта система называется унарной — в то время как бинарная включает в себя подсчет с двумя символами, 1 и 0, в унарной у вас есть только один символ для подсчета. Унарное сложение тоже легко, по крайней мере, для небольших чисел. Возьмите первое число и прибавьте в конце все «есть» для второго, и вы получите номер ответа. Именно так мы все начинаем складывать на пальцах. Чтобы сложить 2+3, поднимите 2 пальца (II), затем поднимите еще три пальца (III), и вы получите ответ (IIIIII).

      Это хорошо для небольших чисел, но становится немного утомительным по мере их увеличения (и у вас заканчиваются пальцы!) Сравнивать числа в принципе легко — у вас одинаковое количество Is, но на практике это сложно для больших числа. Мы не можем удержать все эти И в нашей голове, поэтому трудно думать о большом количестве. Чтобы обойти это, римляне изобрели новые буквы для обозначения групп ис. Это то, что мы делаем, когда подсчитываем числа, составляя перекладину для каждого пятого числа, которое мы считаем. Это помогает нам отслеживать большие числа. Римляне изобрели целую кучу символов, чтобы помочь: так, например, в римской системе счисления V означает 5 (IIIIII), X означает 10, L для 50, C для 100, D для 500 и M для 1000. Они изобрел новый способ представления чисел.

      Это значительно упрощает запись и сравнение больших чисел. Теперь, когда вы считаете и получаете до 5, вы просто заменяете все эти I на V, а затем продолжаете добавлять I: VI, VII, VIII, VIIII. Затем вы доберетесь до VIIIIII (10), поэтому замените все это на X, начиная снова, добавляя новый лот Is: XI, XII, XIII, XIIII, XV и так далее. Подсчет больших чисел теперь немного сложнее — алгоритм включает в себя больше, чем просто добавление I в конце, но это намного удобнее. Алгоритм сложения теперь усложнился, хотя и остается достаточно простым. Возьмите любые два числа, которые нужно сложить, например, VII и VIII, и соедините их вместе: VIIVIII. Теперь сгруппируйте одинаковые буквы: VVIII. Везде, где у вас есть достаточно, чтобы заменить символы следующим символом, сделайте это. VV можно заменить на X, а IIIIII можно заменить на V, чтобы получить XV в приведенном выше примере. Продолжайте делать замены, пока не сможете сделать больше. Расположите символы в порядке от большего к меньшему, и вы получите ответ.

      Теперь римляне, очевидно, были немного ленивы, так как им надоело писать даже четыре Is подряд, они иногда вводили новый набор сокращений, так что IIII стал IV, а VIIII стал IX. Помещение меньшего символа (например, I) перед большим (например, X), а не после, означало вычитание его, чтобы получить число. поэтому IX означает «на один меньше 10» или 9. Счет стал немного сложнее, чтобы получить преимущество от написания меньшего количества символов. Однако теперь для сложения требуется более сложный алгоритм. Есть несколько способов сделать это. На самом деле проще всего просто изменить числа, чтобы добавить к более простой форме (поэтому IV возвращается к IIII). Вы делаете сложение таким образом и конвертируете обратно в конце. Сложение стало немного сложнее, и все из-за изменения представления.

      Хуже того, выполнять более сложные математические операции с использованием представления римских чисел еще сложнее. Посмотрите, сможете ли вы решить, как умножать римские числа. Римская система счисления не помогает вообще. Единственный действительно простой способ - просто многократно добавлять (так что III x VI - это VI + VI + VI). Это просто непрактично для больших чисел. Попробуйте на XXIII x LXV1. Существуют и другие возможные способы, в том числе тот, который на самом деле основан на алгоритмах двоичного умножения, используемых компьютерами, — многократное умножение и деление на 2.Посмотрите, сможете ли вы решить, как это сделать. Как бы вы это ни делали, ясно, что система счисления, которую выбрали римляне, усложняла им математику!

      К счастью, индийские и арабские ученые поняли, что используемое ими представление имеет значение. Они изобрели и распространили индо-арабские числа и десятичную систему, которыми мы пользуемся сегодня. Что особенного в этом, так это то, что вместо того, чтобы вводить новые символы для все больших и больших чисел, вместо этого используется позиция символа. По мере того, как мы переходим от девяти к десяти, мы возвращаемся к началу наших символов, от 9 обратно к 0, но вставляем 1 в новый столбец 10, чтобы подсчитать, сколько 10 у нас есть. Счет по-прежнему довольно прост, но неожиданно не только алгоритм сложения становится простым, но и мы можем придумать довольно простые алгоритмы умножения и деления. Это алгоритмы, которые вы изучаете в школе, хотя, как и в случае с любым алгоритмом, гарантировать, что вы точно следуете шагам и не пропускаете шаги, сложно для человека (в отличие от компьютера). Вот почему поначалу нам трудно учить математику, и чем больше мы практикуемся, тем легче становится.

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

      Иногда что-то сложно сделать только потому, что мы делаем это сложно! Секрет хороших алгоритмов часто заключается в том, чтобы сначала придумать хорошее представление. В программировании тоже, если вы придумаете хороший способ представления данных, хорошую структуру данных, вы сможете значительно упростить написание эффективной программы.

      Читайте также: