Джон Фон- Нейман

Автор: Пользователь скрыл имя, 22 Декабря 2011 в 21:02, курсовая работа

Краткое описание

Практически каждый грамотный пользователь слышал, что современные компьютеры имеют фоннеймановскую архитектуру. Многие знают о том, что ее фундаментальные принципы были изложены еще в 1946 году в статье "Предварительное рассмотрение логической конструкции электронного вычислительного устройства" и применяются на практике до сих пор.

Оглавление

Введение…………………………………………………………………………3

1. Подходы к архитектуре Фон- Неймана

1.1. Историческая справка................................................... ............4

1.2.Осново-полагающия работа А.Беркса, Г.Голдстайна и Д.Неймана …...7

1.3. Основные компоненты машины……………………………………….…...9

2. Основные принципы архитектуры Фон-Неймана

2.1. Принцип двоичного кодирования…………………………………..…...15

2.2.Принцип хранимой программы ……………………………………….....18

2.3.Принцип адресности……………………………………………………......24

Заключение ………………………………………………………………………30

Список использованной литературы и источников………………………….34

Файлы: 1 файл

курсовая.doc

— 149.20 Кб (Скачать)

     Примечание.

     Интересно, что современный компьютерный словарь дает уже для самого слова location варианты перевода "ячейка памяти" и "адрес ячейки".

     Так или иначе, но мы видим, что термин "адрес" в статье отсутствует — он появился позднее. Однако для упрощения понимания материала мы при дальнейшем изложении будем применять именно современный термин.

     Использование для идентификации ячеек памяти чисел выглядит абсолютно естественно: в ЭВМ любая информация кодируется числами, так что адреса ячеек не исключение из этого фундаментального правила. Удобно, чтобы номера соседних слов отличались на единицу: тогда легко будет организовать их последовательную циклическую обработку.

     Описывая  работу памяти, Нейман вводит одно достаточно неожиданное предположение: "отсылки в память будут двух видов: полные замены, при которых величина, записанная ранее, стирается и заменяется новым числом; частичные замены, при которых та часть приказа, которая содержит число-позицию памяти — мы предполагаем, что различные позиции в памяти последовательно пронумерованы числами-позициями, — заменяется новым числом-позицией памяти". Для начала замените в цитате "числа-позиции" на "адреса", и станет гораздо понятнее. Речь идет о том, что, кроме полной замены содержимого ячейки ОЗУ, должна существовать запись только адресной части команды. Учитывая, что в каждое слово памяти запаковано по две команды, подобное обновление адресной части выглядит чрезмерно сложно. Сами авторы писали по этому поводу следующее. "Существуют различные пути преодоления этого осложнения как с помощью дополнительного оборудования, так и с помощью соответствующих правил кодирования. Мы не будем рассматривать их здесь более подробно, поскольку этот вопрос остается открытым".

     Необходимость формирования адресной части команды понятна: так можно организовать циклическую обработку чисел, находящихся в последовательных ячейках памяти. Тем не менее описанный в статье способ не получил распространения — это как раз тот случай, когда данная часть принципа "не прижилась"1^. Следовательно, остается всего один способ замены — всей ячейки полностью. Итак, в реальных ЭВМ все разряды слова считываются и записываются как единое целое, так что можно говорить о том, что это минимальный адресуемый объем памяти. Полезно не путать с битом — минимальным элементом памяти. Почувствуйте разницу: хотя слово и состоит из множества битов (в конструкции Неймана — 40), получить доступ к отдельно взятому биту памяти, не считывая при этом другие, невозможно; проще говоря, машину нельзя заставить считать бит номер 19 отдельно от всех остальных.

     Как уже говорилось ранее, организовать ОЗУ в "Предварительном рассмотрении..." предлагалось на 40 специальных электронных устройствах — селектронах, которые в то время разрабатывались в Принстоне (упоминается также память на основе линий задержки). Нейман особо настаивал, чтобы в каждом селектроне хранилось только по одному биту из каждой ячейки: тогда к ним можно организовать одновременный (параллельный) доступ, что многократно повысит скорость обмена с памятью. Принцип параллельности хранения и обработки информации в некоторых источниках выделяют в виде самостоятельного принципа архитектуры.

     Важно подчеркнуть, что слова могут  считываться из памяти и записываться в память в абсолютно произвольном порядке, поэтому организованную таким образом память принято называть памятью с произвольным доступом — Random Access Memory (RAM). Чтобы лучше понять смысл этого термина, сравните ОЗУ с магнитной лентой, данные с которой можно получить только путем последовательного чтения.

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

     Надо  обязательно подчеркнуть, что, проектируя архитектуру будущих ЭВМ, Нейман уже встретился с проблемой считывания из ОЗУ различных объемов информации: числа были 40-разрядными и занимали все слово, а команды — 20-разрядными (точнее, разрядов было 18, а оставшиеся два просто не использовались), т.е. размещались по две в слове. Как мы видели в разделе 6, принципиальных трудностей это не вызывало, поскольку из ОЗУ пара команд считывалась одновременно.

     Развитие

     В ходе дальнейшего развития вычислительной техники необходимость обработки информации разной длины (разного количества бит) существенно возросла. Важным "скачком" в организации памяти явилось появление обработки текстов на ЭВМ третьего поколения. Именно символьная информация потребовала новых подходов, поскольку была слишком несопоставима по объему с числовой. В самом деле, если стандартное число занимает 32—40 двоичных разрядов, то один символ в стандарте ASCII, как известно, требует всего 8 бит, т.е. в 4—5 раз меньше.

     Для однозначности дальнейшего обсуждения давайте договоримся о терминологии. Будем называть ячейкой памяти то (минимальное) количество бит, которое одновременно может быть считано из ОЗУ, а машинным словом — то количество бит, которое обрабатывает машина (лучше сказать, процессор). Видно, что понятие "ячейка" является конструктивной характеристикой ОЗУ, а слово — характеристикой обработки информации, причем больше логической характеристикой, чем конструктивной: в частности, один и тот же типичный процессор может обрабатывать информацию 8, 16 и 32 бита.

     В свете принятой терминологии рассмотренная  нами выше классическая вычислительная архитектура имела 40-разрядную ячейку памяти и такое же по размеру машинное слово. Хотя команды и были вдвое короче, но они все равно считывались парами. Вообще в ЭВМ первых двух поколений проектировщики старались не создавать себе дополнительных трудностей и обычно ограничивались одинаковым размером команд и чисел. Отсюда особого различия между ячейкой памяти и обрабатываемым машинным словом не возникало, и оба термина фактически совпадали.

     Адресация данных в таких машинах была простой: каждая ячейка ОЗУ имела собственный номер (адрес), причем адреса соседних ячеек отличались на единицу.

     В ЭВМ третьего поколения идеология  построения памяти несколько изменилась. Как уже говорилось выше, причиной этого события явилась потребность к обработке символов. Появление этого "короткого" (по количеству бит) вида данных существенно не вписывалось в сложившуюся годами гармоническую систему "длинных" стандартных ячеек для хранения чисел. Большого выбора в сложившейся ситуации не было: поскольку минимальной структурой, к которой требовалось иметь доступ, был один символ, то каждому из них требовалось ставить в соответствие собственный адрес. Так родилась байтовая организация памяти, где минимальной порцией информации, которую можно считывать из ОЗУ (ячейки), стал байт.

     Но  в новой системе планирования памяти под число теперь требуется  несколько байт! Так что обработка  чисел ведется на основе другой характерной  длины-это машинной слово. В третьем  поколении ЭВМ оно было принято  равным 32 битам или 4 байтам. Машины того времени умели также обрабатывать полуслово. Таким образом, с переходом  к байтовой структуре памяти машинное слово теряет прямую связь с устройством  ОЗУ.

     В ЭВМ четвертого поколения понятие  «машинное слово» вновь приобрело связь с разрядностью микропроцессора.

     Изменение структуры памяти не могло не сказаться  на ее адресации. Адреса чисел стали  отличаться на константу, равную количеству байт. Помимо некоторого усложнения адресации  чисел, байтовый способ хранения данных порождает несколько специфических  проблем.

     - Проблема выравнивания информации  в памяти.

     - Порядок помещения байтов числа  в память.

     Итак, принцип адресности в том смысле, что информация считываете» из ячеек памяти по номерам, сохранился. Тем не менее, он подвергся довольно существенной модификации: вместо одинаковых "длинных" ячеек память современных компьютеров состоит из отдельных байтов, которые для более крупных данных объединяются вместе.

 

      Выводы

  • Минимальным количеством информации в ОЗУ является бит. Тем не менее, один отдельно взятый бит не может быть считан из памяти.
  • Считывание из памяти (и запись в память, если это предусмотрено конструкцией) производится только ячейками ("порциями") из определенного количества бит. Таким образом, существует минимальное количество бит, которое можно извлечь из памяти.
  • Все ячейки памяти ЭВМ пронумерованы. Номер ячейки принято называть адресом. Для удобства обработки адреса соседних ячеек отличаются на единицу.
  • В первых ЭВМ ячейка содержала большое число бит для того, чтобы хранить в ней число с достаточным количеством знаков. Длина команд обычно, так или иначе, согласовывалась с длиной чисел, поэтому ничего другого, кроме обмена с отдельной ячейкой памяти, машине не требовалось.
  • В ЭВМ третьего поколения в связи с потребностью в обработке текстов (символов) размер считываемой порции информации пришлось уменьшить до одного байта. При этом типичные числа стали занимать 4 байта, и в ЭВМ предусматривалась возможность одновременного считывания такого количества байт. В четвертом поколении микропроцессорных ЭВМ байтовая организация памяти сохранилась.
  • Хранение одного числа в нескольких байтах требует задания определенного правила их расположения в памяти. Существует также проблема "неравноценности" адресов байтов: в стандартной ситуации - адрес должен быть кратен длине числа.
  • В "Предварительном рассмотрении..." предлагался способ изменения отдельных выделенных битов ячейки, где хранится адрес команды без изменения всех остальных битов. Данный метод не получил практической реализации.
 
 
 

     Заключение 

     Остается  только обсудить педагогический аспект проблемы, а именно — как данный материал можно применить. Конечно, описанная в "Предварительном рассмотрении. ..." машина с практической точки зрения не представляет сейчас особого интереса. Тем не менее, существует несколько причин, почему данная публикация может быть полезна.

     Прежде  всего с исторической точки зрения. При изучении любой науки ученикам всегда рассказывают об ученых, оставивших в ней наиболее яркий след. Если хотите, в этом состоит наша человеческая благодарность к их благородному и часто самоотверженному труду на общее благо. Наверное, каждый учитель информатики, начиная тему об алгоритмах, вспоминает об аль-Хорезми, который много веков тому назад впервые сформулировал правила арифметических действий. Во всех книгах охотно пишут о поколениях ЭВМ (незаметно, между прочим, умалчивая о том, что в настоящее время данная классификация в известном смысле зашла в тупик и вместо смены каждые 10 лет, как это было раньше, "застряла" в четвертом поколении). Ученики с любопытством рассматривают фотографии старых вычислительных устройств "От абака до компьютера", оживленно комментируя то, что они видят.

     Помимо  названного аспекта, исторический подход имеет и еще одно важное достоинство. Об этом замечательно сказал в своей книге "Код" Ч.Петцольд, справедливо подчеркивая, что подобный подход очень полезен для понимания современного состояния дел: "Компьютеры наших дней сложнее тех, что появились 25 или 50 лет назад, но в основе своей они остались теми же. Вот почему изучать историю технологии так удобно: чем дальше вы уходите в прошлое, тем проще становится технология. Рано или поздно вы достигаете этапа, разобраться в котором уже не представляет особого труда". Кроме того, существует еще одна цель данной публикации, о которой уже говорилось во вводной части и которую я считаю в настоящий момент необычайно актуальной. Она состоит в том, чтобы еще раз продемонстрировать, что в процессе хранения и обработки информации на компьютерах действует целый ряд фундаментальных идей, гораздо более долговечных, чем "мгновенно "устаревающие сведения о конкретных марках процессоров и внешних устройств, а также о составе меню в той или иной версии популярного пакета. Причем идеи эти достаточно просты для понимания и интересны, так что вполне заслуживают изучения в курсе информатики. К сожалению, ход развития информатики как предмета таков, что это приходится доказывать, поскольку все, даже самые простые и важные, сведения об устройстве и работе ЭВМ под самыми разнообразными предлогами всячески вытесняются.

  • Курс информатики в первую очередь изучает автоматическую обработку информации, следовательно, принципы такой обработки нельзя полностью "изгонять" из содержания курса (16 часов на весь четырехлетний курс — 
    это почти полное изгнание).
  • Несмотря на стремительное развитие вычислительной техники, существует целый ряд фундаментальных принципов, лежащих в основе обработки информации на ЭВМ, которые остаются неизменными на протяжении десятилетий. Вопреки распространенному мнению, они понятны и достаточно интересны, а при наличии желания можно разработать и соответствующую систему практических заданий.
  • Конкретные практические навыки работы с конкретными устройствами и версиями программного обеспечения, напротив, недолговечны. Без понимания их сути они и применяются неэффективно, и быстро устаревают. Старые знания будут служить фундаментом новых только в том случае, когда они, помимо формальных навыков, имеют какую-то инвариантную теоретическую основу; в противном случае они только мешают.
  • Абстрактные философские рассуждения о роли информации в природе и особенно в обществе, сути человеческого мышления и закономерностях процессов отражения материального мира в сознании людей вполне могут быть 
    обязательным содержанием школьного предмета, но при одном немаловажном условии: эти вопросы должны быть более или менее убедительно разрешены и изложены в учебнике в доступной для школьника форме. Крайне желательно, чтобы существовала и была видна связь изучаемой теории с той практической деятельностью, которая имеет место на уроке. Например, полезность 
    знания двоичной системы никак не видна при работе в MS Office и поэтому немедленно слышится традиционное" кому это нужно". Зато имеются многочисленные яркие примеры, демонстрирующие применение данной системыв ходе изучения основ работы компьютера.
  • То, что важно уметь сегодня, совсем не обязательно будет востребовано завтра. Очень важно поэтому стараться отбирать для изучения такой материал, который имеет наибольшие шансы сохранить свою значимость и не подвергнуться очередному философскому переосмыслению авторов новых учебников.

Информация о работе Джон Фон- Нейман