Люди не сразу научились считать. Первобытное общество ориентировалось на незначительное число предметов - один или два. Все, что было больше, по умолчанию наименовалось "много". Именно это считается началом современной системы исчисления.

Краткая историческая справка

В процессе развития цивилизации у людей стала появляться необходимость разделять небольшие совокупности предметов, объединенные общими признаками. Стали возникать соответствующие понятия: "три", "четыре" и так далее до "семи". Однако это был закрытый, ограниченный ряд, последнее понятие в котором продолжало нести смысловую нагрузку более раннего "много". Ярким примером этого является народный фольклор, дошедший до нас в первозданном виде (например, пословица "Семь раз отмерь - один раз отрежь").

Возникновение сложных способов счета

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

Счет на пальцах

В условиях крайне скудного словарного запаса первобытного человека жесты довольно часто служили важным дополнением к передаваемой информации. Преимущество пальцев было в их универсальности и в постоянном нахождении с объектом, который хотел передать информацию. Однако здесь есть и существенные недостатки: значительная ограниченность и кратковременность передачи. Поэтому весь счет людей, пользовавшихся "пальцевым способом", ограничивался цифрами, кратными количеству пальцев: 5 - соответствует количеству пальцев на одной руке; 10 - на обеих руках; 20 - общее количество на руках и ногах. Благодаря сравнительно медленному развитию числового запаса данная система просуществовала достаточно долгий временной промежуток.

Первые усовершенствования

С развитием системы исчисления и расширением возможностей и потребностей человечества максимальным используемым числом в культурах многих народов стало 40. Под ним также понималось неопределенное (не поддающееся счету) количество. На Руси широкое распространение получило выражение "сорок сороков". Его смысл сводился к количеству предметов, которое невозможно посчитать. Следующая ступень развития - это появление числа 100. Далее началось деление на десятки. Впоследствии стали появляться числа 1000, 10 000 и так далее, каждое из которых несло смысловую нагрузку, аналогичную семи и сорока. В современном мире границы конечного счета не определены. На сегодняшний день введено универсальное понятие "бесконечность".

Целые и дробные числа

Современные системы исчисления за наименьшее количество предметов принимают единицу. В большинстве случаев она является неделимой величиной. Однако при более точных измерениях она также подвергается дроблению. Именно с этим связано появившееся на определенном этапе развития понятие дробного числа. Например, вавилонская система денег (весов) составляла 60 мин, что равнялось 1 талану. В свою очередь 1 мина приравнивалась к 60 шекелям. Именно на основе этого вавилонская математика широко применяла шестидесятеричное дробление. Широко используемые в России дроби пришли к нам от древних греков и индийцев. При этом сами записи идентичны индийским. Незначительное отличие составляет отсутствие у последних дробной черты. Греки сверху прописывали числитель, а снизу знаменатель. Индийский вариант написания дробей получил широкое развитие в Азии и Европе благодаря двум ученым: Мухаммеду Хорезмскому и Леонардо Фибоначчи. Римская система исчисления приравнивала 12 единиц, называемых унциями, к целому (1 асс), соответственно, в основе всех вычислений лежали двенадцатиричные дроби. Вместе с общепринятыми довольно часто применялись и специальные деления. Так, например, астрономами до XVII века применялись так называемые шестидесятиричные дроби, которые были впоследствии вытеснены десятичными (ввел в обиход Симон Стевин - ученый-инженер). В результате дальнейшего прогресса человечества возникла необходимость в еще более значительном расширении числового ряда. Так появились отрицательные, иррациональные и Знакомый всем ноль появился относительно недавно. Он начал применяться при введении в современные системы исчисления отрицательных чисел.

Использование непозиционного алфавита

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

Существуют недостатки таких систем. Среди основных следует выделять:

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

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

Один из наиболее распространенных способов счета

Сохранившаяся до наших дней практически в неизменном виде, является одной из самых известных. При помощи нее обозначаются различные даты, юбилейные в том числе. Также она нашла широкое применение в литературе, науке и других областях жизни. В римской системе исчисления используются всего семь букв каждая из которых соответствует определенному числу: I = 1; V = 5; X = 10; L = 50; С = 100; D = 500; M = 1000.

Возникновение

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

Особенности

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

  • сложение происходит при том условии, что большее стоит перед меньшим (XI = 11);
  • вычитание происходит, если меньшая цифра стоит перед большей (IX = 9);
  • один и тот же знак не может стоять подряд более трех раз (например, 90 записывается ХС вместо LXXXX).

Недостатком ее является неудобство выполнения арифметических действий. При этом она просуществовала довольно долго и перестала использоваться в Европе в качестве основной системы исчисления сравнительно недавно - в 16-м веке.

Римская система исчисления не считается абсолютно непозиционной. Связано это с тем, что в ряде случаев происходит вычитание меньшей цифры из большей (например, IX = 9).

Способ счета в Древнем Египте

Третье тысячелетие до нашей эры считается моментом возникновения системы исчисления в Древнем Египте. Суть ее состояла в записи специальными знаками цифр 1, 10, 102, 104, 105, 106, 107. Все остальные числа записывались в виде комбинации данных исходных знаков. При этом существовало ограничение - каждая цифра должна была повторяться не более девяти раз. В основе этого способа счета, который современные ученые называют "непозиционная десятичная система исчисления", лежит простой принцип. Смысл его состоит в том, что написанное число равнялось сумме всех цифр, из которых оно состояло.

Унарный способ счета

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

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

Это позиционный способ счета, в основании которого лежит число 8. Для отображения чисел используется цифровой ряд от 0 до 7. Широкое применение данная система получила в производстве и использовании цифровых устройств. Основным ее преимуществом является легкий перевод чисел. Их можно преобразовать в и обратно. Данные манипуляции осуществляются благодаря замене чисел. Из восьмиричной системы они переводятся в двоичные триплеты (например, 28 = 0102, 68 = 1102). Данный способ счета был распространен в области компьютерного производства и программирования.

Шестнадцатиричная система исчисления

В последнее время в компьютерной сфере данный способ счета используется достаточно активно. В корне данной системы лежит основание - 16. Система исчисления, базирующаяся на нем, предполагает использование цифр от 0 до 9 и ряда букв латинского алфавита (от А до F), которые применяются для обозначения интервала от 1010 до 1510. Данный способ счета, как уже было отмечено, используется при производстве программного обеспечения и документации, связанной с компьютерами и их составляющими. Основано это на свойствах современного компьютера, основной единицей которого является 8-битная память. Ее удобно преобразовывать и записывать при помощи двух шестнадцатиричных цифр. Основоположником такого процесса явилась система IBM/360. Документация для нее была впервые переведена этим способом. Стандарт Юникода предусматривает запись любого символа в шестнадцатиричном виде с использованием не менее 4 цифр.

Способы записи

Математическое оформление способа счета основывается на указании его в нижнем индексе в десятичной системе. Пример, число 1444 записывается в виде 144410. Языки программирования для записи шестнадцатиричных систем имеют разные синтаксисы:


Заключение

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

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

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

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

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

Таким образом,

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

Умножение прекращается, либо когда дробная часть становится равна 0, либо, когда будет получена требуемая точность представления числа.

Аналогично переводятся позиционные числа и с другими основаниями СС.

5.3. Смешанные сс

В смешанных СС каждая цифра в СС с основанием Р записывается в виде цифры с основанием Q, (Q

(двоично-десятичная СС)

Аналогично рассмотренной двоично-десятичной СС можно использовать и другие смешанные СС при различных значениях PиQ(P- старшее основание СС,Q– младшее).

Отдельно рассматривается случай, когда
, гдеl– целое положительное число. В этом случае запись числа в смешанной СС совпадает с изображением этого числа в СС с основаниемQ. Например,
, т. е. запись шестнадцатеричного числа в смешанной двоично-шестнадцатеричной СС будет тождественна его записи в двоичной СС. Это свойство широко используется на практике для сокращенной записи чисел заданных в СС с небольшим основанием.

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

Результат уже получен!

Перевод целых и дробных чисел из одной системы счисления в любую другую − теория, примеры и решения

Существуют позиционные и не позиционные системы счисления. Арабская система счисления, которым мы пользуемся в повседневной жизни, является позиционной, а римская − нет. В позиционных системах счисления позиция числа однозначно определяет величину числа. Рассмотрим это на примере числа 6372 в десятичном системе счисления. Пронумеруем это число справа налево начиная с нуля:

Тогда число 6372 можно представить в следующем виде:

6372=6000+300+70+2 =6·10 3 +3·10 2 +7·10 1 +2·10 0 .

Число 10 определяет систему счисления (в данном случае это 10). В качестве степеней взяты значения позиции данного числа.

Рассмотрим вещественное десятичное число 1287.923. Пронумеруем его начиная с нуля позиции числа от десятичной точки влево и вправо:

Тогда число 1287.923 можно представить в виде:

1287.923 =1000+200+80 +7+0.9+0.02+0.003 = 1·10 3 +2·10 2 +8·10 1 +7·10 0 +9·10 -1 +2·10 -2 +3·10 -3 .

В общем случае формулу можно представить в следующем виде:

Ц n ·s n +Ц n-1 ·s n-1 +...+Ц 1 ·s 1 +Ц 0 ·s 0 +Д -1 ·s -1 +Д -2 ·s -2 +...+Д -k ·s -k

где Ц n -целое число в позиции n , Д -k - дробное число в позиции (-k), s - система счисления.

Несколько слов о системах счисления.Число в десятичной системе счисления состоит из множества цифр {0,1,2,3,4,5,6,7,8,9}, в восьмеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7}, в двоичной системе счисления - из множества цифр {0,1}, в шестнадцатеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}, где A,B,C,D,E,F соответствуют числам 10,11,12,13,14,15.В таблице Таб.1 представлены числа в разных системах счисления.

Таблица 1
Система счисления
10 2 8 16
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F

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

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

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

С помощью формулы (1) можно перевести числа из любой системы счисления в десятичную систему счисления.

Пример 1. Переводить число 1011101.001 из двоичной системы счисления (СС) в десятичную СС. Решение:

1 ·2 6 +0 ·2 5 +1 ·2 4 +1 ·2 3 +1 ·2 2 +0 ·2 1 +1 ·2 0 +0 ·2 -1 +0 ·2 -2 +1 ·2 -3 =64+16+8+4+1+1/8=93.125

Пример 2. Переводить число 1011101.001 из восьмеричной системы счисления (СС) в десятичную СС. Решение:

Пример 3 . Переводить число AB572.CDF из шестнадцатеричной системы счисления в десятичную СС. Решение:

Здесь A -заменен на 10, B - на 11, C - на 12, F - на 15.

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

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

Целую часть числа переводится из десятичной СС в другую систему счисления - последовательным делением целой части числа на основание системы счисления (для двоичной СС - на 2, для 8-ичной СС - на 8, для 16-ичной - на 16 и т.д.) до получения целого остатка, меньше, чем основание СС.

Пример 4 . Переведем число 159 из десятичной СС в двоичную СС:

159 2
158 79 2
1 78 39 2
1 38 19 2
1 18 9 2
1 8 4 2
1 4 2 2
0 2 1
0

Как видно из Рис. 1, число 159 при делении на 2 дает частное 79 и остаток 1. Далее число 79 при делении на 2 дает частное 39 и остаток 1 и т.д. В результате построив число из остатков деления (справа налево) получим число в двоичной СС: 10011111 . Следовательно можно записать:

159 10 =10011111 2 .

Пример 5 . Переведем число 615 из десятичной СС в восьмеричную СС.

615 8
608 76 8
7 72 9 8
4 8 1
1

При приведении числа из десятичной СС в восьмеричную СС, нужно последовательно делить число на 8, пока не получится целый остаток меньшее, чем 8. В результате построив число из остатков деления (справа налево) получим число в восьмеричной СС: 1147 (см. Рис. 2). Следовательно можно записать:

615 10 =1147 8 .

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

19673 16
19664 1229 16
9 1216 76 16
13 64 4
12

Как видно из рисунка Рис.3, последовательным делением числа 19673 на 16 получили остатки 4, 12, 13, 9. В шестнадцатеричной системе счисления числе 12 соответствует С, числе 13 - D. Следовательно наше шестнадцатеричное число - это 4CD9.

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

Рассмотрим вышеизложенное на примерах.

Пример 7 . Переведем число 0.214 из десятичной системы счисления в двоичную СС.

0.214
x 2
0 0.428
x 2
0 0.856
x 2
1 0.712
x 2
1 0.424
x 2
0 0.848
x 2
1 0.696
x 2
1 0.392

Как видно из Рис.4, число 0.214 последовательно умножается на 2. Если в результате умножения получится число с целой частью, отличное от нуля, то целая часть записывается отдельно (слева от числа), а число записывается с нулевой целой частью. Если же при умножении получиться число с нулевой целой частью, то слева от нее записывается нуль. Процесс умножения продолжается до тех пор, пока в дробной части не получится чистый нуль или же не получим требуемое количество разрядов. Записывая жирные числа (Рис.4) сверху вниз получим требуемое число в двоичной системе счисления: 0.0011011 .

Следовательно можно записать:

0.214 10 =0.0011011 2 .

Пример 8 . Переведем число 0.125 из десятичной системы счисления в двоичную СС.

0.125
x 2
0 0.25
x 2
0 0.5
x 2
1 0.0

Для приведения числа 0.125 из десятичной СС в двоичную, данное число последовательно умножается на 2. В третьем этапе получилось 0. Следовательно, получился следующий результат:

0.125 10 =0.001 2 .

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

0.214
x 16
3 0.424
x 16
6 0.784
x 16
12 0.544
x 16
8 0.704
x 16
11 0.264
x 16
4 0.224

Следуя примерам 4 и 5 получаем числа 3, 6, 12, 8, 11, 4. Но в шестнадцатеричной СС числам 12 и 11 соответствуют числа C и B. Следовательно имеем:

0.214 10 =0.36C8B4 16 .

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

0.512
x 8
4 0.096
x 8
0 0.768
x 8
6 0.144
x 8
1 0.152
x 8
1 0.216
x 8
1 0.728

Получили:

0.512 10 =0.406111 8 .

Пример 11 . Переведем число 159.125 из десятичной системы счисления в двоичную СС. Для этого переведем отдельно целую часть числа (Пример 4) и дробную часть числа (Пример 8). Далее объединяя эти результаты получим:

159.125 10 =10011111.001 2 .

Пример 12 . Переведем число 19673.214 из десятичной системы счисления в шестнадцатеричную СС. Для этого переведем отдельно целую часть числа (Пример 6) и дробную часть числа (Пример 9). Далее объединяя эти результаты получим.

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

Можно вводить как целые числа, например 34 , так и дробные, например, 637.333 . Для дробных чисел указывается точность перевода после запятой.

Вместе с этим калькулятором также используют следующие:

Способы представления чисел

Двоичные (binary) числа – каждая цифра означает значение одного бита (0 или 1), старший бит всегда пишется слева, после числа ставится буква «b». Для удобства восприятия тетрады могут быть разделены пробелами. Например, 1010 0101b.
Шестнадцатеричные (hexadecimal) числа – каждая тетрада представляется одним символом 0...9, А, В, ..., F. Обозначаться такое представление может по-разному, здесь используется только символ «h» после последней шестнадцатеричной цифры. Например, A5h. В текстах программ это же число может обозначаться и как 0хА5, и как 0A5h, в зависимости от синтаксиса языка программирования. Незначащий ноль (0) добавляется слева от старшей шестнадцатеричной цифры, изображаемой буквой, чтобы различать числа и символические имена.
Десятичные (decimal) числа – каждый байт (слово, двойное слово) представляется обычным числом, а признак десятичного представления (букву «d») обычно опускают. Байт из предыдущих примеров имеет десятичное значение 165. В отличие от двоичной и шестнадцатеричной формы записи, по десятичной трудно в уме определить значение каждого бита, что иногда приходится делать.
Восьмеричные (octal) числа – каждая тройка бит (разделение начинается с младшего) записывается в виде цифры 0–7, в конце ставится признак «о». То же самое число будет записано как 245о. Восьмеричная система неудобна тем, что байт невозможно разделить поровну.

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

Перевод целых десятичных чисел в любую другую системы счисления осуществляется делением числа на основание новой системы счисления до тех пор, пока в остатке не останется число меньшее основания новой системы счис­ления. Новое число записывается в виде остатков деления, начиная с последнего.
Перевод правильной десятичной дроби в другую ПСС осуществляется умножением только дробной части числа на основание новой системы счисления до тех пор пока в дробной части не останутся все нули или пока не будет достигнута заданная точность перевода. В результате выполнения каждой операции умножения формируется одна цифра нового числа начиная со старшего.
Перевод неправильной дроби осуществляется по 1 и 2 правилу. Целую и дробную часть записывают вместе, отделяя запятой.

Пример №1 .



Перевод из 2 в 8 в 16 системы счисления.
Эти системы кратны двум, следовательно, перевод осуществляется с использованием таблицы соответствия (см. ниже).

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

Пример №2 . 1010111010,1011 = 1.010.111.010,101.1 = 1272,51 8
здесь 001=1; 010=2; 111=7; 010=2; 101=5; 001=1

При переводе в шестнадцатеричную систему необходимо делить число на части, по четыре цифры, соблюдая те же правила.
Пример №3 . 1010111010,1011 = 10.1011.1010,1011 = 2B12,13 HEX
здесь 0010=2; 1011=B; 1010=12; 1011=13

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

Пример №4 .
Пример перевода из двоичной в десятичную систему счисления.

1010010,101 2 = 1·2 6 +0·2 5 +1·2 4 +0·2 3 +0·2 2 +1·2 1 +0·2 0 + 1·2 -1 +0·2 -2 +1·2 -3 =
= 64+0+16+0+0+2+0+0.5+0+0.125 = 82.625 10 Пример перевода из восьмеричной в десятичную систему счисления. 108.5 8 = 1*·8 2 +0·8 1 +8·8 0 + 5·8 -1 = 64+0+8+0.625 = 72.625 10 Пример перевода из шестнадцатеричной в десятичную систему счисления. 108.5 16 = 1·16 2 +0·16 1 +8·16 0 + 5·16 -1 = 256+0+8+0.3125 = 264.3125 10

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

  1. Из десятичной системы счисления:
    • разделить число на основание переводимой системы счисления;
    • найти остаток от деления целой части числа;
    • записать все остатки от деления в обратном порядке;
  2. Из двоичной системы счисления
    • Для перевода в десятичную систему счисления необходимо найти сумму произведений основания 2 на соответствующую степень разряда;
    • Для перевода числа в восьмеричную необходимо разбить число на триады.
      Например, 1000110 = 1 000 110 = 106 8
    • Для перевода числа из двоичной системы счисления в шестнадцатеричную необходимо разбить число на группы по 4 разряда.
      Например, 1000110 = 100 0110 = 46 16
Позиционной называется система , для которой значимость или вес цифры зависит от ее места расположения в числе. Соотношение между системами выражается таблицей.
Таблица соответствия систем счисления:
Двоичная СС Шестнадцатеричная СС
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F

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

Пример №2 . Перевести число 100,12 из десятичной системы счисления в восьмеричную систему счисления и обратно. Пояснить причины расхождений.
Решение .
1 Этап. .

Остаток от деления записываем в обратном порядке. Получаем число в 8-ой системе счисления: 144
100 = 144 8

Для перевода дробной части числа последовательно умножаем дробную часть на основание 8. В результате каждый раз записываем целую часть произведения.
0.12*8 = 0.96 (целая часть 0 )
0.96*8 = 7.68 (целая часть 7 )
0.68*8 = 5.44 (целая часть 5 )
0.44*8 = 3.52 (целая часть 3 )
Получаем число в 8-ой системе счисления: 0753.
0.12 = 0.753 8

100,12 10 = 144,0753 8

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

Для перевода целой части необходимо умножить разряд числа на соответствующую ему степень разряда.
144 = 8 2 *1 + 8 1 *4 + 8 0 *4 = 64 + 32 + 4 = 100

Для перевода дробной части необходимо разделить разряд числа на соответствующую ему степень разряда
0753 = 8 -1 *0 + 8 -2 *7 + 8 -3 *5 + 8 -4 *3 = 0.119873046875 = 0.1199

144,0753 8 = 100,96 10
Разница в 0,0001 (100,12 - 100,1199) объясняется погрешностью округлений при переводе в восьмеричную систему счислений. Эту погрешность можно уменьшить, если взять большее число разрядов (например, не 4, а 8).

Сдающим ЕГЭ и не только…

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

Например, нужно перевести число 810 10 в двоичную систему:

Результат записываем в обратном порядке снизу вверх. Получается 81010 = 11001010102

Если нужно переводить в двоичную систему довольно большие числа, то лестница делений приобретает размер многоэтажного дома. И как тут собрать все единички с нулями и ни одной не пропустить?

В программу ЕГЭ по информатике входят несколько задач, связанных с переводом чисел из одной системы в другую. Как правило, это преобразование между 8- и 16-ричными системами и двоичной. Это разделы А1, В11. Но есть и задачи с другими системами счисления, как например, в разделе B7.

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

Таблица степеней числа 2:

2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10
2 4 8 16 32 64 128 256 512 1024

Она легко получается умножением предыдущего числа на 2. Так, что если помните не все эти числа, остальные нетрудно получить в уме из тех, которые помните.

Таблица двоичных чисел от 0 до 15 c 16-ричным представлением:

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
0 1 2 3 4 5 6 7 8 9 A B C D E F

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

Перевод целых чисел

Итак, начнем с перевода сразу в двоичную систему. Возьмём то же число 810 10 . Нам нужно разложить это число на слагаемые, равные степеням двойки.

  1. Ищем ближайшую к 810 степень двойки, не превосходящую его. Это 2 9 = 512.
  2. Вычитаем 512 из 810, получаем 298.
  3. Повторим шаги 1 и 2, пока не останется 1 или 0.
  4. У нас получилось так: 810 = 512 + 256 + 32 + 8 + 2 = 2 9 + 2 8 + 2 5 + 2 3 + 2 1 .
Далее есть два способа, можно использовать любой из них. Как легко увидеть, что в любой системе счисления её основание всегда 10. Квадрат основания всегда будет 100, куб 1000. То есть степень основания системы счисления - это 1 (единица), и за ней столько нулей, какова степень.

Способ 1 : Расставить 1 по тем разрядам, какие получились показатели у слагаемых. В нашем примере это 9, 8, 5, 3 и 1. В остальных местах будут стоять нули. Итак, мы получили двоичное представление числа 810 10 = 1100101010 2 . Единицы стоят на 9-м, 8-м, 5-м, 3-м и 1-м местах, считая справа налево с нуля.

Способ 2 : Распишем слагаемые как степени двойки друг под другом, начиная с большего.

810 =

А теперь сложим эти ступеньки вместе, как складывают веер: 1100101010 .

Вот и всё. Попутно также просто решается задача «сколько единиц в двоичной записи числа 810?».

Ответ - столько, сколько слагаемых (степеней двойки) в таком его представлении. У 810 их 5.

Теперь пример попроще.

Переведём число 63 в 5-ричную систему счисления. Ближайшая к 63 степень числа 5 - это 25 (квадрат 5). Куб (125) будет уже много. То есть 63 лежит между квадратом 5 и кубом. Тогда подберем коэффициент для 5 2 . Это 2.

Получаем 63 10 = 50 + 13 = 50 + 10 + 3 = 2 * 5 2 + 2 * 5 + 3 = 223 5 .

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

Переведем в двоичную систему число 547 8 .

547 8 = 101 100 111
5 4 7

Ещё одно, например 7D6A 16 .

7D6A 16 = (0)111 1101 0110 1010
7 D 6 A

Переведем в 16-ричную систему число 7368. Сначала цифры запишем тройками, а потом поделим их на четверки с конца: 736 8 = 111 011 110 = 1 1101 1110 = 1DE 16 . Переведем в 8-ричную систему число C25 16 . Сначала цифры запишем четвёрками, а потом поделим их на тройки с конца: C25 16 = 1100 0010 0101 = 110 000 100 101 = 6045 8 . Теперь рассмотрим перевод обратно в десятичную. Он труда не представляет, главное не ошибиться в расчётах. Раскладываем число на многочлен со степенями основания и коэффициентами при них. Потом всё умножаем и складываем. E68 16 = 14 * 16 2 + 6 * 16 + 8 = 3688 . 732 8 = 7 * 8 2 + 3*8 + 2 = 474 .

Перевод отрицательных чисел

Здесь нужно учесть, что число будет представлено в дополнительном коде. Для перевода числа в дополнительный код нужно знать конечный размер числа, то есть во что мы хотим его вписать - в байт, в два байта, в четыре. Старший разряд числа означает знак. Если там 0, то число положительное, если 1, то отрицательное. Слева число дополняется знаковым разрядом. Беззнаковые (unsigned) числа мы не рассматриваем, они всегда положительные, а старший разряд в них используется как информационный.

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

Итак, переведем число -79 в двоичную систему. Число займёт у нас один байт.

Переводим 79 в двоичную систему, 79 = 1001111. Дополним слева нулями до размера байта, 8 разрядов, получаем 01001111. Меняем 1 на 0 и 0 на 1. Получаем 10110000. К результату прибавляем 1, получаем ответ 10110001 . Попутно отвечаем на вопрос ЕГЭ «сколько единиц в двоичном представлении числа -79?». Ответ - 4.

Прибавление 1 к инверсии числа позволяет устранить разницу между представлениями +0 = 00000000 и -0 = 11111111. В дополнительном коде они будут записаны одинаково 00000000.

Перевод дробных чисел

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

Переведем число 0,6752 в двоичную систему.

0 ,6752
*2
1 ,3504
*2
0 ,7008
*2
1 ,4016
*2
0 ,8032
*2
1 ,6064
*2
1 ,2128

Процесс можно продолжать долго, пока не получим все нули в дробной части или будет достигнута требуемая точность. Остановимся пока на 6-м знаке.

Получается 0,6752 = 0,101011 .

Если число было 5,6752, то в двоичном виде оно будет 101,101011 .

Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png