Автор: Пользователь скрыл имя, 20 Марта 2012 в 06:34, контрольная работа
1. История развития ЭВМ. Поколения ЭВМ. Перспективные направления развития компьютерной техники. Принципы фон Неймана.
2. Вопрос: Глобальные и локальные переменные. Фактические и формальные параметры. Параметры-значения и параметры переменные.
1
1. История развития ЭВМ. Поколения ЭВМ. Перспективные направления развития компьютерной техники. Принципы фон Неймана.
Ответ:
История развития ЭВМ. Поколения ЭВМ.
Идея использования программного управления для построения устройства, автоматически выполняющего арифметические вычисления, была впервые высказана английским математиком Ч.Бэббиджем еще в 1833г. Однако его попытки построить механическое вычислительное устройство с программным управлением не увенчались успехом.
Первой работающей универсальной автоматически управляемой вычислительной машиной (ВМ) считается расчетно-механическая машина "Марк - 1" ( США, 1944г. ). Простои машины составляли большую часть времени. Столь же низкая производительность оказалась и у машины "Марк - 2", построенной на реле улучшенной конструкции.
Проект первой ЭВМ ЭНИАК был разработан Дж.Моучли (США, 1942г.); в 1946г машина вступила в строй. В этой машине было 18000 электрических ламп, 1500 электромеханических реле. Применение ламп повысило скорость выполнения операций в 1000 раз по сравнению с устройством "Марк - 1".
За точку отсчета эры ЭВМ принимают сеансы опытной эксплуатации машины ЭНИАК, которые начались в Пенсильванском университете в 1946г.
Электронные лампы стали элементной базой ЭВМ первого поколения. Основная схема – симметричный триггер был создан в 1918г. советским ученым Бонч-Бруевичем М.А. В 1919г. аналогичная схема была разработана также американскими учеными Икклзом и Джорданом.
Первые проекты отечественных ЭВМ были предложены С.А. Лебедевым, Б.И. Рамеевым в 1948г. В 1949-51гг. по проекту С.А. Лебедева была построена МЭСМ ( малая электронно-счетная машина ). К ЭВМ 1-го поколения относится и БЭСМ-1 (большая электронно-счетная машина ), разработка которой под руководством С.А. Лебедева была закончена в 1952г., она содержала 5 тыс. ламп, работала без сбоев в течение 10 часов. Быстродействие достигало 10 тыс. операций в секунду. Почти одновременно проектировалась ЭВМ "Стрела" под руководством Ю.Я. Базилевского, в 1953г. она была запущена в производство. Позже появилась ЭВМ "Урал - 1", положившая начало большой серии машин "Урал", разработанных и внедренных в производство под руководством Б.И. Рамеева. В 1958г. запущена в серийное производство ЭВМ первого поколения М – 20 (быстродействие до 20 тыс. операций/с ).
С появлением транзисторов в середине 50-х годов на смену первого поколения ЭВМ пришли ЭВМ 2-го поколения, построенные на полупроводниковых приборах.
В нашей стране были созданы полупроводниковые ЭВМ разных назначений: малые ЭВМ серий "Наири" и "Мир", средние ЭВМ со скоростью работы 5-30 тыс. операций/с – "Минск - 22" и "Минск – 32, "Раздан – 2", "Раздан – 3", БЭСМ – 4, М – 220 и лучшая из машин второго поколения – БЭСМ – 6 со скоростью работы до 1 млн. опер/с.
В начале 60-х годов возникло новое направление в электронике – интегральная электроника. Использование интегральных схем для построения ЭВМ стало революцией в ВТ и способствовало появлению машин 3-го поколения.
С 1972г. начался выпуск моделей первой очереди единой системы ЭВМ (совместно с социалистическими странами. Вторая очередь имела более современную схемотехническую, конструкторско-технологическую базу, за счет чего у них увеличилась производительность, и расширились функциональные возможности.
Одна из характерных особенностей ЭВМ 4-го поколения - переход от интегральных функциональных схем к интегральным подсистемам ЭВМ. Подсчитано, что внедрение БИС увеличивает надежность не менее чем в 10 раз. Из отечественных ЭВМ к машинам 4-го поколения, прежде всего, относятся машины семейства "Эльбрус".
Перспективные направления развития ЭВМ.
Нейрокомпьютинг - это научное направление, занимающееся разработкой вычислительных систем шестого поколения - нейрокомпьютеров, которые состоят из большого числа параллельно работающих простых вычислительных элементов (нейронов). Элементы связаны между собой, образуя нейронную сеть. Они выполняют единообразные вычислительные действия и не требуют внешнего управления. Большое число параллельно работающих вычислительных элементов обеспечивают высокое быстродействие.
В настоящее время разработка нейрокомпьютеров ведется в большинстве промышленно развитых стран.
Нейрокомпьютеры позволяют с высокой эффективностью решать целый ряд интеллектуальных задач. Это задачи распознавания образов, адаптивного управления, прогнозирования, диагностики и т.д.
Нейрокомпьютеры отличаются от ЭВМ предыдущих поколений не просто большими возможностями. Принципиально меняется способ использования машины. Место программирования занимает обучение, нейрокомпьютер учится решать задачи.
Обучение - корректировка весов связей, в результате которой каждое входное воздействие приводит к формированию соответствующего выходного сигнала. После обучения сеть может применять полученные навыки к новым входным сигналам. При переходе от программирования к обучению повышается эффективность решения интеллектуальных задач.
Вычисления в нейронных сетях существенно отличаются от традиционных, в силу высокой параллельности их можно рассматривать как коллективное явление. В нейронной сети нет локальных областей, в которых запоминается конкретная информация. Вся информация запоминается во всей сети.
Толчком к развитию нейрокомпьютинга послужили биологические исследования. По данным нейробиологии нервная система человека и животных состоит из отдельных клеток - нейронов. В мозге человека их число достигает 1.0e10 - 1.0e12. Каждый нейрон связан с 1.0e3 - 1.0e4 другими нейронами и выполняет сравнительно простые действия. Время срабатывания нейрона - 2-5 мс. Совокупная работа всех нейронов обуславливает сложную работу мозга, который в реальном времени решает сложнейшие задачи. Отличия нейрокомпьютеров от вычислительных устройств предыдущих поколений:
- параллельная работа очень большого числа простых вычислительных устройств обеспечивает огромное быстродействие;
- нейронная сеть способна к обучению, которое осуществляется путем настройки параметров сети;
- высокая помехо- и отказоустойчивость нейронных сетей;
- простое строение отдельных нейронов позволяет использовать новые физические принципы обработки информации для аппаратных реализаций нейронных сетей.
Нейронные сети находят свое применение в системах распознавания образов, обработки сигналов, предсказания и диагностики, в робототехнических и бортовых системах. Нейронные сети обеспечивают решение сложных задач за времена порядка времен срабатывания цепочек электронных и/или оптических элементов. Решение слабо зависит от неисправности отдельного нейрона. Это делает их привлекательными для использования в бортовых интеллектуальных системах.
Разработки в области нейрокомпьютеров поддерживаются целым рядом международных и национальных программ. В настоящее время эксплуатируется не менее 50 нейросистем в самых различных областях - от финансовых прогнозов до экспертизы.
Разработки в области нейрокомпьютинга ведутся по следующим направлениям:
- разработка нейроалгоритмов;
- создание специализированного программного обеспечения для моделирования нейронных сетей;
- разработка специализированных процессорных плат для имитации нейросетей;
- электронные реализации нейронных сетей;
- оптоэлектронные реализации нейронных сетей.
В настоящее время наиболее массовым направлением нейрокомпьютинга является моделирование нейронных сетей на обычных компьютерах, прежде всего персональных. Моделирование сетей выполняется для их научного исследования, для решения практических задач, а также при определении значений параметров электронных и оптоэлектронных нейрокомпьютеров.
Перспективы нейрокомпьютинга.
Вписав появление нейрокомпьютинга в общий процесс эволюции компьютеров, мы получаем возможность заглянуть в ближайшее будущее - экстраполируя сегодняшние тенденции.
Вездесущие умные нейрочипы.
Сегодняшний нейрокомпьютинг проходит "обкатку", в основном, в программном продукте для задач ассоциативной обработки данных, редко используя при этом свой "параллельный" потенциал. Такие приложения как раз и являются основной темой данной книги. Эпоха истинного - параллельного - нейрокомпьютинга начнется с выходом на рынок широкого ассортимента аппаратных средств - специализированных нейрочипов для обработки изображений, речи и прочей сенсорной информации. Можно представить себе, например, дверные замки, распознающие хозяина по виду, голосу, и быть может, запаху в совокупности. Системы жизнеобеспечения жилищ станут адаптивными и обучаемыми. Все бытовые приборы поумнеют и приобретут способность угадывать, что от них требуется именно в данный момент. Провозвестником таких изменений можно считать нейросетевой блок адаптивного управления в недавно появившемся пылесосе фирмы Samsung.
Сенсорные датчики приобретут способность реагировать, а регулирующие системы - ощущать. Умные контроллеры, распознающие потенциально опасные ситуации и умеющие принимать адекватные превентивные решения, получат распространение в сложных электрических и тепловых сетях. На них будут основываться системы регулирования транспортными потоками и потоками данных в компьютерных сетях и сотовой связи.
Принципы фон Неймана (Архитектура фон Неймана)
В 1946 году Д. фон Нейман, Г. Голдстайн и А. Беркс в своей совместной статье изложили новые принципы построения и функционирования ЭВМ. В последствие на основе этих принципов производились первые два поколения компьютеров. В более поздних поколениях происходили некоторые изменения, хотя принципы Неймана актуальны и сегодня.
По сути, Нейману удалось обобщить научные разработки и открытия многих других ученых и сформулировать на их основе принципиально новое.
Принципы фон Неймана:
Использование двоичной системы счисления в вычислительных машинах. Преимущество перед десятичной системой счисления заключается в том, что устройства можно делать достаточно простыми, арифметические и логические операции в двоичной системе счисления также выполняются достаточно просто.
Программное управление ЭВМ. Работа ЭВМ контролируется программой, состоящей из набора команд. Команды выполняются последовательно друг за другом. Созданием машины с хранимой в памяти программой было положено начало тому, что мы сегодня называем программированием.
Память компьютера используется не только для хранения данных, но и программ. При этом и команды программы и данные кодируются в двоичной системе счисления, т.е. их способ записи одинаков. Поэтому в определенных ситуациях над командами можно выполнять те же действия, что и над данными.
Ячейки памяти ЭВМ имеют адреса, которые последовательно пронумерованы. В любой момент можно обратиться к любой ячейке памяти по ее адресу. Этот принцип открыл возможность использовать переменные в программировании.
Возможность условного перехода в процессе выполнения программы. Не смотря на то, что команды выполняются последовательно, в программах можно реализовать возможность перехода к любому участку кода.
Самым главным следствием этих принципов можно назвать то, что теперь программа уже не была постоянной частью машины (как например, у калькулятора). Программу стало возможно легко изменить. А вот аппаратура, конечно же, остается неизменной, и очень простой.
2. Вопрос: Глобальные и локальные переменные. Фактические и формальные параметры. Параметры-значения и параметры переменные.
Ответ: Локальная переменная - переменная, объявленная внутри какой-либо функции. Областью видимости локальных переменных является тело функции, в которой эта переменная объявлена. Локальная переменная может быть проинициализирована константой или выражением, соответствующими ее типу.
Глобальная переменная - переменная, объявленная за пределами всех функций. Областью видимости глобальных переменных является вся программа. Глобальная переменная не локализована ни на каком уровне. Инициализация глобальных переменных производится однократно перед началом исполнения специальных функций.
Глобальные переменные действуют только в рамках функции и недоступны операторам основной программы.
Если управление в программе находится внутри какой-либо функции, то значения локальных переменных, объявленных в другой функции не доступны. Значение любой
глобальной переменной доступно из любой специальной и пользовательской функции.
Различают две разновидности параметров - параметры формальные и параметры фактические.
Формальные параметры (параметры, указываемые при описании подпрограммы) - это переменные, которые используются только внутри процедуры во время ее работы и играют роль приемника информации, поступающей извне. Поставщиками информации (конкретных значений) для формальных параметров являются Фактические параметры (параметры, указываемые при вызове подпрограммы). Фактическими параметрами могут служить переменные, константы, числа, выражения. При вызовах процедуры в разных частях основной программы, могут меняться фактические параметры, но формальные параметры, находящиеся внутри процедуры и воспринимающие значения от фактических параметров, остаются без изменений, меняются только хранимые ими значения.
Список формальных параметров необязателен и может отсутствовать (в этом случае будут отсутствовать и фактические параметры).
Различают два вида формальных параметров: параметры-значения и параметры-переменные.
Параметры-значения передаются основной программой в подпрограмму через стек в виде их копий и, следовательно, собственный параметр программы подпрограммой измениться не может.
Параметр-значение указывается в заголовке подпрограммы своим именем и через двоеточие - типом. Тип параметра-значения может быть любым за исключением файлового.
Если параметров-значений одного типа несколько, их можно объединить в одну группу, перечислив их имена через запятую, а затем уже указать общий тип.