lekcii (Лекции), страница 11

DJVU-файл lekcii (Лекции), страница 11 Информатика (112): Лекции - 1 семестрlekcii (Лекции) - DJVU, страница 11 (112) - СтудИзба2013-09-14СтудИзба

Описание файла

DJVU-файл из архива "Лекции", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "информатика" в общих файлах.

Просмотр DJVU-файла онлайн

Распознанный текст из DJVU-файла, 11 - страница

Это слово либо дашюе, либо команда, либо адрес. Джон Ьэкус предлагает называть эту шину «бутылочным горлышком» (узким местом) фон неймановской архитектуры. Задача программы состоит в некотором существенном изменении содержимого памяти процессором исключительно посредством перекачки данных через шину из памяти и обратно, Ирония ситуации состоит в том, что болыпую часть потока через «эту узость фон Неймана» ~26~ составлян>т не полезные данные, а всего лишь имена (адреса) данных, а также команды и данные, служащие лишь для вычисления таких адресов. Прежде чем слово можно будет послать через шину, его адрес должен оказаться в процессоре; поэтому он тоже должен быть послан через шину из памяти либо сгенерирован самим процессором.

Если адрес посылается из памяти, то адрес эпизго адреса толсе должен бьииь поати из иамягви либо вььрибошаи процессором, и ии д. Здесь не просто снуют, в основном, курьеры (35 000 по Хлестакову), но еще и одни курьеры посылан>тся за другими! С другой стороны, если адрес генерируется процессором, он вырабатывается по фиксированному правилу (типа «добавить 4 к регистру адреса команд») либо но команде, которая должна быль затребована также через шину; в последнем случае оттуда же надо получить и ее адрес...

и т. д. Разумеется, должен существовать менее примитивный способ внесения в память больших изменений, чем мельтешение множества слов туда и обратно через оутылочное горлышко. Эта шина, является не только узким местом для потока команд и данных заде|и, но, что более важно, .и интеллектуальным сужением, привязывакнцим нас к мышлению «слово за, словом вместо того, чтобы вдохновлять работу с более крупными концептуальными понятиями решаемой задачи.

Программирование по фон Нейману большей частью заключается в планировании и спецификации огромного потока слов через это сужение, причем большая часть этого потока состоит не из самих значащих данных, а из сведений о том, где их искать. Вопреки расхо>кому представлению обычные языки программирования в основном явллюся более высокоуровневыми и сложными программно реализованными версиями компьютера фон Неймана. При всей существенности различия между Паскалем и Си о~о имеет меньше значения, чем тот факт, что оба этих языка основываются на программистском стиле компьютера фон Неймана. В языках программирования фон Неймана переменные используются для имитации ячеек памяти компьютера; операторы управления выража<от его команды передачи управления и проверки, а операторы присваивания имитируют загрузку содержимого ячейки и некоторую арифметику с последу<ощих< заномипани<,м результата.

Бутылочным горльш<ком фоп Неймана лля языков программирования является оператор присваивания. Ихленпо он вынуждает нас программировать на уровне <слово за словохл», как это имело место на агшаратноь< компьютере фоп Неймана с его шиной обмена данными между памятью и процессором. Рассмотрим тини~<ную программу Бс основу со<>тавляет последоват<-,льность операторов присваивания, содержащих некоторые переменные с индексами.

Каждый оператор присваивания порождает результат, состоящий из одного слова, Программа должна организовать многократно< выполнение этих операторов со сменой значений индексов, .чтобы «ро«звест«желаемое итогово<э изменение в памяти, поскольку она связана н<*.обходимостью изменять каждый раз только одно слово. Таким образом, программист имеет дело с потоком слов юрез буть<ло <но<' горлып<ко присваиваний в соответстви«с т<.м, как он проектирует вложенно<'ть управляющих оп< раторов для обеспечения необходимых повторений.

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

Все остальные операторы языка существуют для того, чтобы создать возможность выполнения вычисления, которое должно основываться на этой примитивной бутылкогорлочпой инструкции присваивания. Мир операторов не упорядочен и у него мало полезных математических свойс тв. Структурное программирование можно считать скромной попыткой внести некий порядок в этот хаотический мир, спагеттизированпой ~о$о, но и оно в малой степени способствует разре- 190 )пени)о тех фундаментальных проблем, которые вносятся г)ос))овнь)м стилем )й>ограммирования фон Неймана с его прим)ггивным использование>и циклов, индексов и разветвления потока управления. Всеобщая зашоренность языками фон Неймана предопределила сохранение фон неймановских компьк>герон, сделала другие концепции неэкономичными и ограничила их развитие. Отсутствие законченных, эффективных стилей программироВания, опирающихся на иные принципы.

Обезоружило проектиров>диков и рззраоотчиков новых компьютерных архитектур, В своей тьк)ринговской лекции Бэкус предлагает функциональный стиль программирования. Языки функционального программирования были задуманы как средство для рскурсивных построений, Нрошдуры в них могут служить данными, подставляемыми на место других аргументов. Каждое действие порождает некое значение, которое, в свою очередь, становится аргументом следующего действия и т. д.

Основными средствами функционального программирования являются композиция и рекурсия. Функциональные языки хорошо подходят для смешанных вычислений, когда вычисления над данными приводят к получению программного кода, который может быть выполнен. 3.5 Критика языка Паскаль Автор Паскаля, профессор Вирт, был удостоен '.!'ьк>ринговской премии, высшей награды АСМ.

С этим простым и понятным языком программирования, хорошо подходящем для первоначального обучения, связан ряд достижений систем программирования. Это и раскрутка (Ьоог;а1гарр1пф постепенная реализация компилятора на том языке, с которого он компилирует, . и компилятивно-интерпретативная реализация переносимой системы программирования на Паскале, основанной на р-коде (ау, Зама!).

Именно интерпретатор р-кода, реализуемый за неделю на любом языке программирования па любом новом компьютере предопределил второе дыхание Паскаля, совершившего 25 лет назад победное шествие по всем появившимся в то время микро))роцессорныы платформам. Недостатки этого замечательного языка являются продолжением его достоинств. Более того, эти достоинства вызвали поток критических статей в 70-х годах прошлого века, ~41!.

Например, статья автора языка Си, лауреата, Тьюрипгоьской премии Брайана Кернигана, называется «Почему язык программирования Паскаль не является моим самым любимым языком программирования». Язык Паскаль представляет собой программно-компилируемую реализацию машины фон Неймана и к нему можно отнести всю критику этой алгоритмической модели.

Скалярный оператор присваивания, через бутылочное горлышко которого надо прокачивать сложные математические объекты, заставляет программиста постоянно заботиться о рациональнс)м использовании этой шины (; — 1 и отвлекает от решения самой задачи. Справедливости ради отметим, что эта порочная систс ма в прошлом., настоящем и ближайшс)м будущем остается единственным технически возможным средством автоматиза))ии обработки информации, Язык Паскаль является строго типизированным языком. Все объекты программ на Паскале должны быть описаны и употреблян>тся в строгом соответствии с описаниями. Это предполагает строгую дисциплину программирования, неудобную в задачах системного программирования.

Однако в своей строгости Паскаль непоследователен. Например, записи с вариантными частями образуют брешь в системе типизации, не уступающую тому самому метру государственной границы, о котором мечтал герой сатирического романа 191 Остап Бендер. 'Тем не менее, особенности Паскаля таковы, что возможна. реализация быстрого однопроходного эффективного компилятора. Языковая среда Паскаля также невелика, проста и эффективна. Паскаль содержит только такие языковьге средства, которые эффективно компилируется на аппаратуру. Но это превращается в недостаток, потому что многие нужные любому программисту типы данных (такие как строки и массивы переменной длины) либо нс реализованы вообще, либо их 1эффективная) реализаш1я наталкивается на ряд проблем. Модель идеального компьютера, представляемая Паскалем, слишком далека от современной программно-аппаратной среды, представляемой современными ОС.

ГЬварнос программирование на Паскале невозможно ввиду отсутствия модульности и внешних процедур. Паскаль проигрывает Си не только в выразительной силе и лаконичности. Библиотека языка. Си представляет собой весьма мощную интерпретируемую компоненту. "Опечатки весьма оживляют чтение скучных математических текстов" Л. Эйлер 192 .

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
428
Средний доход
с одного платного файла
Обучение Подробнее