Мой калькулятор и государственный компьютер
Все родители на летние каникулы стремились определить своих детей в какие-то лагеря. Это были лагеря труда и отдыха для обычных детей, лагеря отдыха без труда для лентяев и спортивные лагеря для тех, кто еще не потерял надежду добиться космических спортивных высот.
Меня, 13-ти летнего шкета устроили по большому блату в Вычислительный Центр Академии Наук (ВЦАН) на производственную практику в свободной форме. Подразумевалось, что я ничего там сильно не поломаю, а научусь работать с самыми современными носителями информации в виде картонных карточек, бумажных ленточек с дырочками и даже с настоящими огромными магнитными дисками с фантастическим объемом памяти в целых 5 мегайбайт. Такой диск можно было использовать и как гирю для прокачки мышц рук, а также попытаться записать туда какую-либо информацию. Отличная полезная универсальная вещь в умелых руках!
Так вот, после прохождения этой практики я был должен написать отчет в виде обычного школьного сочинения "Как я провел лето". Мои программные разработки в ходе практики, если таковые вдруг бы случились, должны были бы останься в собственности Академии.
Был ли я доволен? Я был очень доволен и даже рад. Я в то время, начитавшись классических произведений братьев Стругацких, мечтал стать программистом. И не просто мечтал, а даже написал первую программу на своем личном калькуляторе.
Вот ее алгоритм в кратком изложении.
На первом шаге в определенную ячейку памяти (назовем ее условно ячейка номер 1) загоняем определенное число (пусть, 2, для простоты).
На втором шаге в другую ячейку (номер 2) загоняем еще одно число (пусть тоже 2).
На третьем шаге даем калькулятору команду содержимое ячеек 1 и 2 сложить в ячейку 3!
И, наконец, заключительный аккорд – команда вывода содержания ячейки 3 на монитор калькулятора.
"Монитор", – это, конечно, сильно сказано. Так, простая информационная полоска длинною 10 символов и шириною ровно 1 символ. Но, зато, результат правильный: 4.
Надо сказать, я очень гордился этой программой и сразу же похвастался своему научному руководителю в ВЦАНе высокому пожилому (не менее 25-ти лет) программисту высшей категории в очках и с бородой. Его звали Никита Сергеевич.
– Это что ж за программа, – пренебрежительно отозвался Никита, – нажми просто 2, затем плюс, затем снова 2, затем равняется. Только и делов-то! Стоило огород городить с ячейками памяти ради такой ерунды!
– Не согласен, – крайне вежливо возразил я, – тут дело в принципе и концепции. Конечно, пример этот не слишком впечатляет, но ведь на этой основе можно замутить что-то более сложное и интересное. Вот, навскидку. Берем теперь 64 ячейки памяти. Это шахматная доска, понимаете? Ну, 8 умножить на 8, получаем 64. Затем в каждую ячейку забиваем либо 0 – пусто, либо 1 – белый король, либо 2- черный король и т.д. По принципу нечет – белые фигуры, чет – черные. Затем кодируем программу подбора сильнейшего хода. Вот такая идейка, вкратце. Удобная штука должна будет получиться для шахматистов. Сейчас они мучаются, в уме считают сложнейшие варианты. Это тяжело и малоэффективно. А так загнал ход противника в калькулятор, получил ответ, сделал на доске в полном расслабоне! Шах и мат! Производительность труда шахматиста должна будет значительно вырасти.
– Звучит круто, – признался Никита, – ну и до какого места ты дошел в разработке этой программы?
– Не слишком далеко, – вздохнул я, – пока только расставил белые фигуры и нарисовал пол доски. Тут выяснилось, что у моего калькулятора лимит памяти для разработчика только 32 ячейки. Все остальное пожирает операционная система, черт бы ее побрал! Причем узнать об этом лимите можно только последовательно забив эти самые 32 ячейки и получив затем сообщение ERROR при попытке забить что-то в ячейку 33. К тому же все наработки теряются при выключении калькулятора. Какое разочарование!
– А что ты хотел, – ухмыльнулся Никита, – твой девайс страшно примитивен. У него же нет никакой внешней памяти, ни устройства для печати перфокарт, ни иголочек для протыкания дырок в бумажных ленточках. Отстало от времени твое железо! Ладно, не переживай. Сейчас я тебе покажу настоящий компьютер, последнее слово научной мысли.
И завел меня в огромный зал, размером примерно со стандартное футбольное поле, т.е. 105х68 метров. Этот зал был битком какими-то железными шкафами, расставленными в диком беспорядке. Между этими шкафами, как по узеньким тропинкам в лесу, бегали люди в белых халатах, с разными предметами в руках. Некоторые предметы я смог различить. Это были ящики с бумагами, какие-то большие круглые диски, а также бутылки с молоком и батоны. У одного бегуна я засек бутылку жигулевского пива.
В зале приятно пахло спиртом. Но в целом, было довольно дискомфортно. Дули какие-то странные ветры со всех сторон, было очень холодно и шумно.
– Где же тут компьютер, – закричал я, – и кто все эти люди?
– Вот это все и есть компьютер, – гордо заявил мой руководитель, – а люди в нем – актеры. То есть, тьфу ты, программисты, конечно. Запомни главное, эта комната называется "серверная". Это мозг и сердце нашей Академии. Сюда допускаются только надежные и проверенные люди. Ладно, пошли отсюда. А то еще простудишься с непривычки.
Мы вышли из "серверной".
– Как же люди работают при таком холоде и ветре? – решился я задать вопрос.
– Да, нет, тут никто не работает, просто бегают по нужде. В смысле, если вдруг кому что надо именно в серверной. А работают программисты в своих кабинетах, в комфортных теплых условиях. Кабинеты почти персональные, в каждом человек 10-12, не больше. Причем у лучших работников даже есть столы со специальными стульями и мониторы (т.е. телевизоры) со специальными клавиатурами. Эти мониторы и клавиатуры проводами соединены с компьютером. Вот так, брат, – объяснил ситуацию Никита.
– А мне дадут этот самый монитор? А он какой? Цветной?
– Цветной, – грустно вздохнул Никита, – но не многоцветный. Зеленый. Приятные зелененькие буквы и цифры на черном фоне. Очень красиво и для глаз полезно. Монитор называется "монохромный". Но, в любом случае, монитор тебе пока рано давать. Для начала тебе положен только стул, да еще вот эта книжка. Теорию подтяни. Потом сдашь мне экзамен на допуск, а я тебе выдам монитор. А где монитор, там и стол. Надо же будет его куда-то поставить.