Начнем издалека. Представим себе, что ученые девятнадцатого века неким волшебным образом получили современный компьютер. Они стали бы изучать его работу, создали бы целую науку, описывающую свойства операционной системы и установленных программ. Затем они вскрыли бы этот компьютер и попытались описать его основные узлы, понять их назначение. Потом они стали бы измерять напряжение в различных точках. Возникли бы различные теории о циркулирующих внутри компьютера потоках информации. Возникло бы учение о его кремниевой основе. Кто-нибудь получил бы Нобелевскую премию за открытие принципов работы полупроводникового вентиля. Но самое главное, что сложность устройства современного компьютера затруднила бы тем ученым, путь к пониманию достаточно простых принципов лежащих в основе любой вычислительной техники. Эти принципы были сформулированы в «машине Тьюринга» и не изменились по сей день, и неважно собран ли компьютер на лампах, транзисторах или микросхемах. Любой компьютер имеет память, систему команд, процессор, который умеет эти команды выполнять, программы, состоящие из последовательности команд и устройства ввода вывода, позволяющие взаимодействовать с внешним миром. Остальное «навороты», возникшие в результате эволюции вычислительной техники, хотя и многократно увеличивают возможности компьютера, не отменяют эти принципы.
Читать дальше »