В настоящее время магистральная технология – это создание миниатюрных интегральных схем с помощью все более тонкого и точного лазерного ножа и использование арсенида галлия вместо кремниевых и силиконовых чипов. По мнению профессора Ал-Халили (Университет Суррея, Англия), мощность полупроводниковых компьютеров достигнет своего логического насыщения к 2020-му году. К этому времени точность микросхем достигнет молекулярных размеров. Закон Мура сохранит свою силу только в том случае, если к этому времени будут открыты совершенно новые компьютерные технологии.
Сегодня толщина соединений в обычных схемах электронного компьютера составляет 1000 атомов. В обозримом будущем технология потребует локализовать бит информации в пределах атома вещества. И это полностью изменит вычислительную технику.
Нас ждут перемены настолько радикальные, что к ним лучше заранее подготовить свое сознание.
Тем более, что процесс разработки «квантового компьютера» уже идет полным ходом. Еще в 1985 году Дэвид Дойч, физик из Университета Оксфорда, опубликовал статью, которая показывала, как на практике можно создать атомный транзистор.
Такой транзистор представляет собой электрон, помещенный в «квантовый колодец», размер которого не больше размера атома.
На сегодня созданы еще очень маленькие квантовые компьютеры. Самые большие из них содержат от семи до десяти квантовых битов. Они могут выполнять тысячи логических операций в секунду. В 2011 году компания D-Wave Systems объявила о создании коммерческого компьютера со 128 квантовыми битами. Эту волну человеческой изобретательности уже ничто не остановит. Закон Мура имеет все шансы пройти ограничения атомного барьера.
Прежде чем описать суть «квантового компьютера», мы должны вернуться к истокам.
Информация в ее техническом понимании соткана из битов – четких альтернатив (горячий/холодный, черный/белый, сильный/слабый). Бит представляет собой знак, который принимает одно из двух значений – либо «0», либо «1». Бит – это самая маленькая и неделимая единица информации. Бросив монету, мы получим один бит: орёл или решку. Два бита представляют немного больший фрагмент информации. Подбросив монету два раза, мы получим одну из четырех (два раза по две) альтернатив: орёл-орёл, орёл-решка, решка-орёл, решка-решка.
Три броска монеты дадут нам одну из восьми альтернатив (два раза по два раза по две). Как видно даже на этих простых примерах, если мы будем продолжать бросать монету, то количество возможных исходов серии бросков быстро растет. С каждым последующим броском количество альтернатив удваивается. Поэтому, чтобы вычислить количество различных исходов в определенном сценарии, мы просто умножаем два на два столько раз, сколько у вас битов.
Например, десять битов – это два умножить на два десять раз, или 1024 варианта:
2х2х2х2х2х2х2х2х2х2 = 210 = 1024,
что близко к одной тысяче, или 103. Иначе говоря, десять битов соответствуют приблизительно трем цифрам нашей
обычной десятичной системы счисления, которая обозначает единицы, десятки и сотни.
Измерение количества информации – просто вопрос подсчета. Вести счет в битах проще, чем в десятичных цифрах, хотя этот метод знаком нам меньше.
Счет от 0 до 9 очень прост: 0,1,2,3,4, 5,6,7, 8,9. Но тут наши привычные цифры кончаются. Для продолжения счета мы используем абстракцию – ноль.
Следующее после 9 число – это 1, после которого следует 0, то есть 10. Число 10 – это 1 в столбце десятков и 0 в столбце единиц. Следующее число, 11 – это 1 в столбце десятков и 1 в столбце единиц. Так можно продолжать считать вплоть до 99.
Следующее число – 100. Это 1 в столбце сотен, 0 в столбце десятков и 0 в столбце единиц.
Счет в битах ведется сходным образом. Начнем: 0 = нуль, 1 = один. На этом двоичные цифры заканчиваются. Но мы продолжим счет по аналогии с десятичными цифрами. Следующая комбинация битов – 10, которая равняется двум: 1 в столбце двоек и 0 в столбце единиц. Следующая комбинация – 11, она соответствует трем: 1 в столбце двоек и 1 в столбце единиц. Комбинация цифр – 100, естественно, обозначает число четыре: 1 в столбце четверок, 0 в столбце двоек и 0 в столбце единиц. Затем – комбинация 101, которая обозначает пятерку (1 в столбце четверок плюс 1 в столбце единиц), 110 = шесть, 111= семь.
Число восемь представлено уже четырьмя битами: 1000, где у нас есть 1 в столбце восьмерок и 0 в столбцах четверок, двоек и единиц. Мы видим, что длина двоичных чисел увеличивается много быстрее, чем обычных.
Записывать цифры в двоичной системе утомительно. Однако вести счет в двоичной системе легко, легче, чем в десятичной. Вся таблица сложения выглядит так:
0+0=0; 0+1=1; 1+1=10.
А таблица умножения выглядит еще проще:
0x0 = 0; 0x1=0; 1x1 = 1.
Прелесть, правда?
Такая операциональная простота и стала причиной лавинообразного развития цифровых технологий.