Восьмеричная запись чисел короче чем двоичная
Системы счисления. Позиционная система счисления восьмеричная.
Впервые позиционная система счисления возникла в древнем Вавилоне. В Индии система работает в
виде позиционной десятичной нумерации с использованием нуля, у индусов данную систему чисел
позаимствовала арабская нация, у них, в свою очередь, взяли европейцы. В Европе эту систему стали
Позиционная система счисления — значение всех цифр зависит от позиции (разряда) данной цифры в числе.
Примеры, стандартная 10-я система счисления – это позиционная система. Допустим, дано число 453.
Цифра 4 обозначает сотни и соответствует числу 400, 5 — кол-во десятков и соответствует значению 50,
а 3 — единицы и значению 3. Легко заметить, что с увеличением разряда увеличивается значение.
Таким образом, заданное число запишем в виде суммы 400+50+3=453.
Восьмеричная система счисления.
Восьмеричную систему счисления, как и двоичную систему счисления, не редко применяют в цифровой
Основание восьмеричной системы счисления – 8.
В восьмеричной системе счисления 8 цифр: 0, 1, 2, 3, 4, 5, 6, 7.
Чтоб перевести в двоичную систему, например, число 611 (восьмеричное), надо поменять все цифры
эквивалентной ей двоичной триадой (тройкой цифр). Для перевода многозначного двоичного числа в
восьмиричную систему счисления необходимо разбить его на триады справа налево и заменить все
триады соответствующей восьмеричной цифрой.
6118 = 011 001 0012
1 110 011 1012=14358 (4 триады)
Пример восьмеричного числа: 254.
Для перевода в десятичную систему счисления нужно все разряды исходного числа помножить на 8n,
где n — номер разряда.
Таблица перевода восьмеричных чисел в двоичные.
Чтоб перевести восьмеричное число в двоичное, нужно поменять все цифры восьмеричного числа на
триплет двоичных цифр.
В программировании для точного указания восьмеричного числа используют префикс нуль.
Алгоритм перевода чисел из одной системы счисления в другую.
1. Из десятичной системы счисления:
2. Из двоичной системы счисления:
соответствующую степень разряда;
Например, 1000110 = 1 000 110 = 1068
группы по 4 разряда.
Например, 1000110 = 100 0110 = 4616.
Восьмеричная система счисления – как переводить, таблица
Числа можно представлять не только в десятичном формате, но и в системе счисления с основанием 8, которая использует для обозначения символы 0, 1, 2, 3, 4, 5, 6, 7. О том, как переводить в восьмеричную систему счисления числа из десятичной и двоичной системы и обратно, рассказано в данной статье.
Восьмеричная система счисления
Восьмеричная система счисления имеет вспомогательный характер, ее удобно использовать для сокращенной записи бинарных комбинаций чисел. Она более удобна в работе чем двоичная, так как использует меньшее количество разрядов. Восьмеричная система применялась в свое время для программирования на машинном языке, а также в устройствах подготовки данных, вышедших из употребления с появлением персональных компьютеров.
Алфавит восьмеричной системы составляют восемь цифр от 0 до 7, соответственно основание равно 8. Числовой ряд восьмеричных чисел: 1, 2, 3, 4, 5, 6, 7,10, 11, 12, 13, 14, 15, 16, 17, 20.
Следует обратить внимание, что после 7 в числовом ряду идет 10, а после 17 число 20.
Число 8 имеет символический смысл, является первым кубом двойки и отождествляется с трехмерным измерением. Для многих древних народов восьмёрка сакральное число. Внешне выглядит как символ бесконечности. В информатике один байт равен 8 битам.
Рис. 1. Символ бесконечности.
Перевод 8 – 2
Перенос восьмеричного числа в двоичный формат – это самый простой способ перевода чисел. Каждой восьмеричной цифре ставится в соответствие группа двоичных цифр в количестве трех. Эта группа называется триадой.
И, наоборот, при переводе двоичного числа в восьмеричный формат производится замена трех двоичных цифр одной восьмеричной. Разбивка целого двоичного числа на трехзначные звенья производится справа налево. Когда крайняя триада получается неполной, то ее дополняют нулями.
Для более быстрого перевода чисел используется таблица записи восьмеричных чисел двоичным форматом.
Рис. 2. Таблица соответствия восьмеричных и двоичных чисел.
Например, 348 = 0111002. Ноль впереди числа отбрасываем и получаем в итоге 111002.
И обратный перевод, например: 11011012 = (001)(101)(101) = 1558. В старшей триаде не хватило разрядов, она дополнилась слева двумя нулями.
Перевод 8 – 10
Преобразование чисел из восьмеричного формата в десятичную форму выполняется с использованием правила перевода: целая часть числа последовательно делится на основание новой системы счисления, то есть 8, и остатки от деления записываются начиная с последнего частного в обратном направлении. Например:
246 / 8 = 30 и в остатке 6
30 / 8 = 3 и в остатке 6
3 меньше 8, деление завершено.
Таким образом, 24610 = 3668.
Обратный перевод выполняется путем разложения числа в развернутую форму:
3668 = 3*82 + 6*81 + 6*80 = 3*64 + 6*8 + 6*1 = 192 + 48 + 6 = 24610
Арифметические действия
Арифметические действия в системе счисления с основанием 8 выполняются также как и в десятичной. Удобнее всего складывать и вычитать большие числа столбиком. Только следует помнить, что после 7 идет 10, то есть сумма восьмеричных чисел 3 + 5 = 10, а не восемь. Удобнее всего при вычислениях пользоваться таблицей сложения восьмеричных чисел.
Рис. 3. Таблица сложения восьмеричных чисел.
Например, сумма 34 + 25 = 61. Это получилось следующим образом. Сначала складываются младшие разряды 4 + 5 = 11 (смотрят по таблице). Единица остается в младшем разряде, а вторая единица переносится в старший разряд и добавляется к сумме чисел 3 + 2 = 5. Итого получилось 61.
Что мы узнали?
Восьмеричная система счисления удобна для представления бинарных кодов и записи машинных команд в программировании. Основание этой системы равно 8. Для перевода чисел из двоичной системы счисления в восьмеричную и обратно используются триады. Перевод восьмеричных чисел в десятичную систему выполняется путем поочередного деления частного числа и записи остатков от деления. Обратный перевод выполняется через раскрытие числа в развернутую форму.
Программирование на C, C# и Java
Уроки программирования, алгоритмы, статьи, исходники, примеры программ и полезные советы
ОСТОРОЖНО МОШЕННИКИ! В последнее время в социальных сетях участились случаи предложения помощи в написании программ от лиц, прикрывающихся сайтом vscode.ru. Мы никогда не пишем первыми и не размещаем никакие материалы в посторонних группах ВК. Для связи с нами используйте исключительно эти контакты: vscoderu@yandex.ru, https://vk.com/vscode
Восьмеричная система счисления
Восьмеричная система – одна из основных систем счислений наряду с двоичной, десятичной и шестнадцатеричной, применяемая в информационных технологиях.
Как мы знаем, компьютеры «воспринимают» лишь двоичную систему счисления, состоящую только из нулей и единиц. Однако человеку довольно непривычно и неудобно работать с такими числами. Например, привычное нам десятичное число 2 143 в двоичной системе будет выглядеть как 100001011111. Переводить числа из двоичной системы в десятеричную также не очень удобно и бывает довольно муторно.
В итоге было решено использовать альтернативные и более простые системы счисления: восьмеричную и шестнадцатеричную. Числа 8 и 16 являются степенями двойки (2 в третьей и 2 в четвёртой степени соответственно), поэтому выполнять преобразования из двоичной системы и наоборот гораздо легче, чем при десятичной системе счисления, которая не может похвастаться своей причастностью к степеням числа 2.
Кроме того, числа в восьмеричной системе как минимум более приятны глазу и гораздо короче, чем их аналоги в двоичной системе. Так, например, в восьмеричной системе то же число 2 143 будет записываться как 4137.
В восьмеричной системе счисления, как уже можно было догадаться, основанием является цифра 8 и, соответственно, она вмещает в себя только восемь цифр: от 0 до 7. Поэтому числа в восьмеричной системе счисления очень похожи на десятичные, в отличие от шестнадцатеричных, где присутствуют буквы латинского алфавита или двоичных, состоящих только из двух цифр. Отличают эти две системы тем, что в восьмеричной отсутствуют цифры 8 и 9, а также, очевидно, нижними индексами: у числа в десятичной системе прибавляют нижний индекс с цифрой 10, а к числам в восьмеричной системе приписывают цифру 8, например:
Теперь давайте научимся переводу чисел в восьмеричную систему счисления и наоборот.
Перевод из десятичной системы счисления в восьмеричную
Давайте попробуем изучить перевод десятичного числа в восьмеричное на примере. После этого примера вы без проблем сможете переводить любые числа в эту систему.
Возьмём десятичное число 15 450 и попробуем перевести его в восьмеричную систему счисления.
Для начала нам необходимо разделить исходное число на основание системы, в которую мы хотим это число перевести. Для восьмеричной системы это число 8. То есть мы делим 15 450 на 8.
Происходит деление в столбик, но, в отличие от стандартного деления, мы не находим неполные частные, а делим сразу всё делимое на 8. Наибольшим числом, при котором 15 450 делится без остатка на 8 будет число 1 931. 1931 * 8 = 15 448. Теперь мы вычитаем из 15 450 полученное число 15 448, у нас получился остаток 2. Выделяем эту двойку, так как это уже кусочек нашего числа в восьмеричной системе.
Продолжаем: теперь делим полученное на предыдущем шаге частное на 8:
Всё точно так же: наибольшим числом, при котором 1 931 делится без остатка на 8 будет число 241. При умножении 241 на 8 получается число 1 928. Ищем разность между 1 931 и 1928 – получается 3. Выделяем её. Далее делим 241 на 8.
Получается число 30, умножив его на 8, получаем 240. Вычитаем из 241 это число, получается 1. Выделяем единицу.
Продолжаем деление до тех пор, пока частное не станет меньше 8!
Выделенные красным цифры – это и есть наше число в восьмеричной системе, НО они написаны наоборот. То есть, чтобы правильно прочитать число в восьмеричной системе, необходимо сделать это справа налево.
Таким образом, десятичное число 15 45010 в восьмеричной системе будет выглядеть как 36 1328.
Итого, алгоритм перевода чисел из десятичной системы в восьмеричную следующий:
Теперь перейдём к переводу восьмеричного числа в десятичную систему счисления.
Перевод из восьмеричной системы счисления в десятичную
Перевести восьмеричное число в десятичное даже проще, чем наоборот. Давайте рассмотрим пример: переведём восьмеричное число 36078 в десятичное.
Для начала мы делаем такую запись: с конца берём каждую цифру нашего исходного числа, каждое из них умножаем на 8, и все в целом складываем. Должно получиться примерно так:
Всё, что остаётся после этого – просто посчитать. В итоге у нас получилось число 1927 в десятичной системе.
Перевод из двоичной системы счисления в восьмеричную
Перевод чисел из двоичной системы счисления в восьмеричную – довольно необычное дело для тех, кто никогда с этим не сталкивался. Однако на деле всё не так пугающе, как может показаться с первого раза.
Давайте попробуем. Допустим, у нас есть двоичное число 1010010001011101100.
Для начала нам необходимо разбить это число на триады – группы из трёх цифр. Почему именно три цифры? Как мы знаем, у систем счислений имеются основания. И у двоичной системы основание – 2. Нам необходимо перевести двоичное число в восьмеричную систему с основанием 8. Математически это можно записать так:
Внимание: если старшая триада не заполнена, до конца, перед ней необходимо дописать столько нулей, чтобы получилась полноценная триада.
Теперь всё, что нам остаётся – это перевести каждую из этих триад из двоичной системы счисления в восьмеричную. Это можно сделать самостоятельно:
Для этого в каждой отдельной триаде (начиная с первой) нужно каждую цифру (начиная с последней) умножить на 2, возведённую в степени от 0 до 2, и сложить полученные три числа.
Затем, полученные результаты по каждой отдельной триаде надо выписать, начиная с самой первой. Записанное число и будет нашим конечным результатом в восьмеричной системой счисления.
Однако можно сильно облегчить себе задачу, не высчитывая все триады числа, а просто сверяя каждую из них по таблице соответствия двоичных чисел восьмеричным, например, по такой:
Теперь можно просто смотреть на триаду, сверять её с таблицей и записывать число, соответствующее ей в восьмеричной системе.
Перевод из восьмеричной системы счисления в двоичную
Самым удобным способом перевода из восьмеричной системы счисления в двоичную является использование таблицы соответствий. Итак, допустим, мы хотим перевести восьмеричное число 36702 в двоичную систему. Что же нам делать? Мы берём первую цифру нашего исходного числа – 3. Ищем её по таблице соответствия – в двоичной системе это 011. Берём следующую цифру – 6 и ищем её в таблице, находим 110, и так далее. Продолжаем, пока не переведём все восьмеричные цифры в триады. В итоге у нас получится необходимое двоичное число.
Внимание: Если в старших битах (то есть в самом начале двоичного числа) имеются нули, необходимо убрать их до первой единицы. Например, как на изображении ниже. В старшем бите у нас получился ноль при переводе восьмеричной тройки, и мы убрали его. Это делается для удобства, потому что зачем хранить и писать незначащие цифры.
Перевод из восьмеричной системы счисления в шестнадцатеричную и из шестнадцатеричной системы в восьмеричную
К сожалению, несмотря на то, что эти системы счисления близки друг к другу, напрямую перевести друг в друга нельзя. Легче всего при переводе этих двух систем друг в друга воспользоваться посредничеством двоичной системы. То есть, перевести восьмеричную систему счисления в двоичную, разделив число на триады и воспользовавшись таблицей соответствий, а затем перевести это число из двоичной системы в шестнадцатеричную с помощью тетрад. И наоборот: перевести число из шестнадцатеричной системы в двоичную, а затем уже из двоичной системы в восьмеричную описанными выше способами.
Применение восьмеричной системы счисления
В прошлом веке выпускались компьютеры, в которых использовались 12-ти, 24-х и 36-битные слова. Это, например, модель ICT 1900 (1964 год), а также PDP-8, выпущенная в 1965 году – это коммерчески довольно успешная модель миникомпьютера в своё время. Кроме того, некоторые мейнфреймы от компании IBM использовали восьмеричную систему. В компьютерах, размер машинного которых кратен тройке, очень удобно использовать систему с основанием восемь, поскольку всегда все биты из слова можно представить в виде целого количества цифр в восьмеричной системе. Например, слово из 24-х бит, можно записать в виде 8-ми восьмеричных чисел.
Если говорить про использование восьмеричной системы в жизни людей, то известно, что в индейских языках Юки (Калифорния) и Паме (Мексика) использовалась данная система. Индейцы считали предметы не по количеству пальцев на руках, а по количеству промежутков между ними.
Основы систем счисления
Изучая кодировки, я понял, что недостаточно хорошо понимаю системы счислений. Тем не менее, часто использовал 2-, 8-, 10-, 16-ю системы, переводил одну в другую, но делалось все на “автомате”. Прочитав множество публикаций, я был удивлен отсутствием единой, написанной простым языком, статьи по столь базовому материалу. Именно поэтому решил написать свою, в которой постарался доступно и по порядку изложить основы систем счисления.
Введение
Система счисления — это способ записи (представления) чисел.
Что под этим подразумевается? Например, вы видите перед собой несколько деревьев. Ваша задача — их посчитать. Для этого можно — загибать пальцы, делать зарубки на камне (одно дерево — один палец\зарубка) или сопоставить 10 деревьям какой-нибудь предмет, например, камень, а единичному экземпляру — палочку и выкладывать их на землю по мере подсчета. В первом случае число представляется, как строка из загнутых пальцев или зарубок, во втором — композиция камней и палочек, где слева — камни, а справа — палочки
Системы счисления подразделяются на позиционные и непозиционные, а позиционные, в свою очередь, — на однородные и смешанные.
Непозиционная — самая древняя, в ней каждая цифра числа имеет величину, не зависящую от её позиции (разряда). То есть, если у вас 5 черточек — то число тоже равно 5, поскольку каждой черточке, независимо от её места в строке, соответствует всего 1 один предмет.
Позиционная система — значение каждой цифры зависит от её позиции (разряда) в числе. Например, привычная для нас 10-я система счисления — позиционная. Рассмотрим число 453. Цифра 4 обозначает количество сотен и соответствует числу 400, 5 — кол-во десяток и аналогично значению 50, а 3 — единиц и значению 3. Как видим — чем больше разряд — тем значение выше. Итоговое число можно представить, как сумму 400+50+3=453.
Однородная система — для всех разрядов (позиций) числа набор допустимых символов (цифр) одинаков. В качестве примера возьмем упоминавшуюся ранее 10-ю систему. При записи числа в однородной 10-й системе вы можете использовать в каждом разряде исключительно одну цифру от 0 до 9, таким образом, допускается число 450 (1-й разряд — 0, 2-й — 5, 3-й — 4), а 4F5 — нет, поскольку символ F не входит в набор цифр от 0 до 9.
Смешанная система — в каждом разряде (позиции) числа набор допустимых символов (цифр) может отличаться от наборов других разрядов. Яркий пример — система измерения времени. В разряде секунд и минут возможно 60 различных символов (от «00» до «59»), в разряде часов – 24 разных символа (от «00» до «23»), в разряде суток – 365 и т. д.
Непозиционные системы
Как только люди научились считать — возникла потребность записи чисел. В начале все было просто — зарубка или черточка на какой-нибудь поверхности соответствовала одному предмету, например, одному фрукту. Так появилась первая система счисления — единичная.
Единичная система счисления
Число в этой системе счисления представляет собой строку из черточек (палочек), количество которых равно значению данного числа. Таким образом, урожай из 100 фиников будет равен числу, состоящему из 100 черточек.
Но эта система обладает явными неудобствами — чем больше число — тем длиннее строка из палочек. Помимо этого, можно легко ошибиться при записи числа, добавив случайно лишнюю палочку или, наоборот, не дописав.
Для удобства, люди стали группировать палочки по 3, 5, 10 штук. При этом, каждой группе соответствовал определенный знак или предмет. Изначально для подсчета использовались пальцы рук, поэтому первые знаки появились для групп из 5 и 10 штук (единиц). Все это позволило создать более удобные системы записи чисел.
Древнеегипетская десятичная система
Почему она называется десятичной? Как писалось выше — люди стали группировать символы. В Египте — выбрали группировку по 10, оставив без изменений цифру “1”. В данном случае, число 10 называется основанием десятичной системы счисления, а каждый символ — представление числа 10 в какой-то степени.
Числа в древнеегипетской системе счисления записывались, как комбинация этих
символов, каждый из которых повторялся не более девяти раз. Итоговое значение равнялось сумме элементов числа. Стоит отметить, что такой способ получения значения свойственен каждой непозиционной системе счисления. Примером может служить число 345:
Вавилонская шестидесятеричная система
В отличии от египетской, в вавилонской системе использовалось всего 2 символа: “прямой” клин — для обозначения единиц и “лежачий” — для десятков. Чтобы определить значение числа необходимо изображение числа разбить на разряды справа налево. Новый разряд начинается с появления прямого клина после лежачего. В качестве примера возьмем число 32:
Число 60 и все его степени так же обозначаются прямым клином, что и “1”. Поэтому вавилонская система счисления получила название шестидесятеричной.
Все числа от 1 до 59 вавилоняне записывали в десятичной непозиционной системе, а большие значения — в позиционной с основанием 60. Число 92:
Запись числа была неоднозначной, поскольку не существовало цифры обозначающей ноль. Представление числа 92 могло обозначать не только 92=60+32, но и, например, 3632=3600+32. Для определения абсолютного значения числа был введен специальный символ для обозначения пропущенного шестидесятеричного разряда, что соответствует появлению цифры 0 в записи десятичного числа:
Теперь число 3632 следует записывать, как:
Шестидесятеричная вавилонская система — первая система счисления, частично основанная на позиционном принципе. Данная система счисления используется и сегодня, например, при определении времени — час состоит из 60 минут, а минута из 60 секунд.
Римская система
Римская система не сильно отличается от египетской. В ней для обозначения чисел 1, 5, 10, 50, 100, 500 и 1000 используются заглавные латинские буквы I, V, X, L, C, D и M соответственно. Число в римской системе счисления — это набор стоящих подряд цифр.
Позиционные системы счисления
Как упоминалось выше — первые предпосылки к появлению позиционной системы возникли в древнем Вавилоне. В Индии система приняла форму позиционной десятичной нумерации с применением нуля, а у индусов эту систему чисел заимствовали арабы, от которых её переняли европейцы. По каким-то причинам, в Европе за этой системой закрепилось название “арабская”.
Десятичная система счисления
Это одна из самых распространенных систем счисления. Именно её мы используем, когда называем цену товара и произносим номер автобуса. В каждом разряде (позиции) может использоваться только одна цифра из диапазона от 0 до 9. Основанием системы является число 10.
Для примера возьмем число 503. Если бы это число было записано в непозиционной системе, то его значение равнялось 5+0+3 = 8. Но у нас — позиционная система и значит каждую цифру числа необходимо умножить на основание системы, в данном случае число “10”, возведенное в степень, равную номеру разряда. Получается, значение равно 5*10 2 + 0*10 1 + 3*10 0 = 500+0+3 = 503. Чтобы избежать путаницы при одновременной работе с несколькими системами счисления основание указывается в качестве нижнего индекса. Таким образом, 503 = 50310.
Помимо десятичной системы, отдельного внимания заслуживают 2-, 8-, 16-ая системы.
Двоичная система счисления
Эта система, в основном, используется в вычислительной технике. Почему не стали использовать привычную нам 10-ю? Первую вычислительную машину создал Блез Паскаль, использовавший в ней десятичную систему, которая оказалась неудобной в современных электронных машинах, поскольку требовалось производство устройств, способных работать в 10 состояниях, что увеличивало их цену и итоговые размеры машины. Этих недостатков лишены элементы, работающие в 2-ой системе. Тем не менее, рассматриваемая система была создана за долго до изобретения вычислительных машин и уходит “корнями” в цивилизацию Инков, где использовались кипу — сложные верёвочные сплетения и узелки.
Двоичная позиционная система счисления имеет основание 2 и использует для записи числа 2 символа (цифры): 0 и 1. В каждом разряде допустима только одна цифра — либо 0, либо 1.
Примером может служить число 101. Оно аналогично числу 5 в десятичной системе счисления. Для того, чтобы перевести из 2-й в 10-ю необходимо умножить каждую цифру двоичного числа на основание “2”, возведенное в степень, равную разряду. Таким образом, число 1012 = 1*2 2 + 0*2 1 + 1*2 0 = 4+0+1 = 510.
Хорошо, для машин 2-я система счисления удобнее, но мы ведь часто видим, используем на компьютере числа в 10-й системе. Как же тогда машина определяет какую цифру вводит пользователь? Как переводит число из одной системы в другую, ведь в её распоряжении всего 2 символа — 0 и 1?
Чтобы компьютер мог работать с двоичными числами (кодами), необходимо чтобы они где-то хранились. Для хранения каждой отдельной цифры применяется триггер, представляющий собой электронную схему. Он может находится в 2-х состояниях, одно из которых соответствует нулю, другое — единице. Для запоминания отдельного числа используется регистр — группа триггеров, число которых соответствует количеству разрядов в двоичном числе. А совокупность регистров — это оперативная память. Число, содержащееся в регистре — машинное слово. Арифметические и логические операции со словами осуществляет арифметико-логическое устройство (АЛУ). Для упрощения доступа к регистрам их нумеруют. Номер называется адресом регистра. Например, если необходимо сложить 2 числа — достаточно указать номера ячеек (регистров), в которых они находятся, а не сами числа. Адреса записываются в 8- и 16-ричной системах (о них будет рассказано ниже), поскольку переход от них к двоичной системе и обратно осуществляется достаточно просто. Для перевода из 2-й в 8-ю число необходимо разбить на группы по 3 разряда справа налево, а для перехода к 16-ой — по 4. Если в крайней левой группе цифр не достает разрядов, то они заполняются слева нулями, которые называются ведущими. В качестве примера возьмем число 1011002. В восьмеричной — это 101 100 = 548, а в шестнадцатеричной — 0010 1100 = 2С16. Отлично, но почему на экране мы видим десятичные числа и буквы? При нажатии на клавишу в компьютер передаётся определённая последовательность электрических импульсов, причём каждому символу соответствует своя последовательность электрических импульсов (нулей и единиц). Программа драйвер клавиатуры и экрана обращается к кодовой таблице символов (например, Unicode, позволяющая закодировать 65536 символов), определяет какому символу соответствует полученный код и отображает его на экране. Таким образом, тексты и числа хранятся в памяти компьютера в двоичном коде, а программным способом преобразуются в изображения на экране.
Восьмеричная система счисления
8-я система счисления, как и двоичная, часто применяется в цифровой технике. Имеет основание 8 и использует для записи числа цифры от 0 до 7.
Шестнадцатеричная система счисления
Шестнадцатеричная система широко используется в современных компьютерах, например при помощи неё указывается цвет: #FFFFFF — белый цвет. Рассматриваемая система имеет основание 16 и использует для записи числа: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B. C, D, E, F, где буквы равны 10, 11, 12, 13, 14, 15 соответственно.
Помимо рассмотренных позиционных систем счисления, существуют и другие, например:
1) Троичная
2) Четверичная
3) Двенадцатеричная
Позиционные системы подразделяются на однородные и смешанные.
Однородные позиционные системы счисления
Определение, данное в начале статьи, достаточно полно описывает однородные системы, поэтому уточнение — излишне.
Смешанные системы счисления
К уже приведенному определению можно добавить теорему: “если P=Q n (P,Q,n – целые положительные числа, при этом P и Q — основания), то запись любого числа в смешанной (P-Q)-ой системе счисления тождественно совпадает с записью этого же числа в системе счисления с основанием Q.”
Смешанными системами счисления также являются, например:
1) Факториальная
2) Фибоначчиева
Перевод из одной системы счисления в другую
Иногда требуется преобразовать число из одной системы счисления в другую, поэтому рассмотрим способы перевода между различными системами.
Преобразование в десятичную систему счисления
Пример: 1012 = 1*2 2 + 0*2 1 + 1*2 0 = 4+0+1 = 510
Преобразование из десятичной системы счисления в другие
Записав все остатки снизу вверх, получаем итоговое число 17. Следовательно, 1510 = 178.
Преобразование из двоичной в восьмеричную и шестнадцатеричную системы
В качестве примера возьмем число 10012: 10012 = 001 001 = (0*2 2 + 0*2 1 + 1*2 0 ) (0*2 2 + 0*2 1 + 1*2 0 ) = (0+0+1) (0+0+1) = 118
Для перевода в шестнадцатеричную — разбиваем двоичное число на группы по 4 цифры справа налево, затем — аналогично преобразованию из 2-й в 8-ю.
Преобразование из восьмеричной и шестнадцатеричной систем в двоичную
Перевод из восьмеричной в двоичную — преобразуем каждый разряд восьмеричного числа в двоичное 3-х разрядное число делением на 2 (более подробно о делении см. выше пункт “Преобразование из десятичной системы счисления в другие”), недостающие крайние разряды заполним ведущими нулями.
Для примера рассмотрим число 458: 45 = (100) (101) = 1001012
Перевод из 16-ой в 2-ю — преобразуем каждый разряд шестнадцатеричного числа в двоичное 4-х разрядное число делением на 2, недостающие крайние разряды заполняем ведущими нулями.
Преобразование дробной части любой системы счисления в десятичную
Преобразование осуществляется также, как и для целых частей, за исключением того, что цифры числа умножаются на основание в степени “-n”, где n начинается от 1.
Преобразование дробной части двоичной системы в 8- и 16-ую
Перевод дробной части осуществляется также, как и для целых частей числа, за тем лишь исключением, что разбивка на группы по 3 и 4 цифры идёт вправо от десятичной запятой, недостающие разряды дополняются нулями справа.
Пример: 1001,012 = 001 001, 010 = (0*2 2 + 0*2 1 + 1*2 0 ) (0*2 2 + 0*2 1 + 1*2 0 ), (0*2 2 + 1*2 1 + 0*2 0 ) = (0+0+1) (0+0+1), (0+2+0) = 11,28
Преобразование дробной части десятичной системы в любую другую
Для перевода дробной части числа в другие системы счисления нужно обратить целую часть в ноль и начать умножение получившегося числа на основание системы, в которую нужно перевести. Если в результате умножения будут снова появляться целые части, их нужно повторно обращать в ноль, предварительно запомнив (записав) значение получившейся целой части. Операция заканчивается, когда дробная часть полностью обратится в нуль.
Для примера переведем 10,62510 в двоичную систему:
0,625*2 = 1,25
0,250*2 = 0,5
0,5*2 = 1,0
Записав все остатки сверху вниз, получаем 10,62510 = (1010), (101) = 1010,1012