Как перевести восьмеричное число в десятичное

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

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

Алгоритм перевода целого восьмеричного числа в десятичную систему счисления

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

где A — число, q — основание системы счисления, а n — количество разрядов числа.

Зная основание системы счисления (8), выведем формулу перевода:

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

Применив выведенную формулу, получим:

74718=7 ∙ 8 3 + 4 ∙ 8 2 + 7 ∙ 8 1 + 1 ∙ 8 0 = 7 ∙ 512 + 4 ∙ 64 + 7 ∙ 8 + 1 ∙ 1 = 3584 + 256 + 56 + 1 = 389710

Алгоритм перевода восьмеричной дроби в десятичную систему счисления

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

где A — число, q — основание системы счисления, n — количество целых разрядов, а m — количество дробных разрядов числа. Зная основание системы счисления (8), выведем формулу перевода:

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

Применив выведенную формулу, получим:

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

Источник

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

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

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

Для указания системы счисления при записи числа используется нижний индекс, который ставится после числа:
20010 = 110010002 = 3108 = C816

Кратко об основных системах счисления

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

Двоичная система счисления. Используется в вычислительной технике. Для записи числа используются цифры 0 и 1.

Восьмеричная система счисления. Также иногда применяется в цифровой технике. Для записи числа используются цифры от 0 до 7.

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

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

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

Переведем число 37510 в восьмеричную систему:

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

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

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

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

Тетрада0000000100100011010001010110011110001001101010111100110111101111
Цифра0123456789ABCDEF

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

Каждый разряд восьмеричного числа будем делить на 2 и записывать остатки в обратном порядке, формируя группы по 3 разряда двоичного числа. Если в группе получилось меньше 3 разрядов, тогда дополняем нулями. Записываем все группы по порядку, отбрасываем ведущие нули, если имеются, и получаем двоичное число.

Используем таблицу триад:

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

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

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

Используем таблицу тетрад:

Цифра0123456789ABCDEF
Тетрада0000000100100011010001010110011110001001101010111100110111101111

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

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

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

Источник

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

Перед тем как перейти к алгоритму перевода, вспомним алфавит восьмеричной и десятичной системы счисления:

ОснованиеНазваниеАлфавит
8Восьмеричная0, 1, 2, 3, 4, 5, 6, 7
10Десятичная0, 1, 2, 3, 4, 5, 6, 7, 8, 9

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

Алгоритм перевода целых десятичных чисел в восьмеричную систему счисления

Пример 1 : перевести десятичное число 1234 в восьмеричную систему счисления

Для наглядности произведем деление «столбиком». Решение будет выглядеть следующим образом:

Как перевести восьмеричное число в десятичное

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

Алгоритм перевода десятичной дроби в восьмеричную систему

Пример 2: перевести число 0,1234 в восьмеричную систему.

Решение будет выглядеть следующим образом:

0.1234 ∙ 8 = 0.9872 (0)
0.9872 ∙ 8 = 7.8976 (7)
0.8976 ∙ 8 = 7.1808 (7)
0.1808 ∙ 8 = 1.4464 (1)
0.4464 ∙ 8 = 3.5712 (3)
0.5712 ∙ 8 = 4.5696 (4)
0.5696 ∙ 8 = 4.5568 (4)
0.5568 ∙ 8 = 4.4544 (4)
0.4544 ∙ 8 = 3.6352 (3)
0.6352 ∙ 8 = 5.0816 (5)
0.0816 ∙ 8 = 0.6528 (0)

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

Перевод дробного десятичного числа в восьмеричную систему

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

Пример 3: перевести число 1010,1875 из десятичной системы в восьмеричную

Для решения примера потребуется отдельно перевести 1010 и отдельно 0,1875 из десятичной системы в восьмеричную, используя вышеизложенные алгоритмы. Таким образом переведя 1010, получим:

Как перевести восьмеричное число в десятичное

Перевод десятичной дроби 0,1875 выглядит так:

0.1875 ∙ 8 = 1.5 (1)
0.5 ∙ 8 = 4 (4)

Теперь осталось соединить результаты перевода. Таким образом: 1010.187510=1762.148

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

Источник

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

Как перевести восьмеричное число в десятичное

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

Итак в десятичной системе счисления мы пользуемся 10 цифрами с помощью которых можем составить любое число. Это цифры 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

В восьмеричной системе счисления у нас только восемь цифр 0, 1, 2, 3, 4, 5, 6, 7, с помощью которых мы можем составлять любые числа.

В восьмеричной системе счисления после семерки идет цифра 10 т.к. цифры 8 в ней нет. Почему? А потому что когда мы работаем в десятичной системе счисления то когда доходим до 9 то при прибавлении к ней единицы 9+1 получаем, что 9 заменяется на ноль, слева от которого добавляется 1 (к старшему разряду).

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

Десятичная

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

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

А теперь рассмотрим как перевети число из десятичной системы счисления в восьмеричную. Давайте возьмем число 259 в десятичной системе счисления.

Как перевести восьмеричное число в десятичное

Число в десятичной системе счисления делим на основание степени (восьмерку). Получаем какую то целую часть и остаток. Если целая часть больше либо равна 8, то опять делим на основание степени и получаем целую часть и остаток. Как только целая часть становится меньше восьми, начинаем выписывать, сначала последнюю целую часть, а затем все остатки в обратном порядке. Это и будет число в новой системе счисления, в нашем случае в восьмиричной.

И сделаем обратное преобразование переведем число 403 в восьмеричной системе счисления в десмятичную.

Как перевести восьмеричное число в десятичное

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

Источник

Программирование на 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-ми восьмеричных чисел.

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

Источник

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

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