Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Игры с двоичным кодом

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> Игры с двоичным кодом
Имя
Сообщение << Старые топики   Новые топики >>
Игры с двоичным кодом - 2009-12-11 11:38:35.673333   
Agent Smith

Сообщений: 976
Оценки: 0
Присоединился: 2007-04-10 21:56:49.593333
Извините, если пишу не в тот раздел…

01010101010110101111

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

1- 1
2- 10
3- 11
4- 100

10- 1010

100 - 1100100


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

___1______1______1_____1_____1_____1_____1____1____1____1___1___1___1___1__1__1_1_1_1_1
524288_262144_131072_65536_32768_16384_8192_4096_2048_1024_512_256_128_64_32_16_8_4_2_1

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


2 = 10
4 = 100
8 = 1000
16 = 10000

524288 = 10000000000000000000

А теперь вернемся к нашему коду (01010101010110101111). Что бы перевести его в десятичную цифру, построим еще эти 2 ряда, которые я привел выше, но там где в цифре стоят ноли, у нас также будет ноли:

___0______1______0_____1_____0_____1_____0____1____0____1___0___1___1___0__1__0_1_1_1_1
524288_262144_131072_65536_32768_16384_8192_4096_2048_1024_512_256_128_64_32_16_8_4_2_1

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

___1_____1_____1_____1____1___1___1___1_1_1_1_1
262144_65536_16384_4096_1024_256_128_32_8_4_2_1

Суммировав все числа из нижнего ряда, я получаем число 349615. Это число соответствует двоичному числу - 01010101010110101111

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

00000000000000

Сначала берем максимальное число из второй строки, которое меньше нашего - это 16384. Его порядковый номер - 15, потому двоичный код измениться так: 100000000000000. Вместо пятнадцатого ноля я поставил 1 и выбросил лишние нули слева от неё. Остается 16656-16384=272. Дальше максимальное число какое не больше остатка  - 256. Порядковый номер - 9. Двоичный измениться так: 100000100000000. Вместо девятого ноля я поставил единицу. Осталось 272-256=16.  К статью в нижней строке у нас есть число 16. Его порядковый номер - 5. И остаток - ноль, потому уже сейчас мы можем сказать, что число 16656 имеет бинарный код 100000100010000

©hevyweb

Все права на статью пренадлежат автору. Копирование статьи или её фрагментов на другой сайт только с разрешения автора.
Post #: 1
RE: Игры с двоичным кодом - 2009-12-11 14:13:48.730000   
janitor

Сообщений: 100
Оценки: 0
Присоединился: 2009-09-11 15:33:08.426666
За наблюдательность конечно +, но если хорошо учиться в школе, то заново велосипеды можно не изобретать
Post #: 2
RE: Игры с двоичным кодом - 2009-12-11 17:42:25.430000   
Papa James

Сообщений: 438
Оценки: 0
Присоединился: 2009-12-07 13:36:18.370000
В учебнике по информатике посмотрел?
Post #: 3
RE: Игры с двоичным кодом - 2009-12-11 18:46:22.420000   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
quote:

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



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


грустно, что та же аналогия распространилась нынче и на тех, кто гордо именует себя "программистами"
Post #: 4
RE: Игры с двоичным кодом - 2009-12-11 19:26:08.853333   
Smelo

Сообщений: 119
Оценки: 0
Присоединился: 2009-09-27 15:48:37.386666
Denaturat
+1
Post #: 5
RE: Игры с двоичным кодом - 2009-12-11 20:18:33.650000   
Agent Smith

Сообщений: 976
Оценки: 0
Присоединился: 2007-04-10 21:56:49.593333
когда я в школе учил "информатику", дискеты ещё были формата 5,25, а такого понятия как учебник по информатике - не существовало в природе.
Post #: 6
RE: Игры с двоичным кодом - 2009-12-11 21:25:10.073333   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
quote:

ORIGINAL: Agent Smith

когда я в школе учил "информатику", дискеты ещё были формата&nbsp;5,25


описываемому тобой алгоритму больше полувека

quote:

ORIGINAL: Agent Smith

а такого понятия как учебник по информатике - не существовало в природе.


существовало. просто ты его не читал
Post #: 7
RE: Игры с двоичным кодом - 2009-12-12 00:35:02.696666   
janitor

Сообщений: 100
Оценки: 0
Присоединился: 2009-09-11 15:33:08.426666
Если хотите придумать отличные идеи, знайте: лучшие из них вы можете позаимствовать (с) Томас Эдисон
Кстати, порядочный "заниматель" был
Post #: 8
RE: Игры с двоичным кодом - 2009-12-12 01:12:57.576666   
Agent Smith

Сообщений: 976
Оценки: 0
Присоединился: 2007-04-10 21:56:49.593333
Denaturat,что вы пытаетесь доказать?
Post #: 9
RE: Игры с двоичным кодом - 2009-12-12 02:03:18.346666   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
доказать? я ничего не хочу доказать. я констатирую что мне неприятно, что вещи, которые должны быть азами для любого человека, имеющего отношение к программированию, преподносятся как новая и оригинальная идея. ещё и с копирайтом

к слову, насчёт полувека я погорячился; учитывая, что в основе алгоритма переведения чисел из одной системы счисления в другую лежит алгоритм Эвклида, более корректная оценка - порядка 2300 лет
Post #: 10
RE: Игры с двоичным кодом - 2009-12-12 03:11:03.570000   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
quote:

ORIGINAL: Agent Smith
когда я в школе учил "информатику", дискеты ещё были формата 5,25, а такого понятия как учебник по информатике - не существовало в природе.

Быть того не может. У меня лет десять хранилась дискета формата 5.25*, на которой был сохранён сейв игры Keen**). Дискета была подарена мне учителем информатики, сейв был мой, поиграть (на крутанском компьютере на базе 80286 процессора) мне тогда дали за особые заслуги в деле постижения науки информатики. Но учебники тогда были. Правда их вроде не раздавали в начале года каждому школьнику. Но они были. Более того, я помню разговоры о разных системах счисления. И не только на уроках информатики: мне отец детские книжки математико-информатические подпихивал, там всё было расписано.

*) Кстати, когда я взгеморроился что-то прочитать с этой дискеты лет через пять… Не, ну были шансы что она тупо размагнитилась. Точнее даже не шансы, а так оно и было, запись была повреждена. Но у меня сложилось впечатление, что эта афигенная дискета белого цвета была отформатирована не в 360k формате, а в чём-то нестандартном типа 1024k или около того. Короче данных с неё добыть я не сумел.
**) Версию той игры Keen я выяснял пару-тройку лет назад. Искал каждую версию в инете, настраивал эмулятор доса, чтобы она заработала, и запускал. Вроде это была Keen 6. Но я опять забыл. У меня всегда память была нулевая на цифры.
Всё собираюсь найти своего учителя информатики, докопаться до него, пускай рассказывает что за БК стояли у нас, пускай обеспечивает связями, чтобы я себе мог бы спереть такой компьютер домой, и заодно пускай рассказывает о ПО которое стояло за крутанскими x86 компьютерами (три штуки стояли возле окна).

ps. Хнык-хнык… Ностальгия прошибла. Ааа! Пускай умрут все Core, хочу пускай будут БК, а 80286 будет самым афигенным компом, который я могу себе представить.


2all.
Давайте не будем гнать на ТС. Быть может те, кто "гордо именует себя программистами", прочитают пост ТС'а и у них будет больше сходства с программистами: они будут втыкать в тему "системы счисления".
Давайте не будем гнать, даже несмотря на то, что я разделяю справедливое возмущение:
quote:

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

Дальнейший пассаж денатурата о 2k+ лет давности идеи меня пугает, но история мне не давалась никогда, ибо память моя на цифры не ведётся. Но я согласен с тем, что древность этого алгоритма превосходит все ожидания.
Post #: 11
RE: Игры с двоичным кодом - 2009-12-12 05:14:55.950000   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
quote:

ORIGINAL: rgo

Давайте не будем гнать на ТС


копирайта всё равно не прощу
Post #: 12
RE: Игры с двоичным кодом - 2009-12-13 02:33:04.226666   
mr_Anderson

Сообщений: 140
Оценки: 0
Присоединился: 2008-11-29 19:52:02.186666
Не имеет значения, было это уже изобретено, или ещё нет. Его достижение как раз и заключается в том, что он не в книжке об этом прочитал, а сам придумал.
Сегодня его пытливый ум изобрёл велосипед, а завтра, когда его опыт и знания возростут, выдумает космический корабль.
По мануалам, я уверен, и моя бабушка сможет освоить, понять, запомнить, и по прошествии необходимого времени программу написать или экзамен по информатике сдать. А вот вывернуть что то наизнанку, нестандартно переосмыслить и выхватить какието новые закономерности - это не каждому дано.
Post #: 13
RE: Игры с двоичным кодом - 2009-12-13 02:44:26.656666   
wlan

Сообщений: 141
Оценки: 0
Присоединился: 2009-08-17 20:03:15.813333
01010101010110101111
0101 0101 0101 1010 1111
5 5 5 10 F

5551015

//блин я это еще со школы юзаю.

///статью читал кусками
Post #: 14
RE: Игры с двоичным кодом - 2009-12-13 02:49:05.890000   
Denaturat

Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
quote:

ORIGINAL: mr_Anderson

А вот вывернуть что то наизнанку, нестандартно переосмыслить и выхватить какието новые закономерности - это не каждому дано.


не многовато ли похвал для столь очевидной вещи?

я не спорю с тем, что переизобретать тоже полезно; более того, это демонстрирует, во всяком случае, правильный ход мысли у человека. однако одно дело, когда школьник переизобретает правило Лапиталя, и совсем другое - когда студент переизобретает таблицу умножения. надеюсь, моя аналогия ясна
Post #: 15
RE: Игры с двоичным кодом - 2009-12-13 10:43:53.836666   
Papa James

Сообщений: 438
Оценки: 0
Присоединился: 2009-12-07 13:36:18.370000
Denaturat +1
Post #: 16
Страниц:  [1]
Все форумы >> [Веб-программинг] >> Игры с двоичным кодом







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.