ВОСЬМЕРИЧНАЯ СИСТЕМА СЧИСЛЕНИЯ

Восьмеричная система счисления — правила и примеры решений

ВОСЬМЕРИЧНАЯ СИСТЕМА СЧИСЛЕНИЯ

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

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

Следует отметить, что режим «насыщения», присущий радиодетали, не используется. Если он открыт, то в триггер (память) записывается единица, а в противном случае — нуль.

В результате этого кодирование осуществляется в двоичном коде (0 или 1), основанием которого является цифра «2».

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

Для выполнения операции конвертации десятичной системы исчисления в восьмеричный код необходимы некоторые базовые знания. К ним относятся:

  1. Отличительная особенность числа от цифры.
  2. Виды систем представления информации.
  3. Понятие о двоичном коде.
  4. Алгоритм или методика перевода в восьмеричную систему представления.
  5. Примеры решения задач.

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

Число и цифра

При расчетах и выражении количественных характеристик процесса или явления применяются определенные математические символы — числа. Они состоят из разрядной сетки.

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

Например, для десятичной используется диапазон от 0 до 9, а девятеричная состоит из интервала с минимальной величиной, равной 0, а максимальной — 8.

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

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

Виды числовых представлений

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

  1. Зависимые (позиционные).
  2. Независимые (непозиционные).

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

Например, 25 и 52 — два разных значения. Если бы расположение разрядов не учитывалось, при разности этих двух величин получился нуль. Позиционными СС являются двоичный, восьмеричный и шестнадцатеричный коды.

В них также есть разрядная сетка.

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

На уроках математики в начальных классах также применяется инструмент — счетные палочки. Последние помогают ученикам развивать навык устного счета и являются компонентами непозиционной СС. С их помощью возможно выполнять операции суммы, разности, а также произведения и деления.

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

  1. Сложность работы с большими числами.
  2. Затрудненный перевод в десятичную и обратно.
  3. Невозможно работать с дробными величинами (сложение, вычитание, умножение и деление).
  4. Операции возведения в степень и изъятия корня невозможны.

Достоинством считается сокращение времени записи величины, которая постоянно изменяется. Например, при подсчете количества выходов персонала достаточно поставить крестик или палочку, и это делается без исправлений. В случае с десятичной СС исправлений избежать невозможно.

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

Двоичная кодировка

Для преобразования десятичной величины в двоичную IT-специалистами были разработаны специальные правила или алгоритмы. К ним относятся столбик и степень.

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

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

Метод «столбик»

Первый способ получил широкое применение, поскольку для его выполнения требуется минимум знаний в математической сфере. Он имеет следующий вид:

  1. Анализ числа на четность и нечетность.
  2. Запись нуля в первом случае и единицы — во втором.
  3. Выделение результата (снизу вверх).

Реализация алгоритма проверяется на практическом примере. Для этого требуется решить задачу конвертации числа из десятичной СС в другую, перевод 167{10} в {2}. Решение имеет следующий вид:

  1. 167/2 ->1.
  2. 83/2 ->1.
  3. 41/2 ->1.
  4. 20/2 ->0.
  5. 10/2 ->0.
  6. 5/2 ->1.
  7. 2/2 ->0.
  8. -> 1 (остаток).
  9. 10100111{2}.

Обратный алгоритм конвертации из двоичной в десятичную форму представления величины основан на соответствии значений степенным показателям двойки. Разбиение на разрядную сетку осуществляется справа налево. Методика имеет такой вид:

  1. Искомое двоичное представление.
  2. Запись справа налево. Если есть единица, существует двойка в заданной степени. В противном случае — необходимо указывать 0.
  3. Просуммировать все степени.
  4. Записать окончательный результат.

Реализация методики проверяется на практическом примере — следует взять двоичный код из предыдущего задания, т. е. 10100111. Алгоритм нахождения десятичной формы имеет следующий вид:

  1. 10100111{2}.
  2. 1*[27] 0*[26] 1*[25] 0*[04] 0*[03] 1*[22] 1*[21] 1*[20].
  3. Если сложить все коэффициенты, получится значение, которое равно 167.
  4. 167{10}.

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

Способ степени

Для конвертации в двоичный код также применяется метод степени. Суть его заключается в представлении числа в виде отдельных элементов с основанием «2» и некоторым показателем. Алгоритм в этом случае выглядит таким образом:

  1. Найти наибольшую степень, записав в высший разряд «1».
  2. Отнять от искомого числа величину, полученную на первом шаге.
  3. Повторить действия первого и второго пунктов.

Как и во всех остальных случаях, рекомендуется разобрать алгоритм на практическом примере. Решение задачи для числа «167» имеет такой вид:

  1. Максимальная степень: 270 (нет).
  2. МАХ: 251.
  3. 39-32=7.
  4. 24 ->0 (нет).
  5. 23 ->0 (нет).
  6. MАХ: 221.
  7. 7-4=3.
  8. MAX: 211.
  9. 3-2=1.
  10. 20=1 ->1.
  11. Результат: 10100111.

Однако операция преобразования является вспомогательной. Она применяется для дальнейшей конвертации в восьмеричную СС.

Восьмеричная система

Восьмеричная форма представления чисел состоит из основания-восьмерки и триады. Совокупность последних образуют любые значения. Для кодирования информации в этом случае применяется меньше регистров памяти. Этого нельзя сказать о двоичном коде.

Для восьмеричного представления применяются цифры от 0 до 7 (всего 8). Многие новички часто путают ее с шестнадцатеричной СС, в которой содержатся символы латинского алфавита. При выполнении операций конвертации специалисты рекомендуют ознакомиться со списком (таблицей) восьмеричной системы:

  1. 0 -> 000.
  2. 1 -> 001.
  3. 2 -> 010.
  4. 3 -> 011.
  5. 4 -> 100.
  6. 5 -> 101.
  7. 6 -> 110.
  8. 7 -> 111.

Он поможет перевести любое числовое сообщение. Для удобства IT-специалисты рекомендуют составить презентацию или записать на лист плотной бумаги перекодировку списка. Заучивать коды нет необходимости, поскольку достаточно решать примеры (информация отложится в памяти). Алгоритм кодирования очень прост:

  1. Написать величину в десятичной форме.
  2. Перевести ее в двоичный код одним из методов.
  3. Разделить двоичную форму на триады (сгруппировать по 3 элемента, начиная справа). Если разрядов не хватает, нужно дописать нули слева (это не влияет на значение).
  4. Декодировать каждую группу, воспользовавшись списком.
  5. Записать окончательный результат, указав, что величина записана в восьмеричной форме.

После ознакомления с методикой преобразования нужно проверить ее реализацию на примере. Требуется выяснить, значение 167 {10}. Это делается довольно просто:

  1. 167{10}.
  2. Из вышеописанных примеров: 1111011{2}.
  3. {001}{111}{011}.
  4. {1}{7}{3}
  5. 173{8}.

Обратное декодирование выполняется по такой методике:

  1. Записывается форма: 173{8}.
  2. Разделяется на группы: {1}{7}{3}.
  3. Декодируется каждый компонент: {001}{111}{011}.
  4. Окончательный результат без учета группировочных символов и лишних разрядов: 1111011{2}.
  5. Переводится в десятичную СС: 167{10}.

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

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

Источник: https://nauka.club/informatika/vosmerichnaya-sistema-schisleniya.html

Восьмеричная система счисления — правила и примеры решений — Помощник для школьников Спринт-Олимпик.ру

ВОСЬМЕРИЧНАЯ СИСТЕМА СЧИСЛЕНИЯ

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

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

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

Восьмеричная система счисления

ВОСЬМЕРИЧНАЯ СИСТЕМА СЧИСЛЕНИЯ


Перевод из десятичной системы счисления в восьмеричную
Перевод из восьмеричной системы счисления в десятичную
Перевод из двоичной системы счисления в восьмеричную
Перевод из восьмеричной системы счисления в двоичную
Перевод из восьмеричной системы счисления в шестнадцатеричную и из шестнадцатеричной системы в восьмеричную
Применение восьмеричной системы счисления

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

Как мы знаем, компьютеры «воспринимают» лишь двоичную систему счисления, состоящую только из нулей и единиц. Однако человеку довольно непривычно и неудобно работать с такими числами. Например, привычное нам десятичное число 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!

Итак, делим 30 на 8, получается 3,75, отбрасываем дробную часть, получается 3. Умножаем 3 на 8, получается 24. 30 – 24 = 6. Выделяем шестёрку. Мы закончили деление так как 3 меньше 8. Обязательно выделяем последнее частное тоже (у нас это цифра 3).

Выделенные красным цифры – это и есть наше число в восьмеричной системе, НО они написаны наоборот. То есть, чтобы правильно прочитать число в восьмеричной системе, необходимо сделать это справа налево.

Таким образом, десятичное число 15 45010 в восьмеричной системе будет выглядеть как 36 1328.

Итого, алгоритм перевода чисел из десятичной системы в восьмеричную следующий:

  1. Разделить исходное число на 8. Найти максимальное частное и убрать дробную часть от него. Например, исходное число 20 : 8 = 2,5. Значит в частное мы записываем число 2.
  2. Умножить полученное частное на 8. Записать его под исходным числом.
  3. Найти остаток между этими числами и выделить его – это кусочек переведённого в восьмеричную систему числа.
  4. Затем разделить в столбик полученное частное на 8, записать ответ и проделать шаги 2 и 3.
  5. Производить деление до тех пор, пока делимое не станет меньше 8. Выделить это делимое тоже.
  6. Выписать все выделенные числа справа налево (т.е. последнее делимое будет на первом месте, затем идёт остаток, найденный на последнем шаге, затем остаток, найденный на предпоследнем шаге и т.д.). Полученное при такой записи число и будет нашим искомым восьмеричным.

Теперь перейдём к переводу восьмеричного числа в десятичную систему счисления.

Перевод из восьмеричной системы счисления в десятичную

Перевести восьмеричное число в десятичное даже проще, чем наоборот. Давайте рассмотрим пример: переведём восьмеричное число 36078 в десятичное.

Для начала мы делаем такую запись: с конца берём каждую цифру нашего исходного числа, каждое из них умножаем на 8, и все в целом складываем. Должно получиться примерно так:

Однако, это ещё не всё! После того, как мы сделали подобную запись, ко всем числам 8, на которые умножаются цифры исходного числа, необходимо добавить степени в порядке возрастания: 0, 1, 2 и т.д. Обязательно необходимо начинать с нулевой степени!

Всё, что остаётся после этого – просто посчитать. В итоге у нас получилось число 1927 в десятичной системе.

Перевод из двоичной системы счисления в восьмеричную

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

Давайте попробуем. Допустим, у нас есть двоичное число 1010010001011101100.

Для начала нам необходимо разбить это число на триады – группы из трёх цифр. Почему именно три цифры? Как мы знаем, у систем счислений имеются основания. И у двоичной системы основание – 2. Нам необходимо перевести двоичное число в восьмеричную систему с основанием 8. Математически это можно записать так:

Найти i, пожалуй, не составит труда: i = 3, то есть, для записи одного восьмеричного числа в двоичной системе необходимо 3 бита или, говоря иначе – 3 двоичные цифры. Поэтому мы и будем разбивать двоичное число на триады.

Однако надо запомнить, что делать это надо с младшего бита. Бит – это одна цифра в двоичном числе. Чем дальше бит от начала числа, тем он младше. Самый младший бит – это последняя цифра двоичного числа.

Иными словами, мы разбиваем число на триады, начиная с конца.

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

Теперь всё, что нам остаётся – это перевести каждую из этих триад из двоичной системы счисления в восьмеричную. Это можно сделать самостоятельно:

Для этого в каждой отдельной триаде (начиная с первой) нужно каждую цифру (начиная с последней) умножить на 2, возведённую в степени от 0 до 2, и сложить полученные три числа.

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

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

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

Перевод из восьмеричной системы счисления в двоичную

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

Что же нам делать? Мы берём первую цифру нашего исходного числа – 3. Ищем её по таблице соответствия – в двоичной системе это 011. Берём следующую цифру – 6 и ищем её в таблице, находим 110, и так далее.

Продолжаем, пока не переведём все восьмеричные цифры в триады. В итоге у нас получится необходимое двоичное число.

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

Перевод из восьмеричной системы счисления в шестнадцатеричную и из шестнадцатеричной системы в восьмеричную

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

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

И наоборот: перевести число из шестнадцатеричной системы в двоичную, а затем уже из двоичной системы в восьмеричную описанными выше способами.

Применение восьмеричной системы счисления

В прошлом веке выпускались компьютеры, в которых использовались 12-ти, 24-х и 36-битные слова. Это, например, модель ICT 1900 (1964 год), а также PDP-8, выпущенная в 1965 году – это коммерчески довольно успешная модель миникомпьютера в своё время.

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

Например, слово из 24-х бит, можно записать в виде 8-ми восьмеричных чисел.

Если говорить про использование восьмеричной системы в жизни людей, то известно, что в индейских языках Юки (Калифорния) и Паме (Мексика) использовалась данная система. Индейцы считали предметы не по количеству пальцев на руках, а по количеству промежутков между ними.

Источник: https://vscode.ru/prog-lessons/8-sistema.html

Все термины
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: