Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Документ Microsoft Office Word (8).docx
Скачиваний:
4
Добавлен:
26.04.2019
Размер:
197.58 Кб
Скачать

1Sum (начинается с цифры); (заглавные и строчные буквы не

СУМ1 (рус.); различает; рус. недопустимы)

  • Переменные могут менять значения в пределах своего типа.

Пример описания переменных:

Var a, b, c, x1 : REAL;

{служебное слово, список переменных, тип}

  • Стандартные функции (встроены в Паскаль):

  • ABS(x) – абсолютное значение (модуль) Х,

  • EXP(x) = ех,

  • SQR(x) – квадрат Х,

  • SQRT(x) – квадратный корень Х,

  • RANDOM – генератор случайных чисел от 0 до 1,

  • RANDOM(N) – генератор случайных чисел от 0 до N (целых),

и др. (см. методичку, стр.13 ).

5) Операции

  • Математические: +,-,*, / , div - целочисленное деление, mod - остаток от целочисленного деления. Пример: 14 div 4 =3; 14 mod 4 =2;

Возведение в степень в Паскале: ав = ехр(в*ln(a)).

  • Операции сравнения =, <>, >, <, <=, >=.

Если тип Real или Integer – сравнение по математическим правилам. - Для логического типа (Boolean) True>False.

Для типа Char (символьный) сравниваются коды символов (ASCII).

  • Логические операции (элементарные операции И, ИЛИ, НЕ).

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

  • Примеры операторов

  • Схемы алгоритмов

а) цикл со счетчиком б) цикл с предусловием в) цикл с постусловием

  • 7) Массивы

  • Массив- фиксированная последовательность однотипных элементов, имеющая имя .

  • Пример одномерного массива: V1 = (3 2 15 5 1 11 8 7 4 1);

  • описание 1-мерного массива: V1: array [1..10] of integer,

где: V1 – имя массива (идентификатор);

Array …оf – служебные слова;

[1..10] – список индексных типов (номеров элементов массива);

Integer – тип элементов массива;

  • Действия с элементами массива: Х[1]:= V1[3] +V1[6];

  • Пример двумерного массива: Описание 2-мерного массива:

А: array [1..3, 1..2] of integer

  • б) ввод и вывод элементов массива с применением циклов

Program M2;

Var

A : Array [1..20] Of Integer;

i : Integer;

Begin

For i:=1 To 20 Do {Организуем цикл с параметром i по всем возможным} Readln(A[i]); {значениям индексов и вводим A[i] с клавиатуры } For i:=20 Downto 1 Do {Распечатываем массив в обратном порядке} Write(A[i],’ ')

  • End.

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

  • Языки программирования

  • Мы осваиваем язык Паскаль, но есть и другие языки программирования

  • Язык программирования - формальная знаковая система, предназначенная для описания данных (информации) и алгоритмов их обработки.

  • Если язык близок к естественному языку, то он называется языком высокого уровня, если ближе к машинным командам, – языком низкого уровня (машинные языки и языки символического кодирования: Автокод, Ассемблер). Языки низкого уровня ориентированы на определенный тип компьютера, т. е. машинно–зависимы.

Поколения языков программирования:

  • Первое - машинные языки (запись всех команд «в нулях и единицах»).

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

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

  • Поколения языков (продолжение)

  • Третье поколение -языки высокого уровня, машинно-независимые. Отличаются использованием укрупненных команд (языковых конструкций высокого уровня), и ориентированы на человека. ( Например, FORTRAN – Formula Traslator- конец 60-х годов 20-го века, Бейсик, Кобол, Си и Паскаль).

  • Четвертое поколение: усовершенствованные языки, разработанные для создания специальных прикладных программ, для управления базами данных.

  • Пятое поколение: языки декларативные, объектно–ориентированные и визуальные. Например, Пролог, ЛИСП (используется для построения программ с использованием методов искусственного интеллекта), Си++, Visual Basic, Delphi

  • Для перевода программ с языка высокого уровня на машинный язык создаются программы трансляторы (переводчики). Транслятор напоминает программу на ассемблере.

  • Трансляторы реализуются в виде компиляторов или интерпретаторов.

  • Особенности компиляторов и интерпретаторов

  • Компилятор (собиратель) читает всю программу целиком, делает ее законченный перевод на машинный язык, затем программа выполняется.

  • Интерпретатор (истолкователь) переводит и выполняет программу последовательно строка за строкой.

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

  • Откомпилированные программы работают быстрее.

  • Интерпретируемые проще исправлять, изменять, они занимают меньше места.

  • 1 Программное обеспечение (Software)

  • Операционная система (ОС) - это комплекс программ, управляющий ресурсами ЭВМ и процессами, использующими эти ресурсы.

MS DOS, Unix (Linux), Windows

  • ОС загружается при включении компьютера и постоянно (резидентно) находится в оперативной памяти.

ОС может быть:

  • однозадачной (DOS) и многозадачной (Windows) – может выполнять несколько задач одновременно;

  • однопользовательской (W98) и многопользовательской (WNT) – обслуживает группу пользователей.

  • Сетевые системы – программы, обеспечивающие работу компьютерных сетей.

  • Драйвер – это программа, управляющая работой конкретного устройства ПК.

  • Программы-оболочки – предоставляют пользователю более удобный и наглядный интерфейс общения с компьютером, чем средства ОС (FAR, Norton Commander)

  • Функции операционной системы

  • диалог с пользователем;

  • ввод-вывод и управление данными;

  • планирование и организация обработки программ;

  • распределение ресурсов ЭВМ;

  • запуск программ на выполнение;

  • вспомогательные операции обслуживания;

  • передача информации между внутренними устройствами;

  • поддержка работы периферийных устройств (дисплея, клавиатуры, дисковых накопителей, принтера и др.).

  • Ядро ОС приводит компьютер в рабочее состояние. Компоненты ядра :

  • драйвер файловой системы – (программа управления файлами);

  • драйверы устройств – (программы, взаимодействующие с контроллерами периферийных устройств или с самими устройствами);

  • программа управления оперативной памятью (находит области для загружаемых программ);

  • программа-планировщик – определяет последовательность выполнения программных действий;

  • программа-диспетчер – контролирует распределение времени на выполнение программных действий.

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

  • Уровни программного обеспечения

  • Базовое ПО содержится в базовом аппаратном обеспечении (в ПЗУ, образуя BIOS), не изменяется во время эксплуатации.

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

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

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

  • Прикладное ПО –решает задачи пользователя.

  • Системы программирования

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

  • Система программирования включает:

+ библиотека подпрограмм, + Help.

  • Выделяют два вида трансляторов: интерпретаторы и компиляторы .

  • Интерпретатор переводит на язык машинных кодов поочередно каждый оператор исходной программы, проверяет правильность записи оператора и немедленно выполняет его.

  • Компилятор переводит на машинный язык всю исходную программу за один прием.

  • Этапы разработки программ

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

  2. Анализ задачи. Определяются диапазоны значений входных и выходных данных. Составляется формализованное описание задачи (математическая модель).

  3. Разработка алгоритма. Должен давать правильные результаты для любых допустимых исходных данных.

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

  5. Кодирование программы. - Запись алгоритма на языке программирования.

  • Этапы разработки программ (продолжение)

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

Тестирование выявляет ошибки, но не гарантирует их отсутствие. Гарантировать отсутствие ошибок может только анализ правильности алгоритмов и программ.

  1. Интерпретация результатов (толкование). – Это результат анализа (например, сравнения с результатами эксперимента).

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

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

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

  • 2 Парадигмы программирования

  • Паради́гма программи́рования — это совокупность идей и понятий, определяющая стиль написания программ.

По парадигмам (или подходам к программированию) языки условно делят на следующие группы:

  • Кратко о парадигмах программирования

  • В императивном программировании программа описывается как последовательность действий.

  • В декларативном (функциональном) программировании программа представляется в виде выражения и множества определений функций.

  • В объектно-ориентированном программировании программу принято рассматривать как набор взаимодействующих объектов.

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

  • 3 Моделирование и формализация

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

  • Моделирование – это создание и исследование модели с целью определения или уточнения характеристик оригинала.

  • Таким образом, моделирование – это изучение объекта путем создания и исследования его копии, замещающей объект с определенных сторон, интересующих исследователя.

  • Объект исследования в теории моделирования обычно рассматривается как система. Система — это совокупность взаимосвязанных элементов, объединенных для достижения некоторой цели. Элемент системы — это объект, рассматриваемый как неделимое целое.

Модели классифицируют :

  • по области использования;

  • по учету в модели времени (динамики);

  • по отраслям знаний;

  • по способам представления (реализации) моделей и др.

  • Классификация моделей по способу реализации

Материальные (предметные) модели

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

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

c) аналоговые, воспроизводят характеристики оригинала в объекте другой природы (аналог распространения тепла - электрический ток).

Информационные модели (абстрактные, нематериальные)

В зависимости от средств, которыми выражена информация, делят на вербальные, образные и знаковые.

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

  • Образные модели представляют собой зрительные образы объектов, зафиксированные на каком-либо носителе информации (бумаге, фото- и кинопленке и др.). Рисунки, фотографии, учебные плакаты - это образные информационные модели.

  • Знаковая модель — информационная модель, выраженная средствами любого формального языка (с использованием различных знаковых систем). Знаковая модель может быть представлена в форме текста (например, описания результатов эксперимента, программы на языке программирования), формулы (например, второго закона Ньютона F = m * а), таблицы (например, периодической таблицы элементов Д. И. Менделеева). К знаковым моделям относят также графики, схемы, специальные знаки (например, дорожные).

Подвиды знаковых моделей

В зависимости от используемой знаковой системы выделяют:

  • геометрические модели — графические формы и объемные конструкции;

  • описательные модели —описания объекта на естественном языке;

  • математические модели — математические выражения, отображающие связь различных параметров объекта или процесса;

  • структурные модели — схемы, графики, таблицы и т. п.;

  • логические модели — модели, в которых представлены различные варианты выбора действий на основе умозаключений и анализа условий;

  • специальные модели — ноты, химические формулы.

  • Формализация

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

Например, гелиоцентрическая модель мира Коперника:

  • Земля вращается вокруг своей оси и вокруг Солнца;

  • орбиты всех планет проходят вокруг Солнца.

  • С помощью формальных языков строятся формальные информационные модели (математические, логические и др.).

Процесс построения информационных моделей с помощью формальных языков называется формализацией.

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

  • Классификация моделей с учетом фактора времени

По отношению ко времени модели делят на статические и динамические.

  • Статическая модель описывает систему в определенный момент времени. Например, средний балл студента на момент окончания вуза.

  • Динамическая модель позволяет увидеть изменения системы во времени. Например, результаты всех сессий за время учебы, отраженные в зачетной книжке, можно считать динамической моделью процесса обучения.

  • Один и тот же объект можно изучать, применяя разные модели, например, статическую и динамическую.

  • Типы информационных моделей

- отражают различия в структуре моделируемых объектов.

  • В табличной модели перечень однотипных объектов или свойств размещен в первом столбце таблицы, а значения их свойств - в следующих столбцах (Пример – Excel).

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

  • Сетевые информационные модели применяются для отражения систем со сложной структурой, в которых связи между элементами имеют произвольный характер.

  • Примеры иерархической и сетевой моделей

  • Ядром базы данных является модель представления данных. Базы данных могут реализовывать иерархическую, сетевую и реляционную модели (или структуры) данных. Иерархическая представляет связи между объектами (данными) в виде дерева (рис. 1).

  • Рис.1. Иерархическая структура Рис.2 Сетевая структура

  • Объект первого уровня называют «предком» для объектов второго уровня, а объекты второго уровня – «потомками» связанных с ними объектов предыдущего уровня. Сетевая (рис. 2) отличается тем, что «ветви» дерева «пересекаются», «срастаются». При сетевой структуре у «потомка» может быть несколько «предков», а при иерархической – только один.

  • Пример реляционной (табличной) модели представления данных

  • Реляционная модель данных организована в виде связанных двумерных таблиц. Она может описывать иерархическую и сетевую структуры.

  • Пример модели, состоящей из трех таблиц:

Структурная схема базы данных

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

  • Основные этапы разработки и исследования модели

Дополнения

  • Описание основных парадигм

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

Используются три базовых структуры: следование, ветвление и цикл. Можно использовать блок-схемы программ. Фрагменты задачи оформляются как модули. Задача разбивается на подзадачи. Преимущества: возможность создания программы несколькими программистами, простота проектирования изменения и отладки.

Примеры: Fortran, Algol, Pascal, Basic; C(операционный, имеет средства прямого обращения к узлам компьютера.)

  • 2) Декларативная парадигма: создается общий алгоритм (общая форма) решения задачи. Программист описывает свойства исходных данных, их взаимосвязи, свойства, которыми должен обладать результат. Алгоритм должен порождаться автоматически системой программирования.

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

  • продолжение

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

  • 4) Объектно-ориентированная парадигма. Её основная идея - объединение в одной структуре данных и методов их обработки. Программа, выполняя предоставленные процедуры, обеспечивает обработку данными самих себя. Примеры: Visual Basic, C++, Delphy, Java.

  • Основные понятия:

  • Инкапсуляция – комбинирование данных с методами (получается новый тип данных – объект).

  • Наследование - «наследник» наследует описание данных «прародителя» и доступ к методам его обработки.

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

  • Классы объектов - это шаблоны, определяющие свойства, методы и события объектов.

При визуальном программировании программы создают из готовых блоков.

  • Разработка программного обеспечения

  • Жизненный цикл ПО

  • Общие требования к ПО:

  • Требование к точности, характеризует

степень совпадения результата выполнения

программы с идеальным;

  • -“- универсальности, характеризует

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

  • -“- адекватности, характеризует способность программы приводить к результату с погрешностью не выше заданной;

  • -”- экономичности, характеризует затраты вычислительных ресурсов на исполнение программы, например, машинного времени, памяти.

  • Тенденции совершенствования методов проектирования ПО

  • Использование CASE–технологий (Computed Aided Software Engineering), которые включают автоматизированные средства планирования, управления, отладки, документирования и разработки интерфейсов.

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

  • Виды отладки программ

  • синтаксическая отладка - проверка соблюдения правил построения фраз;

  • семантическая отладка - проверка однозначного толкования каждой языковой конструкции;

  • отладка логической структуры - проверка и оптимизация логики.

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

Методы тестирования (испытания) ПО:

  • Метод, основанный на принципе Парето: «Ошибки имеют тенденцию к группированию». То есть, в крупной программе всегда существуют проблематичные модули.

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

  • Тестирование по принципу «черного ящика». Анализируется не сам процесс работы, а то, насколько правильные результаты выдает программа.

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

  • Что моделируется? Процесс движения объекта «автомобиль»

  • Вид движения Равноускоренное

  • Что известно о движении? Начальная скорость (v0), ускорение (а),

максимальная скорость (vmax)

  • Что надо найти? Скорость (vj) в заданные моменты времени (ti) v=v0+at2/2

  • Как задаются моменты времени От нуля через равные интервалы (t2-t1)

  • Что ограничивает расчеты? vi < vmax

  • Какие характеристики объекта несущественны для данной цели моделирования? Цвет, тип кузова, год выпуска, общий пробег, степень изношенности шин и т.п.

  • В моделировании используется, также, понятие

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

  • Отличие эксперимента от реально протекающего процесса заключается в том, что при эксперименте могут появляться критические ситуации и определяться границы устойчивости процесса.

  • Изображение информационной модели в форме графа

  • Граф является удобным способом наглядного представления структуры информационных моделей. Вершины графа (овалы) отображают элементы системы.

  • Элементы верхнего уровня находятся в отношении "состоять из" к элементам более низкого уровня. Такая связь между элементами отображается в форме дуги графа (направленной линии в форме стрелки). Графы, в которых связи между объектами несимметричны (как в данном случае), называются ориентированными.

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

Машинное моделирование человеческого разума - «искусственный интеллект» - развивается в двух направлениях.

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

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

Погрешности моделирования

Погрешности моделирования могут быть связаны:

а) с упрощением моделируемого объекта,

б) с преобразованием математической модели в дискретную форму,

в) с ошибками округления (усечения) и переполнения при использовании ЭВМ,

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

  • Вычислительный эксперимент

  • Это метод исследований, основанный на

построении и анализе математических

моделей с помощью ЭВМ.

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

Причины погрешностей:

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

  • Приближенное воспроизведение математической модели в дискретном виде.

  • Ошибки округления (усечения) и переполнения.

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

История развития аппаратного обеспечения вычислительных процессов

Совершенствование вычислительной техники привело к созданию ЭВМ, способных обрабатывать информацию любого вида.

Классификация компьютеров по элементной базе

(по этапам развития или поколениям):

Первое поколение - машины на электронных лампах (начало 50-х годов). Программы писались на языке конкретной машины. Требовалась долгая отладка (Стрела, Урал, М–20).

Второе поколение (1955–65 гг.) – ЭВМ на транзисторах. Программная несовместимость машин затрудняла организацию крупных информационных систем (БЭСМ).

Третье поколение (конец 60-х годов) с использованием интегральных схем (микросхем). Это семейства машин с единой архитектурой, т.е. программно совместимых (IBM-360, ЕС ЭВМ, СМ ).

Четвёртое – (нынешнее поколение), использующее большие интегральные схемы (микропроцессоры). – Разработано после 1970 года (персональные компьютеры, многопроцессорные и многомашинные комплексы).

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

  • Цифровые компьютеры обрабатывают данные в виде двоичных чисел.

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

По условиям эксплуатации компьютеры делятся на: офисные (универсальные) и специальные.

  • Офисные работают при нормальных условиях эксплуатации.

  • Специальные - решают узкий класс задач (м.б одну) в особых условиях эксплуатации. Например, управляют технологическими установками, работают на ракетах, автомобилях.

По производительности и характеру использования компьютеры делят на:

  • микрокомпьютеры, в том числе – персональные компьютеры;

  • мэйнфреймы (универсальные компьютеры для 200-300 рабочих мест);

  • Суперкомпьютеры (разрабатывают под конкретную задачу).

Централизованная обработка данных на мэйнфрейме обходится примерно в 5-6 раз дешевле, чем распределённая обработка при клиент-серверном подходе.

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

Пример: суперкомпьютер среднего класса содержит 9200 процессоров, в сумме обеспечивающих производительность 1012 операций в секунду, имеет 537 Гбайт памяти и диски ёмкостью 2,25 Терабайт. Система весит 44 тонны (кондиционеры для неё –300 тонн) и потребляет мощность 850 кВт.

Основные разновидности портативных компьютеров:

Laptop (наколенник), Palmtop (наладонник), Notebook (блокнот).

Принципы построения компьютера (по фон Нейману)

  • 1) Принцип двоичного кодирования: вся информация, поступающая в ЭВМ, кодируется в двоичной системе счисления.

  • 2) Принцип программного управления: программа состоит из набора команд, которые выполняются процессором автоматически друг за другом в определенной последовательности (без вмешательства человека).

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

  • 4) Принцип адресности. Структурно основная память состоит из перенумерованных ячеек; процессору в произвольный момент времени доступна любая ячейка. Поэтому есть возможность давать имена областям памяти и обращаться к ним по именам в процессе выполнения программы.

  • Компьютеры, построенные на перечисленных принципах, относятся к типу фон–неймановских. Для не фон–неймановских перечисленные принципы могут не выполняться. Например, принцип однородности памяти, или принцип программного управления.

Общая схема компьютера

  • Основу компьютера образует аппаратура (HardWare). Принцип действия компьютера состоит в выполнении программ (SoftWare) – заранее заданных последовательностей операций.

Согласно модели фон Неймана, в состав ЭВМ входят три основных устройства:

  • арифметико-логическое устройство (АЛУ) и устройство управления (УУ);

  • запоминающее устройство (ЗУ);

  • устройства ввода-вывода;

Эти устройства соединены каналами связи, по которым передается информация: