Первое поколение (1975—1980 гг.) — на базе 8-разрядного МП

Второе поколение (1981—1985 гг.) — на базе 16-разрядного МП

Третье поколение (1986—1992 гг.) — на базе 32-разрядного МП

Четвертое поколение (1993 г. — по настоящее время) — на базе 64-разрядного МП.

Роль компьютера IBM PC\

Компьютер IBMPC, произведенный корпорацией IBM (США) на базе МП Intel-8086 в 1981 г. занял и занимает до сих пор ведущее место на рынке.

Его основное преимущество — так называемая «открытая архитектура», благодаря которой пользователи могут расширять возможности приобретенной ПЭВМ, добавляя личные периферийные устройства и модернизируя его.

Компьютер IBMPC стал как бы стандартом класса ПЭВМ. Примерно 85% всех продаваемых ПЭВМ базируется на архитектуре IBMPC

Классификация ПЭВМ

Бытовые ПЭВМ:предназначены для использования в домашних условиях

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

Профессиональные ПЭВМиспользуются в научной сфере, для решения сложных информационных и производственных задач.

Структурная схема ПЭВМ с периферийными устройствами

первое поколение (1975—1980 гг.) — на базе 8-разрядного МП - student2.ru

Центральный микропроцессор, его функции и состав

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

Конструктивно МП, как правило, выполнен на одном кристалле (на одной СБИС). В его составе:

Центральный процессор (АЛУ + УУ)

Арифметический сопроцессор

КЭШ-память (регистрового типа)

Схемы управления системной шиной

Состав микропроцессора

Ядром ПЭВМ является центральный микропроцессор, который выполняет функции обработки информации и управления работой всех блоков.

Конструктивно МП, как правило, выполнен на одном кристалле (на одной СБИС). В его составе:

Центральный процессор (АЛУ + УУ)

КЭШ-память,

Схемы управления системной шиной.

МП с архитектурой RISC

RISC( ReductedInstructionSetComputer — «компьютер с сокращенной системой команд»).

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

Ограниченный набор команд сравнительно простой структуры дает возможность уменьшить количество аппаратуры

При одной и той же тактовой частоте ПЭВМ RISC-архитектуры имеют производительность в 2 — 4 раза выше, чем ПЭВМ на базе МП Intel.

Внутренняя память ПЭВМ

Внутренняя память ПЭВМ состоит из оперативной памяти (ОП) и постоянной памяти (ПП).

Постоянная память является энергонезависимой, используется для хранения системных программ, в частности, так называемой базовой системы ввода-вывода (BIOS — BasicInputOutputSystem), вспомогательных программ и т.п. Программы, хранящиеся в ПП, предназначены, для постоянного использования их микропроцессором.

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

Сегментация оперативной памяти ПЭВМ

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

Расположение сегментов оперативной памяти ПЭВМ. Внешние запоминающие устройства ПЭВМ

первое поколение (1975—1980 гг.) — на базе 8-разрядного МП - student2.ru

Кластер

Кластер состоит из одного или нескольких смежных секторов.

Кластер – минимальная единица размещения данных на диске

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

Размеры кластера

Размеры кластера определяются используемой файловой системой в зависимости от размеров логического диска.

Фрагментация

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

Слишком большой размер кластера ведет к неэффективному использованию памяти, особенно при наличии большого числа файлов небольшого размера.

Файловая система NTFS делит все полезное место на кластеры - блоки данных, используемые единовременно. NTFS поддерживает почти любые размеры кластеров - от 512 байт до 64 Кбайт, неким же стандартом считается кластер размером 4 Кбайт.

Физический и логический формат диска

Любой диск имеет физический и логический формат.

Физический формат диска определяет размер сектора (в байтах), число секторов на дорожке (или — для жёстких дисков — в цилиндре), число дорожек (цилиндров) и число сторон.

Логический формат диска задаёт способ организации информации на диске и фиксирует размещение информации различных типов.

Логический диск или том — часть долговременной памяти, рассматриваемая как единое целое для удобства работы. Термин «логический диск» используется в противоположность «физическому диску», под которым рассматривается память одного конкретного носителя информации

Таблицарасположенияфайлов (File Allocation Table - FAT)

Для выполнения файловых операций ОС отслеживает распределение пространства диска между файлами с помощью таблицы FAT.

Для каждого файла в FAT создается цепочка элементов, указывающая кластеры, занимаемые файлом на диске.

В каталоге, содержащем имя файла, есть указатель к началу цепочки – точка входа в FAT .

При удалении файла элементы FAT и соответствующие им кластеры освобождаются.

Для повышения быстродействия FAT копируются в оперативную память ПЭВМ.

Стандартная файловая система для семейства операционных систем MSWindows: NTFS (NewTechnolFileSystem)

Стандартная файловая система для семейства операционных систем MSWindows.

Использует специализированные структуры данных для хранения информации о файлах для улучшения производительности, надёжности и эффективности использования дискового пространства. NTFS хранит информацию о файлах в MasterFileTable (MTF).

MFT (MasterFileTable) — главная файловая таблица (база данных), в которой хранится информация о содержимом тома NTFS, представляющая собой таблицу, строки которой соответствуют файлам тома, а столбцы — атрибутам файлов).

NTFS имеет встроенные возможности разграничивать доступ к данным для различных пользователей и групп пользователей, а также назначать квоты (ограничения на максимальный объём дискового пространства, занимаемый теми или иными пользователями). NTFS использует систему журналирования для повышения надёжности файловой системы.

Раздел 8 (Лекция 14)

Понятие алгоритма

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

Алгоритмический процесс

Алгоритмический процесс– это процесс последовательного преобразования конструктивных объектов (слов, чисел, пар слов, пар чисел, предложений и т.п.), происходящий дискретными «шагами». Каждый шаг состоит в смене одного конструктивного объекта другим.

Семь независимых параметров алгоритма

совокупность возможных исходных данных;

совокупность возможных промежуточных результатов;

совокупность результатов;

правило начала;

правило непосредственной переработки;

правило окончания;

правило извлечения результата.

Пример: параметры алгоритма Евклида

предназначен для нахождения наибольшего общего делителя пары натуральных чисел (m, n)

1 {Нахождение остатка}r:=mmodn.

2 {Замена}m:=n; n:=г.

3 {Остановка?} Если n<>0, то переход к п.1.

4 {Остановка процесса} m — искомое число.

Смена конструктивных объектов в алгоритме Евклида для пары чисел m=10, n=4:

(10, 4) ® (4, 2) ® (2, 0)

Способы описания алгоритмов

Словесно-формульный

Структурный (блок - схемный)

С помощью граф-схемБлок-схема — это ориентированный граф, вершины которого могут быть одним из трех типов: Функциональная вершинаиспользуется для представления функции f: X—>Y.
Предикатная вершинаиспользуется для представления функции (или предиката)
р: X —» ( T, F), т.е. логического выражения, передающего управление по одной из двух возможных ветвей.
Объединяющая вершина представляет передачу управления от одной из двух входящих ветвей к одной выходящей.

Важной особенностью всех приведенных структур является то, что они имеют один вход и один выход.
Структурные блок - схемы алгоритмов:

Линейные

Ветвящиеся

Циклические

С помощью сети Петри

Словесно-формульный способ

При словесно-формульном способе алгоритм записывается в виде текста с формулами по пунктам, определяющим последовательность действий.

Блок-схемный

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

первое поколение (1975—1980 гг.) — на базе 8-разрядного МП - student2.ru

Структурная блок-схема алгоритма

Структурная блок-схема — это блок-схема, которая может быть выражена как композиция из 4 элементарных блок-схем.

первое поколение (1975—1980 гг.) — на базе 8-разрядного МП - student2.ru

Линейные, ветвящиеся и циклические алгоритмы

Линейным принято называть вычислительный процесс, в котором операции выполняются последовательно, в порядке их записи. Каждая операция является самостоятельной, независимой от каких-либо условий. На схеме блоки, отображающие эти операции, располагаются в линейной последовательности

Вычислительный процесс называется ветвящимся, если для его реализации предусмотрено несколько направлений. Каждое отдельное направление процесса обработки данных является отдельной ветвью вычислений. Ветвление в программе – это выбор одной из нескольких последовательностей команд при выполнении команды.

Направление ветвления выбирается логической проверкой, в результате которой возможны два ответа: «да» - условие выполнено и «нет»- условие не выполнено.

Циклическими называются программы, содержащие циклы.

Цикл – это многократно повторяемый участок программы.

В организации цикла можно выделить следующие этапы:

подготовка (инициализация) цикла (И);

выполнение вычислений цикла (Т);

модификация параметров (М);

проверка условий окончания цикла (У);

Методы разработки алгоритмов

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

Трудная задача сводится к последовательности более простых задач. Именно с вопроса: Можно ли данную задачу разбить на набор простых задач и надо начинать разработку алгоритма.

Метод подъема.Это также общий рецепт разработки алгоритма. Алгоритм начинается с принятия начального предположения или построения начального решения задачи. Затем начинается быстрое (на сколько возможно) движение вверх к лучшему решению.

Раздел 9 (Лекция 13)

Программное обеспечение ЭВМ

первое поколение (1975—1980 гг.) — на базе 8-разрядного МП - student2.ru

Системное ПО: назначение и классификация

СистемноеПО предназначено для обеспечения работоспособности ЭВМ и разработки других программных средств: общесистемное, инструментальное (системы программирования, системы управления базами данныхCase-системы (система, поддерживающие разработку крупных программных средств на протяжении всего жизненного цикла,Case-системы являются инструментарием для системных аналитиков и разработчиков программных средств), инструментальные средства с закрытой непубликуемой технологией (игры, мультимедиа)), диагностическое( антивирусное программное обеспечение, средства тестирования, диагностическое ПО(пакеты CheckIt), средства корректировки(программы, позволяющие произвести настройку режимов работы отдельного узла ЭВМ), вспомогательные программные средства(используется при ремонте узлов ЭВМ, например, Screen-Test)).

Общесистемное:Операционные системы (ОС)

Операционные оболочки – NC, VC(это программа, которая позволяет более удобно выполнять команды ОС(totalcommander))

Операционные среды (Win 3.1) (надстройка над ОС с развитым пользовательским интерфейсом)

Драйверы(набор инструкций или программа, расширяющая возможности ОС по управлению ЭВМ)

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

ОС – программа, которая автоматически загружается в оперативную память и выполняет управление физическими и логическими ресурсами ЭВМ

Физические – память, процессор, внешние устройства

Логические – программы, файлы, события

(MS DOS, Windows, Windows NT Server, UNIX)

Общесистемное ПО

Операционные системы (ОС)

Операционные оболочки – NC, VC

Операционные среды (Win 3.1) – надстройка над DOS

Драйверы

Утилиты

ОС – программа, которая автоматически загружается в оперативную память и выполняет управление физическими и логическими ресурсами ЭВМ

-- Физические – память, процессор, внешние устройства

-- Логические – программы, файлы, события

(MS DOS, Windows, Windows NT Server, UNIX)

Прикладное ПО: назначение и классификация

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

Классификация:ПО общего назначения(текстовые, табличные, графические процессоры, электронные секретари, эл. почта, игры)

Специализированное ПО(САПР, обучающие системы, математические системы, издательские системы, финансовые системы, системы управления проектами)

Нетрадиционное ПО(системы мультимедиа, интеллектуальные системы: экспертные системы, системы распознавания, перевод текста)

Классификация пакетовприкладных программ

1. Проблемно-ориентированные ППП

Проблемно-ориентированные ППП включают следующие программные продукты:

- Текстовые процессоры

- Настольные издательские системы (НИС)

- Графические редакторы

- Пакеты для работы с векторной графикой

- Электронные таблицы

- Организаторы работ

- Системы управления базами данных (СУБД)

- Пакеты демонстрационной графики

- Пакеты программ мультимедиа

- Системы автоматизации проектирования

- Программы распознавания символов

2.Интегрированные ППП

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

3.Пакеты ППП для решения научно-технических задач

Пакет прикладных программ представляет собой набор подпрограмм, объединяемый управляющей программой и предназначенный для решения конкретных задач в какой-либо области знаний

Обычно все подпрограммы делаются свободными от ввода-вывода и размер массивов указывается условный. Программы ввода-вывода выполняются в виде отдельного модуля

В зависимости от структуры ППП модули могут быть различных структур:

- простой

- оверлейной

- динамически последовательной

- динамически параллельной

Этапы решения научно-технических задач на ЭВМ

Постановка задачи (описывается цель решения задачи, проблема, подробное содержание характеристик, условия задачи, входные и выходные данные)

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

Выбор и обоснование метода решения (одну и ту же задачу можно решать различными методами: процедурное программирование, объектно-ориентированное программирование, использование известного ПО)

Проектирование (создается общая структура программы, описывается взаимодействие между компонентами программы, блок-схема)

Кодирование (все конструкции, записанные на языке проектирования, переводятся на язык программирования высокого уровня)

Тестирование (всесторонняя проверка программы на правильность, эффективность, на вычислительную сложность-состоит в экспериментальном сравнении двух алгоритмов, решающих одну и ту же задачу)

Составление рабочей документации (требования ЕСПД: описание применения, руководство пользователя, руководство программисту)

Сопровождение (этапы эксплуатации программы: обучение пользователей, обновления программы, консультации)

Основные направления в программировании

ПРОЦЕДУРНОЕ программирование

МОДУЛЬНОЕ программирование

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ программирование

Процедурное программирование

В процедурном программировании основное внимание уделяется алгоритмам, т.е некоторой последовательности действий, выполнение которых приводит к определенному результату.

Языки программирования, которые поддерживают эту модель, называются процедурными, и главное внимание в них уделяется построению подпрограмм (процедур).

Структура процедуры и функции

первое поколение (1975—1980 гг.) — на базе 8-разрядного МП - student2.ru первое поколение (1975—1980 гг.) — на базе 8-разрядного МП - student2.ru

Модульноепрограммирование

В модульном программирование основные акценты переносятся на построение модулей и их взаимодействию в программе.

Модуль – это множество взаимосвязанных подпрограмм (процедур) вместе с данными, которые эти процедуры обрабатывают.

Основная цель этого направления состоит в скрытии данных в модулях, что не позволяет обратиться к ним из-за пределов модуля.

Основная задача модульного программирования

Организация данных, а не алгоритмов – это основная задача модульного программирования

При создании ПО необходимо определить все модули, которые будут использоваться, и разделить программу на модули так, чтобы ее данные были скрыты в этих модулях.

Модуль – это самостоятельная часть программы, которая разрабатывается одним программистом, например.

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

Язык МODULA2 был специально сконструирован для поддержки модульного программирования.

Языки С++, С# не были специально для этого созданы, однако реализованная в них концепция классов, позволила работать с модулями. Эти языки содержат все необходимое для поддержки как процедурного, так и модульного программирования. Эти направления дополняют друг друга, а не исключают.

Объектно-ориентированное программирование

Программа представляется в виде набора объектов, взаимодействующих между собой посредством сообщений.

Объект = данные + процедуры

Объект – совокупность свойств (структур данных, характерных для этого объекта), методов их обработки (подпрограмм изменения свойств) и событий, на которые данный объект может реагировать и которые приводят, как правило, к изменению свойств объекта.

Основные понятия ООП

Для описания объектов служат классы. Класс определяет свойства и методы объекта, принадлежащего этому классу. Соответственно, любой объект можно определить как экземпляр класса.

Важнейшая характеристика класса – возможность создания на его основе новых классов с наследованием всех его свойств и методов и добавлением собственных. Класс, не имеющий предшественника, называется базовым.

Полиморфизм – возможность использования методов с одинаковыми именами для обработки данных разных типов.

Наши рекомендации