Обновить

Комментарии 69

Адреса изображений не сильно хорошие.
Прямо читаю лекцию по информатике в 9м классе.
Что тут информатического? У нас это было в 9 классе на математике. Тут же про числа только.
Странная у вас математика была. Мы как-то больше арабскими числами в школе оперировали. Если не считать параграф введения в историю математики и некоторые олимпиадные задачи.
У нас весь лицей странным был (да и остаётся), но я не нахожу странным изучать математику на уроках математики.

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

А на информатике мы занимались информатикой, точнее, программированием.
… как новый орбит «Школа»...
Перезалейте картинки, пожалуйста, вы мне всю ностальгию испортили.
Альбина Гавриловна, вы все еще живы?
У вас опечатка «1112 = 1*22 + 0*21 + 1*20 = 4+0+1 = 510.» Нужно «1012 = 1*22 + 0*21 + 1*20 = 4+0+1 = 510.»
Спасибо. Исправил.
у индусов эту систему чисел заимствовали арабы, от которых её переняли европейцы. По каким-то причинам, в Европе за этой системой закрепилось название “арабская”.

Видимо, потому и закрепилась арабской. Им не было дела до того, у кого переняли систему арабы. )

Статья очень интересная. Люблю подобные темы. Спасибо!
Может не то чтобы не было дела, а просто не знали что арабы позаимствовали у индусов.
Помимо рассмотренных позиционных систем счисления, существуют и другие, например:
1) Троичная
2) Четверичная
3) Двенадцатеричная

Помимо рассмотренных чисел 2 и 10 бывают и другие, например: 3, 4, 12.
Помимо излишнего проявления ума бывает и правильное понимание написанного.
… которым целевая аудитория данного текста может и не обладать, ввиду того, что она с темой не знакома. Ну вот что стоило автору написать, например «иногда используются и другие» вместо «существуют и другие».
Не думаю, что среди целевой аудитории могут быть настолько недалекие люди, которые могут подумать, что, например, пятиричная система счисления невозможна.

Но вы таки правы, ваш вариант конкретнее звучит.
Ждем статью про нега-позиционные системы счисления и перевод чисел из них в позиционные системы счисления :)

Статья просто отличная, большое спасибо!
Почему в «Смешанные системы счисления» написано про перевод из P^N в P и обратно?
Число в смешанной системе счисление не обязательно набор из цифр разных систем. В конце главы про смешанные системы я добавил представление числа в 2-8 системе: (10 011 110)2-8. Оно является и восьмеричным и 2-м. Различие — в отображение чисел, так как мы могли просто написать 10011110, являющееся двоичным.

В качестве примера возьмем число (100 0101)2-10 = 4510. Если бы мы рассматривали (1000101)2, то в 10-й системе оно имело бы вид: (1000101)2 = 1*26+0*25+0*24+0*23+1*22+0*21+1*20 = 64+0+0+0+0+4+1=6910, что не равно числу 4510
Еще из известных и «почти» используемых непозиционных систем счисления — система остаточных классов.
Спасибо вам, погуглив по словам «система остаточных классов», попал на страницу «Система счисления» Википедии, где тот же материал изложен лаконичнее и понятнее.
Я указал только основные, поскольку если рассматривать остальные — статья получится крайне большой.
Быть может, но упоминать непозиционные системы счисления, как мне кажется, стоит лишь с целью рассказать про систему остаточных классов. Иначе это детский сад
По-моему у Кнута это всё написано гораздо лаконичнее и интереснее. И всякие прелести типа уравновешенной троичной системы есть.
осталось на хабре опубликовать статью «Основы сложения двузначных чисел в столбик»
Ещё любопытная штука, когда основание системы счисления отрицательное.
Это как?
Например, вот так: основание системы счисления -2, тогда в такой нега-двоичной системе число 111 будет в десятичной равно:

1 * (-2)^0 + 1 * (-2)^1 + 1 * (-2)^2 = 1 * 1 + 1 * (-2) + 1 * 4 = 1 — 2 + 4 = 3

или 11

1 * (-2)^0 + 1 * (-2)^1 = 1 * 1 + 1 * (-2) = 1 — 2 = -1

Для представления отрицательных чисел в такой системе счисления не нужен унарный минус: число с нечётным числом цифр будет положительное, а с чётным числом цифр — отрицательное.
Эх, ностальгия. У нас контрольные по этой муре когда-то были…

Но не увидел самого интересного и полезного.

1. Почему перешли с восьмеричной на шестнадцатеричную систему?

Число получается короче, что стало важно с увеличением объёмов памяти ЭВМ. После внедренная шестнадцатеричной системы, восьмеричная практически перестала использоваться.

2. Почему применяли именно восьмеричную и шестнадцатеричную системы?

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

3. Нет примера перевода из восьмеричной в шестнадцатеричную и наоборот. Хотя это очевидно, но всё-таки.
Касаемо 3-его пункта. Пример есть, правда из 16-ой в 8-ю — сделайте, пожалуйста, поиск по странице: «В качестве примера возьмем число 4F516. Для перевода в восьмеричную систему».

Причина, по которой не выделил этот перевод в отдельную главу — размер статьи. Учитывая, что я приводил ранее пример преобразования из шестнадцатеричной в восьмеричную, рассмотрел перевод из 2-ой в 8-ю, из 2-ой в 16-ю и обратно, я посчитал, что лучше опустить этот пункт.
В таком случае, слишком ного переводов из двоичной и в двоичную. Прикладной пользы от этого сейчас нет, по моему скромному мнению.

Заметка понравилась, я не критикую, просто хотелось дополнить.

С восьмеричной перешли на шестнадцатеричную исключительно в связи с изобретением байта в IBM S/360. В связи с чем размеры адресуемых единиц памяти стали всегда кратны четырём разрядам, и очень редко – трём. Попробуйте-ка разбить на байты восьмеричное значение 32-разрядного слова 012345670123.

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

>А совокупность регистров — это оперативная память

а по-моему, это все еще регистры процессора.
Набор простых безымянных регистров это обычно оперативная память. Регистры, кстати, не обязаны принадлежать процессору и могут располагаться во внешнем устройстве и отображаться в память или быть доступны через порты (для x86) или иным способом.
Для хабра не помешали бы примеры конверсии «неудобных» дробных десятичных в двоичные (иначе зачем вся статья?)…
НЛО прилетело и опубликовало эту надпись здесь
>для обозначения чисел 1, 5, 10, 50, 100, и 1000 используются заглавные латинские буквы I, V, X, C, D и M соответственно
у вас тут недочет один: 50 — это L, а D — это 500…
Верно. Спасибо.
Пожалуйста, еще про схему Горнера напишите (в вопросе перевода систем).
Извините, но нет. Я дал основы, которые помогут вам при более детальном изучении этой темы. В добавок, удовлетворив вашу просьбу, я буду вынужден выполнить и все остальные.
Помимо цифирных, существуют и буквенные (алфавитные) системы счисления, вот некоторые из них:
1) Славянская
2) Греческая (ионийская)


Пожалуйста, расскажите о славянской?
А если у нас система счисления 64-тиричная (0..9a..zA..Z)
как например перевести 1Ax в десятичную и наоборот???
Перевод в 10-ю: умножаем каждый разряд числа 1Ax на основание 64n, где n — номер разряда.

Перевод из 10-й в 64-ю: делим исходное число на основание 64, согласно правилам из главы «Преобразование из десятичной системы счисления в другие»
>умножаем каждый разряд числа 1Ax на основание 64n, где n — номер разряда.
иными словами где-то так:
1Ax = 1 * 643 + 10 * 642 + 61 (x)
1Ax = 1·64²+36·64+33
спасибо за пример
а где в разделе «Преобразование из десятичной системы счисления в другие» десятичная система то?
Считаю, что незаслуженно обошли вниманием гибридную 20рично-5ричную систему счисления Майя.
ИМХО, она гораздо нагляднее вавилонской, и без грязных хаков, и с нулём.
ну и да кучи — можно было рассказать про пятеричную Римскую систему счисления (не знаю к какой системе ее отнести, гибридная?)
что это за система такая?
1 I лат. unus
5 V лат. quinque
10 X лат. decem
50 L лат. quinquaginta
100 C лат. centum
500 D лат. quingenti
1000 M лат. mille

I, II, III, IV, V, VI, VII, VII, IX
X, XI, XII, XIII,XIV, XV, XVI, XVII, XVIII,XIX,XX
…
(40)XL, XLI,…, (49) XLIX,
L, LI, LII…
…
(90) XC, XCI,…
100 C, CI…
говорят, что существуют знаки описания чисел 5000 10 000 и 50 000, но источник утерян
вот эти зсимволы: ↀ ↁ ↂ
чем это отличается от описанной в статье и чем она пятиричная?
ничем
и еще на Руси практиковалась двенадцатиричная система счисления,
отсюда и дюжина пошла. Считали большим пальцем по косточкам пальцев этой же ладони.
«По каким-то причинам, в Европе за этой системой закрепилось название “арабская”.»
Леонардо Пизанский, также известный под прозвищем Фибоначчи (а это именно прозвище) учился у арабов, т.к. его отец с ними торговал. Там он перенял систему счисления и назвал её арабской, естественно, не углубляясь в суть вопроса.
> А совокупность регистров — это оперативная память.
Слава богу, это не так :)
А так кое-что новое узнал, спасибо. Вот если бы вы добавили 2 предложения про то как Инки использовали кипу было бы еще интереснее.
Не хватает упоминания о системах счисления с иррациональным основанием.
Я думаю, что фиббоначиеву систему нельзя отнести к смешанным в вашей классификации. У нее в каждой позиции либо 0, либо 1, т. е. набор допустимых символов разряда везде один и тот же.
В фибоначчиевой системе счисления основаниями являются числа Фибоначчи: 1, 2, 3, 5, 8 и т.д. Допустимые коэффициенты: 0 и 1. Смешанная система — позиционная. Согласно определению, каждый разряд позиционной системы умножается на её основание, возведенное в степень, равную номеру разряда. В системе фибоначчи — каждый разряд — это число с новым основанием, соответсвующим ряду фибоначчи. Таким образом, каждый разряд числа (a1a2a3)F в фибоначчиевой системе счисления можно представить, как: (a1*F0)(a2*F0)(a3*F0).
Сэр, я в курсе принципов записи фибоначчиевой системы счисления. Вот вы пишете в посте «Смешанная система — в каждом разряде (позиции) числа набор допустимых символов (цифр) может отличаться от наборов других разрядов». В фибоначчиевой системе счисления в любом разряде набор допустимых символов один и тот же. Почему же она тогда смешанная?
"<...>может отличаться <...>". Ранее рассматривалась (2-8)-я система, которая состоит из элементов двоичной системы, тем не менее, она смешанная. Не обязательно использовать весь алфавит каждой системы счисления, которая применяется. При условии, когда мы видим схожесть — необходимо искать другие признаки, которые помогут сделать правильный вывод. В данном случае — это основания, которые при записи числа в фибоначчиевой системе, преимущественно, опускаются.
Исправление: (a1*F20)(a2*F10)(a3*F00).
Статейка доставила удовольствие… понастольгировать. В детстве, помню, меня очень увлекало разнообразие и красочность непозиционных систем. Была энциклопедия толстенькая, называлась вроде «Аванта. Математика» (где-то 2000г.), там с картинками рассказывалось и про египетскую, и про шумерску, и, что меня особо впечатлило, про систему племени (кажется) майя. Последняя вроде и не позиционная, но, с другой стороны, смешанная (если не изменяет память, майя использовали точки и горизонтальные черточки, записанный друг под другом, черточка значила 5, точка — 1, таким образом число представлялось такой себе колонкой вертикальной; нижний разряд значил от 0 до 20, второй значил от 0 до 18 умножить на 20, третий разряд — от 0 до 20 умножить на 20*18; в то время как все народы Евразии использовали только 1-10-100-1000-… и 1-60-3600-… у Шумеров, то есть степени одного числа, майя использовали смешанно 20 и 18 в качестве основы)

Хорошая была книга, для детей в самый раз, не сложно, без каких-либо формул.
Есть замечательная система по основанию золотого сечения F=(sqrt(5)+1)/2. Позиционная, с цифрами 0 и 1. Обладает тем свойством, что любое натуральное число имеет в ней конечную запись:
2=1.11
3=11.01
4=101.01
5=101.1111
и т.д.

Хорошая статья. Я смотрел по этой sysadm.pp.ua/internet/numeral-systems.html. Там есть формулы и таблички не плохие, может понадобиться.
Отлично обьяснил, спасибо!
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации