Литмир - Электронная Библиотека

   -Да, это так.

   -Вы предложили создать гигантскую сверхмощную вычислительную машину, и сказали, что на её создание понадобится около миллиарда долларов. Вы не могли бы рассказать поподробнее, мы готовы доверить вам проект, раз надо, так надо, но я бы хотел услышать, на что пойдут деньги налогоплательщиков из ваших уст. Я верю, что создание такой машины возможно, раз сам год сказал об этом. Но Эдвард плохой электронщик и не сказал мне, как она работает. К тому же мои эксперты очень заинтересовались, как сделать гигантскую считающую машину.

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

   -Простите, что настаиваю, так как же будет работать эта машина? Мне просто интересно, вы так расхваливаете её. Каков принцип её работы?

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

   -Спасибо.

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

   -Восемь?

   -Нет, восемь микрочипов может хранить 256 позиций. Поскольку это двойка в восьмой степени.

   -Ясно, а почему именно 256, а не семь микрочипов и 128, или не шесть и 64.

   -Во-первых, озвучим, что отныне ноль и единица будет называться битом, а восемь позиций, восемь бит, байтом. Я подобрал оптимальное на мой взгляд число позиций, чтобы перечислить все нужные мне действия под каждой позицией, и ещё осталось некоторое достаточно большое свободное количество знаков про запас. А также я учёл тот факт, что каждая лишняя цифра в байте увеличивает число позиций вдвое, и на одну восьмую, девятую или десятую, пропорционально снижает скорость работы машины. Я пришёл к выводу, что 256 вариантов от 8 позиций это золотая середина. 128 вариантов при 7 позициях в будущем может не хватить, а целиком переделывать всю машину, чтобы увеличить число бит в байте это крайне сложно, в то время как 512 вариантов слишком много, и не имеет смысла тратиться. В итоге у меня будет восемь бит в байте этого должно хватить на все типы нужных нам команд в будущем. В эти 256 позиций входят все буквы английского алфавита, а также все цифры и арифметические действия над ними совершаемые, включая операции команды для самой машины, такие как пробел, ввод, отмена, копировать и переместить данные.

   -Тогда ясно. И всё же, как это работает?

   -Итак, у нас с вами есть один микрочип, и он сохраняет один бит, мы взяли восемь чипов и получили байт. В одном байте у нас может быть закодирована одна цифра или операция. Представим, что нам требуется сложить два больших числа по 15 знаков в каждом, при условии, что полученное число тоже будет длинной не более 15 знаков. Для того чтобы это осуществить, нужно запомнить три числа, то есть 45 байт, или 360 микрочипов. А также нам понадобится ещё один чип на действие сложения, и один на знак равно, это означает 47 байт. Также, если машина будет складывать столбиком, на сами действия сложения, которые изначально обеспечены процессором механически, нам потребуется ещё около десяти чипов, при условии, что действия сложения будут сохраняться и сразу стираться, сохраняя число в ответ. Уточняю, сам процессор устроен так, что он знает простейшие команды, сложение, вычитание, умножение, деление и приравнивание, его структура при команде на сложение начинает выполнять строго определённую операцию с битами. То есть сама механика процессора устроена так, что при определённом знаке действия, умножения или деления будет запускаться та или иная операция с числами. В будущем набор операций процессора целесообразно будет расширить, чтобы повысить его производительность, однако, более сложные операции и команды могут быть разбиты и посчитаны через более простые. Для начала нам хватит четырёх функций простейшей алгебры. Процессор устроен так, что в одном случае число будет всегда вычитаться, в другом умножаться, а выбирать команду он будет через знак, заложенный программой. При этом компьютер не понимает, что он делает, просто в одной позиции срабатывает один триггер, а в другой ситуации другой. Также компьютер будет уметь логически работать с переменными, задавая порядок действий с ними через скобки. Таким образом, он сможет в верном порядке считать длинные и сложные уравнения. Итого для работы процессора потребуется около 57 бит или 456 микрочипов, и я думаю, лучше округлить это число до ближайшего кратного, чтобы память в процессоре совпадала с байтами. Это ближайшее кратное 64 байта и 512 микрочипов. Таким образом, устройство на 64 байта или знака, может выполнять простые арифметические действия по сложению и вычитанию, а также умножение и деление столбиком, используя для этого 512 чипов. Такое устройство сможет выполнять простые арифметические операции и делать это очень быстро. Хочу особо подчеркнуть, что для операций внутри процессора числа надо хранить по знакам, иначе невозможно обработать их, сложить, разделить уголком или умножить столбиком, а вот для хранения чисел на оперативной памяти, можно сохранять их как двойку в степени и остаток. Тогда даже самые большие числа в постоянной памяти, будут весить от 2 до 6 байт, чем больше число, тем больше нужно байт, чтобы его хранить. Логично, что бесконечно большое и сложное число компьютер хранить не в состоянии, но 6 байт хватит, чтобы запомнить число на 18 знаков, я думаю, более высокая точность нигде не требуется. При вытягивании чисел в процессор каждый раз потребуется их перекодировать, что займёт от 16 до 48 операций. Однако, я считаю перекодирование целесообразным, поскольку этот принцип резко увеличит объём запасаемых в оперативной и постоянной памяти данных.

166
{"b":"275697","o":1}