Лекция 12. Биография основных теоретиков компьютерных наук (Лекции)
Описание файла
Файл "Лекция 12. Биография основных теоретиков компьютерных наук" внутри архива находится в папке "Лекции". PDF-файл из архива "Лекции", который расположен в категории "". Всё это находится в предмете "история и методология прикладной математики" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст из PDF
ИСТОРИЯ И МЕТОДОЛОГИЯ ПРИКЛАДНОЙМАТЕМАТИКИ И ИНФОРМАТИКИЛекция 12:Биографии основных теоретиковкомпьютерных наукВМиК МГУ им. М.В. Ломоносова, Кафедра АСВКДоцент Власов В.К.,Ассистент Волканов Д.Ю.План лекции•••••Алан ТьюрингДжон Фон НейманЭдсгер Вайб ДейкстраДональд Эрвин КнутЯП и их создатели2Алан Тьюринг (1912 – 1954)Основные результаты•••••Тезис Чёрча-ТьюрингаМашина ТьюрингаКриптографияТест ТьюрингаКолоссус4Тезис Чёрча-Тьюринга• Любая функция, которая может бытьвычислена физическим устройством,может быть вычислена машинойТьюринга5Машина Тьюринга (1)6Криптография• Тьюринг помогал взломать код Энигмы• Построен первый программируемый компьютерКолоссус• Базировался:– на его концепции универсальной машины 1936– потенциальной скорости и надёжности электронныхтехнологий– неэффективность разностных машин для различныхлогических процессов• Шифр-код был расшифрован в 1943• Все компьютеры были разрушены по приказуЧерчилля7CollosusПод руководством выдающегося математика АланаТьюринга была построена специализированная электроннаявычислительная машина Colossus.
Она насчитывала 2000радиоламп и обрабатывала 25000 симв./с8EnigmaВ местечке Блечли-Парк (Bletchley Park)под Лондоном была организованасверхсекретная криптоаналитическаялаборатория для расшифровки немецкихвоенных шифров, используемых вшифровальной машине Enigma.9Тест Тьюринга• Опубликован в 1950 году• Человек обменивается сообщениями наестественном языке с двумя собеседниками(человек и компьютер)• Если человек не может определить кто есть кто,то считается что компьютер прошёл тест• Переписка должна производиться черезконтролируемые промежутки времнени• Тьюринг оценил что программы в 2000 годупройдут тест• Пока не подошли даже близко10Другие важныерезультаты• Проблема самоприменимости МТ• Универсальная МТ• Основатель направления ИИ11Первая ЭВМ ENIACПервая работающая ЭВМ ENIAC (Electronic Numerical Integrator AndCalculator) была создана в 1945 г.
в Пенсильванском университете.Длина 26 м, высота 6 м, масса 30 т. 18 000 ламп, 1500 реле,12потребляемая мощность 150 квт.Первая ЭВМ ENIACЭВМ ENIAC. Вид сзади13Проект фон Нейманаи его вклад в архитектуру ЭВМПонятие «архитектура ЭВМ» связано с именем выдающегосяматематика XX столетия Джона фон Неймана (Neumann, John von;1903-1957)14Проект фон Нейманаи его вклад в архитектуру ЭВМФрагменты статьи фон Неймана с соавторами (русский перевод)15Проект фон Нейманаи его вклад в архитектуру ЭВМОсновные черты классической фон-неймановскойархитектуры ЭВМ1.Машина должна состоять из следующих основныхблоков: арифметического устройства, оперативнойпамяти, устройства управления, устройства ввода,устройства вывода, устройства внешней памяти;2.Команды программы должны храниться в оперативнойпамяти, откуда они последовательно выбираются иисполняются арифметическим устройством, системакоманд должна иметь операции условной и безусловнойпередачи управления.
Команды должнырассматриваться как обычные данные, т.е. программадолжна иметь возможность модифицировать себя впроцессе вычислений;3.Команды и данные должны храниться и обрабатыватьсяв двоичной системе счисления.16Проект фон Нейманаи его вклад в архитектуру ЭВМИз-за разногласий в командеразработчиков реализацияпроекта фон Неймана в СШАзатянулась.Первая ЭВМ с хранимойпрограммой EDSAC (ElectronicDelay Storage Automatic Calculator)была построена в Англии в 1949 г.под руководством Мориса Уилкса(Wilkes, Maurice; р. 1913).Морис Уилкс у машиныEDSAC. 3000 ламп, ОЗУ512 словАнглийские ученые опирались насобственный опыт разработкиэлектронных вычислительныхустройств во время Второймировой войны17Другие значимыедостижения•••••Квантовая физикаФункциональный анализТеория множествСоздатель теории игрСоздатель теории клеточныхавтоматов18Эдсгер Вайб Дейкстра(1930 – 2002)19Основные результаты•••••Математическая логикаAlgol-60Концепция семафоровАлгоритм ДейкстраБорьба с оператором GOTO20Алгоритм Дейкстры (1)21Алгоритм Дейкстры (2)22Алгоритм Дейкстры (3)23Алгоритм Дейкстры (4)24Алгоритм Дейкстры (5)25Афоризмы (1)• Студентов, ранее изучавших Бейсик,практическиневозможнообучитьхорошемупрограммированию.Какпотенциальныепрограммистыониподверглисьнеобратимойумственнойдеградации• Вопрос «умеет ли компьютер думать»имеет не больше смысла, чем вопрос«умеет ли подводная лодка плавать»• Проекты,предлагающиепрограммирование на естественном языке,26Афоризмы (2)• Дейкстра назвал модель IBM/360(прообраз советской ЕС ЭВМ) —величайшейдиверсиейЗападапротив СССР• На пустом диске можно искать вечно• Если отладка — процесс удаленияошибок,топрограммированиедолжно быть процессом их внесения27Компьютерные сетиМультимедиаСпециальноепрограммноеобеспечениеНастольные ПППCASE-технологииСУБДДиалоговые ОСПакетные ОСЯзыки и системы программированияБиблиотеки прикладных программАссемблеры19501960197019801990Общее программное обеспечениеКлассификация и эволюция программногообеспечения100%100%2000Эволюция программного обеспечения.
Подобно тому, как вокеане из плавающей мути откладываются геологическиепласты, из специального программного обеспечения с течениемвремени образуются слои общего ПО28Языки и системы программированияПредысторияПервая попытка создать высокоуровневый язык программированияпринадлежит гениальному КонрадуЦузе (конец 1940-х годов),разработавшему Plancalcul(планировщик вычислений).«Plancalcul родился исключительнокак результат теоретическойработы, без всякой связи с тем,появится или нет в обозримомбудущем машины, подходящие кпрограммам на Plancalcul».Фрагмент рукописи Цузе сшахматной программой на языкеPlancalcul29Языки и системы программированияПредысторияМихаил Романович Шура-Бура и А.П.
Ершов – создатели первыхотечественных систем автоматизации программирования дляЭВМ «БЭСМ» и «Стрела»(1954-1956 годы)30Языки и системы программированияНаиболее активный периодразработки языков и системпрограммированияприходится на 1960-е годы.За это десятилетие в миреродилось более тысячиразнообразных языков, какуниверсальных, так испециализированных, новыжили и доросли до XXIвека дожили немногие, в томчисле бессмертные Fotran,Basic, Algol, Cobol, Simula,Lisp и их потомки.На рисунке: «вавилонскаябашня» языков программирования, созданных в 1960-е31годыЯзыки и системы программированияFortranFortran-IVFortran-77FortranBasicVisual BasicAltair-BasicIMSdBASEFoxProVisualFoxProVisual BasicVisual FoxProCobolCobol-85CobolSQLSQLAlgol-68ModulaModulaAlgol-60TurboPascalPascalObject PascalDelphiDelphiAdaPL/1AdaSmalltalkSmalltalkSimula Simula-67SimulaJavaCBJavaC++Visual C++Visual C++LispLispPrologPrologLogoLogo19601970198019902000Родословная основных высокоуровневых языков программирования32Языки и системы программированияБессмертный FortranFortranFortran-IVFortran-77FortranBasicAlgol-6019601970198019902000Fortran = FORmula TRANslatorПервый высокоуровневый языкпрограммирования Fortran былразработан в фирме IBM подруководством Джона Бэкуса (Backus,John; р.
1924).Работа над языком началась в 1954 г.,первая реализация для IBM 704 ввыполнена в 1957 г.33Языки и системы программированияБессмертный FortranCMAIN PROGRAM101FORMAT(208)102FORMAT(//’N=’,15, 5X, ’R=’, 151//6X, ’M’, 5X, PROB)103FORMAT(18, F14.10)201READ(1,101) N, IRWRITE(3,102) N, IRIF(N) 202, 202, 203202STOP203IF(IR) 202, 202, 204204M=OP=COMBF(N,M)*COMBF(IR-1,N-M-1)1/COMBF(N+IR-1,IR)...Фрагмент программы на языке Fortran34Языки и системы программированияBasic – язык для начинающихFortranFortran-IVBasic1960VisualBasicAltair-Basic1970198019902000BASIC = Beginners All-purpuse Symbolic Instruction CodeЯзык Basic был разработан в 1964 г.
в Дармутском колледже вг. Хановере (Darmouth College, Hanover), штат Нью-Хемпшир35Языки и системы программированияBasic – язык для начинающих10 dim A(5)20 for i=1 to 530 input A(i)40 next i50 if i=5 then goto 14060 if A(i)<=A(i+1) then goto 9070 i=i+180 goto 13090 z=A(i)100 A(i)=A(i+1)110 A(i+1)=z120 i=1Авторы языка Basic.Стоит Джон Кемени(Kemeny, John G.; 1926-1993),сидит Томас Курц(Kurtz, Thomas E.; р. 1928)130 goto 50140 for i=1 to 5150 print A(i)160 next iПростейшаяпрограмма наязыке Basic36Языки и системы программированияBasic – язык для начинающихБудущие создатели Microsoft Пол Аллен (Allen, Paul; р. 1954) и БиллГейтс (Gates, William; р. 1955) познакомились с Бэйсиком, работая вкомпьютерном классе школы в Сиэтле (снимок 1968 г.)37Языки и системы программированияBasic – язык для начинающихНачав с Бэйсика, компания Microsoftпревратилась в крупнейшуюсофтверную империю, а Билл Гейтс –стал самым богатым человеком напланетеШтаб - квартиракорпорации Microsoft вРедмонде (пригородСиэтла)38Языки и системы программированияCobol – язык для бухгалтеровVisual FoxProCobolCobol-85CobolSQLSQL19601970198019902000COBOL = COmmonBusiness-OrientedLanguageНа фото: разработчикиязыка Cobol у шуточногообелиска, присланного вих адрес в качественамека на безнадежномедленную работу,способную похоронитьсаму идею.