Выражение содержащее данные в различных системах счисления
Полученный результат
Система счисления
Начнем издалека. Все, кто начал читать эту статью, надеюсь в совершенстве знают арифметику школьного уровня. И все если не знают, то догадываются что числа, с которыми мы встречаемся в быту, имеют десятеричный вид.
Это и логично, раз после девяти идет десять, после девяносто девяти, сто, то любое число в нашей (десятеричной) системе можно выразить таким образом
Например число
После понимания такого вида, возникает идея: А нельзя ли это же число представить в другом исчислении?
Эта задумка очень помогла в информатизации нашего общества. Если очень глубоко покапаться в логике работы компьютеров, можно убедится, что все они на самом низком уровне мыслят двумя состояниями или да(1) или нет(0)
Сейчас ученые уже предполагают что это очень уж примитивное мышление и надо было создавать три состояния да(1), нет(0) и может быть, не сегодня,возможно, я не уверена(2) :)
Ну или более серъезно просто три логических уровня -1, 0, 1.
Говорят, это очень сильно улучшает интелектуульные способности машины, и позволяет избежать некоторых нюансов, которые присутствуют при работе с двоичной системой.
Но мы отвлеклись..
Двоичное состояние (да, нет) очень легко создать на базе транзисторов, что и дало толчок в построении компьютерных систем и в изучении двоичной арифметики.
Двоичная арифметика говорит о том, что любое число ( в нашей привычной, десятичной системе) можно представить в двоичной
Например
Логично предположить что существует множество систем счисления. Особенно популярны шестнадцеричная, и восьмиричная система , кроме упомянутых двух.
У вдумчивого читатателя возникает вопрос: систем множество, но почему же все программы ограничиваются конвертацией максимум в 36 ричную систему?
Связано это с тем, что выше 36 ричной системы никто не придумал как именовать символы, то есть это банальное ограничение букв английского алфвавита.
десять цифр+26 букв алфавита и дают магическую цифру 36
Хотя, конечно есть еще кодирование base64, котором используются большие и малые буквы латинского алфавита, цифры и часть служебных знаков.
Бот, который мы хотим вам представить на 7 августа 2014 года , целочисленный, то есть он не умеет считать дробные числа..
Зато у него есть другие достоинства:
Кроме того, что может конвертировать произвольное число в любую из 36 ричных систем, бот может высчитывать произвольное арифетическое и не только (учитывая что работаем только с целыми числами) выражение, если элементы этого выражения представлены в различных системах и выдать результат в той системе счисления которая вам необходима
Это очень удобно для как решения задач, так и для генерирования задач для учеников или студентов.
Кроме этого, система позволяет Вам корректно отображать прямой, дополнительный и обратные кода для отрицательных чисел в различных системах счисления. Такого Вы тоже не найдете на просторах интернета.
Синтаксис
Jabber: convert выражение =результат в системе счисления
выражение - математическое выражение, которое может содержать проивзольные числа и произвольные функции. Любое промежуточное выражение в исходном вырадении, будет огруглятся до целого числа.
Число должно быть действительным и в квадратных скобках содержать информацию о системы
Например 1010[2] - это число в двоичной системе счисления, а 1010[8]- это число в восьмеричной системе счисления
=Результат в системе счисления - это необазательный параметр и говорит боту что бы он вывел данные в той системе счисления, которая была указана после равенства.
Примеры вычислений
Конвертировать число 111011010100100100010100111 заданная в двоичном исчислении в 16-ти ричную форму.
convert 111011010100100100010100111[2]=16
Получаем
Результат равен = 76a48a7
Перевести десятичное число 11102342 в 7-ми значную систему счисления
convert 11102342[10]=7
Результат равен = 163240226
Расчитать следующее выражение: 01011 в двоичном исчислении прибавить fa0c в шестадцатеричном и вычесть удвоеное значение 01703 в восьмеричном исчислении/ Вывести результат в десятеричной форме
Как вы руками будете делать я не знаю а боту достаточно дать команду
convert 01011[2]+fa0c[16]-2*01703[8]=10
получим ответ 62097
так как у нас написано =10 то ответ получен в десятеричной форме
Выразим отрицательное число -227 в двоичной форме получим
Отрицательный результат
Прямой код 1000....00011100011
Обратный код 1111....11100011100
Дополнительный код 1111....11100011101
Возниакет вопрос а что это за многоточие ? Это лишь говорит нам о том, что в зависимости от объема ячейки хранения числа в информационных системах, длина результата может варьироваться.
Например при обратном коде, в выше рассмотренном примере
Конвертер и калькулятор в разные системы счисления онлайн |
2014-08-08 10:59:53 |
Варламов Дмитрий |
Алгебра |
Конвертер и калькулятор в разных систем счисления онлайн. Арифметические операции с числами в различных системах счисления |
Конвертация, система, счисления, калькулятор обратный, код, конвертер