Автор: Пользователь скрыл имя, 01 Сентября 2011 в 15:58, шпаргалка
Работа содержит ответы на вопросы по дисциплине "Информатика".
• вместе с разнообразными уловками, направленными на повышение эффективности программы (т.е. минимальных требований к оперативной памяти и минимального времени выполнения), это приводило к непонятности программ, их ненадежности, трудностям в отладке и модификации, делая программирование трудоемким, сложным и чрезвычайно дорогостоящим.
Необходимость
ориентироваться на ограниченный набор
команд компьютера, на его скромные
возможности приводила к
8.2.
СТРУКТУРНЫЙ ПОДХОД
С появлением массовых ЭВМ 3-го поколения устаревшая технология программирования оказалась основным фактором, сдерживающим развитие и распространение компьютерных (информационных) технологий, что подтолкнуло ведущие в этой сфере деятельности фирмы, в первую очередь IBM, к разработке новых методологий программирования. Появившийся в начале 1970-х годов новый подход к разработке алгоритмов получил название структурного.
С появлением структурного
программирования описанные выше трудности
были во многом преодолены. В основе
технологических принципов
Следование - самая
важная из структур. Она означает, что
действия могут быть выполнены друг
за другом, рис. 1.19:
Рис. 1.19. Структура
«следование»
Эти прямоугольники могут представлять как одну единственную команду, так и множество операторов, необходимых для выполнения сложной обработки данных.
Ветвление - это структура, обеспечивающая выбор между двумя альтернативами. Выполняется проверка, а затем выбирается один из путей (рис. 1.20).
Эта структура называется также «ЕСЛИ - ТО - ИНАЧЕ», или «развилка». Каждый из путей (ТО или ИНАЧЕ) ведет к общей точке слияния, так что выполнение программы продолжается независимо от того, какой путь был выбран.
Рис. 1.20. Структура
«ветвление»
Может оказаться, что для одного из результатов проверки ничего предпринимать не надо. В этом случае можно применять только один обрабатывающий блок, рис.1.21:
Рис. 1.21. Структура
«неполное ветвление»
Цикл (или повторение) предусматривает повторное выполнение некоторого Набора команд программы. Если бы циклы не существовали, вряд ли занятие программированием было бы оправданным: циклы позволяют записать длинные последовательности операций обработки данных с помощью небольшого числа повторяющихся команд. Разновидности цикла изображены на рис. 1.22 и рис. 1.23.
Цикл начинается
с проверки логического выражения.
Если оно истинно, то выполняется
«a», затем все повторяется снова,
пока логическое выражение сохраняет
значение «истина». Как только оно становится
ложным, выполнение операций «а» прекращается
и управление передается по программе
дальше.
Рис. 1.22. Структура
цикла «пока»
Рис. 1.23. Структура
цикла «до»
Рис. 1.24. Нахождение
суммы трех чисел
Рис. 1.25. Нахождение
наибольшего из трех чисел
Эти структуры можно комбинировать одну с другой - как путем организации их следований, так и путем создания суперпозиций (вложений одной структуры в другую) - сколь угодно разнообразно для выражения логики алгоритма решения любой задачи. Используя описанные структуры, можно полностью исключить использование каких-либо еще операторов условного и безусловного перехода, что является важным признаком структурного программирования. Направление выполнения команд часто изображают сверху вниз. На рис. 1.24 - 1.26 приведены простейшие примеры структурной реализации алгоритмов работы с величинами.
Рис. 1.26. Нахождение суммы 100 чисел
Умение образовывать из базовых структур их суперпозиции в соответствии с условиями конкретной задачи - одно из важнейших в программировании. Допустим, надо ввести в память компьютера 100 чисел и по дороге отсуммировать те из них, которые положительны. Ясно, что ввод - операция циклическая, а внутри этого цикла находится развилка, в которой проверяется знак числа и производится суммирование. Схематически соответствующая суперпозиция изображена на рис. 1.27.
Так как выражение, управляющее циклом, проверяется в самом начале, то в случае, если условие сразу окажется ложным, операторы циклической части «a» могут вообще не выполняться. Операторы циклической части «а» должны изменять переменную (или переменные), влияющие на значение логического выражения, иначе программа «зациклится» - будет выполняться бесконечно. Рассмотренная циклическая конструкция называется также цикл «пока», или «цикл с предусловием».
Существует и
иная конструкция цикла, которая
предусматривает проверку условия,
по которому, наоборот, выполнение команд
циклической части
Рис 1.27 Алгоритм
типа развилка, вложенная в цикл,
для нахождения суммы положительных чисел
из 100 возможных
Схематические
изображения нескольких суперпозиций
базовых алгоритмических
Еще одним важным компонентом структурного подхода к разработке алгоритмов является модульность. Модуль - это последовательность логически связанных операций, оформленных как отдельная часть программы. Использование модулей имеет следующие преимущества:
1) возможность
создания программы
2) простота проектирования
и последующих модификаций
3) упрощение отладки программы - поиска и устранения в ней ошибок;
4) возможность
использования готовых
Но, пожалуй, самым
важным достижением структурного подхода
к разработке алгоритмов является нисходящее
проектирование программ, основанное
на идее уровней абстракции, которые становятся
уровнями модулей в разрабатываемой программе.
На этапе проектирования строится схема
иерархии, изображающая эти уровни. Схема
иерархии позволяет программисту сначала
сконцентрировать внимание на определении
того, что надо сделать в программе, а лишь
затем решать, как это надо делать. При
нисходящем проектировании исходная,
подлежащая решению задача разбивается
на ряд подзадач, подчиненных по своему
содержанию главной задаче. Такое разбиение
называется детализацией или декомпозицией.
Рис. 1.28.
Алгоритм типа «цикл, вложенный в неполную развилку» |
Рис. 1.29. Алгоритм типа «цикл в цикле» |
Рис. 1.30. Алгоритм типа «развилка в развилке» | Рис. 1.31. Иллюстрация трехкратного вложения одной базовой структуры в другую |
На следующем
этапе эти задачи, в свою очередь,
разбиваются на более мелкие подчиненные
подзадачи и так далее, до уровня
относительно небольших подзадач, вторые
требуют для решения небольших модулей
в 3 - 5 строк. Такой метод роектирования
программ позволяет преодолевать проблему
сложности разработки программы (и ее
последующей отладки и сопровождения).
25. Персона́льный компью́тер (англ. personal computer), персона́льная ЭВМ — компьютер, предназначенный для личного использования, цена, размеры и возможности которого удовлетворяют запросам большого количества людей. Созданный как вычислительная машина, компьютер, тем не менее, всё чаще используется как инструмент доступа в компьютерные сети.
В употребление термин был введён в конце 1970-х годов компанией Apple Computer для своего компьютера Apple II и впоследствии перенесён на компьютеры IBM PC. Некоторое время персональным компьютером называли любую машину, использующую процессоры Intel и работающую под управлением операционных систем DOS, OS/2 и первых версий Microsoft Windows. С появлением других процессоров, поддерживающих работу перечисленных программ, таких, как AMD, Cyrix (ныне VIA), название стало иметь более широкую трактовку. Курьёзным фактом стало противопоставление «персональным компьютерам» вычислительных машин Amiga и Macintosh, долгое время использовавших альтернативную компьютерную архитектуру.
структура ПК
(монитор, материнская плата, центральный процессор, оперативная память, карты расширений, блок питания, оптический привод, жесткий диск, компьютерная мышь, клавиатура)
Основные характеристики компьютера (разрядность, тактовая частота, объем оперативной и внешней памяти, производительность и др.)
Процессор. Важнейшей характеристикой процессора, определяющей его быстродействие, является его частота, т. е. количество базовых операций (например, операций сложения двух двоичных чисел), которые производит процессор за 1 секунду. За двадцать с небольшим лет тактовая частота процессора увеличилась в 500 раз, от 4 МГц (процессор 8086, 1978 г.) до 2 ГГц (процессор Pentium 4, 2001 г.). Другой характеристикой процессора, влияющей на его производительность, является разрядность процессора. Разрядность процессора определяется количеством двоичных разрядов, которые процессор обрабатывает за один такт. Разрядность процессора увеличилась за 20 лет в 8 раз. В первом отечественном школьном компьютере «Агат» (1985 г.) был установлен процессор, имевший разрядность 8 бит, у современного процессора Pentium 4 разрядность равна 64 бит.
Оперативная (внутренняя) память. Оперативная память представляет собой множество ячеек, причем каждая ячейка имеет свой уникальный двоичный адрес. Каждая ячейка памяти имеет объем 1 байт.
В персональных компьютерах величина адресного пространства процессора и величина фактически установленной оперативной памяти практически всегда различаются. Например, объем адресуемой памяти может достигать 4 Гбайт, а величина фактически установленной оперативной памяти будет значительно меньше — скажем, * всего» 64 Мбайт.
Оперативная память аппаратно реализуется в виде модулей памяти различных типов (SIMM, DIMM) и разного объема (от 1 до 256 Мбайт). Модули различаются по своим геометрическим размерам: устаревшие модули SIMM имеют 30 или 72 контакта, а современные модули DIMM — 168 контактов.
Долговременная (внешняя) память. В качестве внешней памяти используются носители информации различной информационной емкости: гибкие диски (1,44 Мбайт), жесткие диски (до 50 Гбайт), оптические диски CD-ROM (650 Мбайт) и DVD (до 10 Гбайт). Самыми медленными из них по скорости обмена данными являются гибкие диски (0,05 Мбайт/с), а самыми быстрыми — жесткие диски (до 100 Мбайт/с).
Производительность компьютера. Производительность компьютера является его интегральной характеристикой, которая зависит от частоты и разрядности процессора, объема оперативной (внутренней) и долговременной (внешней) памяти и скорости обмена данными. Производительность компьютера нельзя вычислить, она определяется в процесее тестирования по скорости выполнения определенных операций в стандартной программной среде.
26.
28. . Этапы решения задачи на ЭВМ
Программирование (programming) - теоретическая и практическая деятельность, связанная с созданием программ. Решение задач на компьютере включает в себя следующие основные этапы, часть из которых осуществляется без участия компьютера.
1. Постановка задачи:
• сбор информации о задаче;
• формулировка условия задачи;
• определение конечных целей решения задачи;
• определение формы выдачи результатов;
• описание данных (их типов, диапазонов величин, структуры и т. п.).
2. Анализ и исследование задачи, модели:
• анализ существующих аналогов;
• анализ
технических и программных
• разработка математической модели;
• разработка структур данных.
3. Разработка алгоритма:
• выбор метода проектирования алгоритма;
• выбор формы записи алгоритма (блок-схемы, псевдокод и др.);
• выбор тестов и метода тестирования;
• проектирование алгоритма.