Морис Винсент Уилкс родился 26 июля 1913 года в Дадли в графстве Стаффордшир (Англия). С 1931 года учился в Кембриджском колледже Святого Джона, который закончил в 1934 году. Затем его учеба продолжилась в Кембриджском университете до его окончания в 1937 году. В 1936 году он получил звание доктора философии за работу, посвященную распространению очень длинных радиоволн в ионосфере.
По окончании университета он был назначен на младшую должность — демонстратора, что соответствует должности ассистента профессора в США, в открытую Математическую лабораторию. В его обязанности входило: контроль за разработкой нового дифференциального анализатора и консультации в Манчестерском университете по дальнейшим разработкам в этой области.
В годы Второй мировой войны, с 1939 по 1945 год, он находился в составе действующей армии союзников.
По возвращению в Кембридж в сентябре 1945 года он назначается директором Математической лаборатории (позже Компьютерной лаборатории), в которой Уилкс и проработал до 1980 года.
В мае 1946 года была получена копия неймановского отчета относительно компьютера EDVAC и Уилксу представилась возможность за одну ночь прочитать и понять документ, который описывал концепцию записи и хранения программы в компьютере. Он понял сразу, что это реально, и с этого момента никогда не сомневался, что развитие компьютеров пойдет именно таким путем.
После прочтения отчета Уилкс принял приглашение посетить лекции по "Теории и методам конструирования электронных цифровых компьютеров", проводимых в школе Мура Пенсильванского университета с 8 июля по 31 августа 1946 года. Уилкс ухватился за предоставленный шанс посетить эти лекции, хотя и опоздал к их началу, но все же успел к моменту детального описания ENIAC и обсуждения принципов создания EDVAC. Вот что пишет сам Морис Уилкс: "Самое важное событие в моей жизни произошло в 1946 году… Мне удалось прослушать учебный курс по компьютерам, и он произвел на меня сильнейшее впечатление. Ничего подобного никогда раньше не было, а о достижениях школы Мура и других зачинателей компьютерной техники тогда знали лишь немногие. Курс слушали 28 человек из 20 организаций. В роли основных преподавателей выступали Джон Ма- учли и Преспер Эккерт. Они находились на гребне успеха, создав первый электронный компьютер ENIAC и принципы конструирования EDVAC… Последующие события убедительно подтвердили принципы, которым Эккерт и Маучли научили в 1946 году тех из нас, кому посчастливилось прослушать этот курс".
После возвращения Уилкса в Кембридж был составлен проект создания компьютера с хранимой программой, который предстояло осуществить силами Математической лаборатории. Лаборатория имела достаточные средства, чтобы начать реализацию проекта, и следующие три года были потрачены на конструирование EDSAC (Electronic Delay Storage Automatic Calculator — электронный автоматический калькулятор с памятью на линиях задержки), который заработал 9 мая 1949 года.

Компьютер EDCAS
В сущности, машина EDSAC была прямой копией проекта EDYAC, но в части, касающейся вопросов программирования EDSAC, Морис Уилкс явился в некотором роде первооткрывателем. Устав кодировать каждую команду с помощью двоичных цифр ("единиц" и "нулей"), он занялся поисками более удобного способа общения с машиной. Первым результатом этих усилий явились новые коды, составленные из букв и коротких слов, взятых из английского языка. Он ввел мнемонику, где каждая команда изображалась одной заглавной буквой: S обозначала "вычитание", Т — "передать информацию в память", Z — "остановка машины" и т. д.
Но, пожалуй, более ценным новшеством, чем мнемоника, введенная на EDSAC, явилась библиотека подпрограмм. Надо сказать, что программисты уже были знакомы с понятием подпрограммы. Грейс Хоппер и ее коллеги применяли подпрограммы на гарвардской машине Говарда Айкена. Они имели блокноты с записью наиболее употребляемых подпрограмм, чтобы в случае необходимости не составлять их заново.
Проблема состояла в том, что адреса расположения команд и переменных подпрограммы в памяти менялись в зависимости от ее размещения в последней. Настройка подпрограмм на определенное место в памяти, очевидно, нуждалась в автоматизации, и впервые это было сделано в компьютере EDSAC. Программисты EDSAC начали с написания набора унифицированных подпрограмм, которые и образовали библиотеку. После этого достаточно было ввести лишь короткую команду, чтобы компьютер самостоятельно проделал всю работу по настройке и размещению подпрограммы внутри основной программы.
Читать дальше