46088 (630405), страница 2
Текст из файла (страница 2)
Наиболее распространенными системами объектно-ориентированного визуального программирования являются Microsoft Visual Basic и Borland Delphi. Катализатором широкого распространения объектно-ориентированного программирования стала технология World Wide Web. Практически все новейшие разработки для этой системы выполняются с помощью объектно-ориентированных языков (например, языка Java).
Объект — элементарная единица в объектно-ориентированном программировании, заключающая в себе как описывающие объект данные, так и средства обработки этих данных.
Класс — обобщенное описание набора объектов, обладающих некоторыми одинаковыми методами и структурами данных.
Подкласс — более подробное описание, относящееся к какому-либо специализированному подмножеству набора объектов, описанного классом. Иногда подклассы называют также производными или дочерними классами.
Наследование — механизм автоматического включения в состав различных классов, подклассов и объектов одних и тех же методов и структур данных.
Билет № 2
Основные характеристики (разрядность, адресное пространство и др.) процессора компьютера.
Процессор компьютера предназначен для обработки информации. Каждый процессор имеет определенный набор базовых операций (команд), например, одной из таких операций является операция сложения двоичных чисел.
Технически процессор реализуется на большой интегральной схеме, структура которой постоянно усложняется, и количество функциональных элементов (типа диод или транзистор) на ней постоянно возрастает (от 30 тысяч в процессоре 8086 до 5 миллионов в процессоре Pentium II).
Важнейшей характеристикой процессора, определяющей его быстродействие, является его тактовая частота. От нее, в частности, зависит количество базовых операций, которые производит процессор в секунду. За 20 лет тактовая частота процессора увеличилась почти на два порядка от 4 МГц (процессор 8086, 1978 г.) до 300 МГц (процессор Pentium II, 1997 г.).
Другой характеристикой процессора, влияющей на его производительность, является разрядность. В общем случае производительность процессора тем выше, чем больше его разрядность. В настоящее время используются 8-, 16-, 32- и 64-разрядные процессоры, причем практически все современные программы рассчитаны на 32- и 64-разрядные процессоры.
Часто уточняют разрядность процессора и пишут, например, 16/20, что означает, что процессор имеет 16-разрядную шину данных и 20-разрядную шину адреса. Разрядность адресной шины определяет адресное пространство процессора, т. е. максимальный объем оперативной памяти, который может быть установлен в компьютере.
В первом отечественном персональном компьютере «Агат» (1985 г.) был установлен процессор, имевший разрядность 8/16, соответственно его адресное пространство составляло 64 Кб. Современный процессор Pentium II имеет разрядность 64/32, т. е. его адресное пространство составляет 4 Гб.
Производительность процессора является интегральной характеристикой, которая зависит от частоты процессора, его разрядности, а также особенностей архитектуры (наличие кэш-памяти и др.). Производительность процессора нельзя вычислить, она определяется в процессе тестирования, т. е. определения скорости выполнения процессором определенных операций в какой-либо программной среде.
Увеличение производительности процессоров может достигаться различными путями. В частности, за счет введения дополнительных базовых операций. Так, в процессорах Pentium ММХ достигается большая производительность при работе с мультимедиа-приложениями (программами для обработки графики, видео и звука).
| Тип процессора | Частота (МГц) | Разрядность шины данных | Разрядность шины адреса | Адресное пространство |
| 8086 | 4—12 | 16 | 20 | 1Мб |
| 80286 | 8—20 | 16 | 24 | 16Мб |
| 80386 | 25—40 | 32 | 32 | 4Г6 |
| 80486 | 33—100 | 32 | 32 | 4Г6 |
| Pentium | 75—200 | 64 | 32 | 4Г6 |
| Pentium II | 200—300 | 64 | 32 | 4Г6 |
Системы программирования. Интерпретация и компиляция.
Имеются два основных подхода к реализации языков программирования: компиляция и интерпретация. Компилятор переводит программу на языке программирования в машинный код (последовательность команд и данных) конкретного компьютера, на котором будет выполняться программа.
Исполнение этого кода осуществляется под управлением операционной системы и никак не зависит от компилятора. Интерпретатор же является собственно той системой, которая исполняет программу на языке программирования.
Между этими двумя подходами имеется множество промежуточных вариантов: существуют компиляторы, которые компилируют в интерактивном режиме, во время ввода программы. Существуют интерпретаторы, которые компилируют программу в промежуточный код.
Вообще говоря, код, полученный компилятором, будет более эффективным, т. е. программа будет выполняться быстрее. Но полное время, затраченное на проектирование, ввод текста и запуск на выполнение для компилирующей системы, может быть больше, чем для интерпретирующей. Кроме того, компилятор может точно указать место лишь синтаксической ошибки; если же ошибка другого рода, то компилятор может предложить лишь сгенерированный код для определения места вероятной ошибки. Интерпретатор же покажет ошибку в исходном тексте программы.
В самом языке программирования, вообще говоря, не заложен способ его реализации, однако одни языки почти всегда компилируются, например C++, другие, например Smalltalk, почти всегда интерпретируются, Java компилируется в байт-код и затем интерпретируется.
Сейчас практически любая реализация языка представлена как среда разработки, которая включает:
1) компилятор (или интерпретатор);
2) отладчик — специальную программу, которая облегчает процесс поиска ошибок; пользуясь ею, разработчик может выполнять программу «по шагам», отслеживать изменение значений переменных в процессе выполнения и др.;
3) встроенный текстовый редактор;
4) специальные средства для просмотра структуры программы, классов, модулей и проч.;
5) библиотеку готовых модулей, классов, напри-Q для создания пользовательского интерфейса (окна, кнопки и т. д.).
В 80-е годы активно прорабатывалась идея визуального программирования, основной смысл которой состоит в том, чтобы процесс «сборки» программы осуществлялся на экране дисплея из программных конструкций — картинок. В результате появились среды разработки 4-го поколения (4GL), в которых разрабатываемый программный продукт строится из готовых крупных блоков при помощи мыши. Примерами таких сред являются: Delphi, Visual Age, Visual Java.
Билет № 3
Организация и основные характеристики памяти компьютера.
Большое количество программ и данных, необходимых пользователю, долговременно хранятся во внешней памяти компьютера (на гибких и жестких магнитных дисках, CD-ROM и др.). В оперативную память компьютера загружаются те программы и данные, которые необходимы в данный момент.
По мере усложнения программ и увеличения их функций, а также появления мультимедиа-приложений растет информационный объем программ и данных. Если в середине 80-х годов обычный объем программ и данных составлял десятки и лишь иногда сотни килобайт, то в середине 90-х годов он стал составлять мегабайты и десятки мегабайт. Соответственно растет объем оперативной памяти. В школьном компьютере БК-0010 (1986 г.) объем оперативной памяти составлял 64 Кб, в современных персональных компьютерах он обычно составляет 16 Мбайт и более.
Логически оперативная память разделена на ячейки объемом 1 байт. Соответственно оперативная память 64 Кб содержит 65 536 ячеек, а память 16 Мб содержит 16 777 216 ячеек.
Каждая ячейка имеет свой уникальный двоичный адрес. При необходимости проведения операции считывания/записи данных из данной ячейки адрес ячейки передается от процессора к оперативной памяти по адресной шине.
Разрядность шины адреса определяет объем адресуемой памяти процессора и, соответственно, максимальный объем оперативной памяти, которую можно непосредственно использовать. Разрядность шины адреса у большинства современных персональных компьютеров составляет 32 разряда, т. е. максимальный объем оперативной памяти может составлять 232 == 4 Гб.
Величина аппаратно установленной оперативной памяти в современных рабочих станциях обычно составляет 16 или 32 Мб, а в серверах 64 или 128 Мб. Таким образом, имеется возможность наращивания объема оперативной памяти компьютеров без увеличения разрядности шины адреса процессора.
Физически оперативная память изготавливается в виде БИС (больших интегральных схем) различных типов (SIMM, DIMM), имеющих различную информационную емкость (1, 4, 8, 16, 32 Мб). Различные системные платы имеют различные наборы разъемов для модулей оперативной памяти.
Модули оперативной памяти характеризуются временем доступа к информации (считывания/записи данных). В современных модулях типа SIMM время доступа обычно составляет 60 нс, в. модулях типа DIMM — 10нс.
Различные операционные системы используют различные способы организации оперативной памяти. В школьных компьютерах с 16-разрядной шиной адреса и, соответственно, максимально с 64 Кб адресуемой памяти («Агат», «YAMAHA») реализовывался принцип поочередного (так называемого постраничного) подключения дополнительных блоков физической памяти к адресному пространству процессора.
Таким образом, удавалось увеличить объём оперативной памяти таких компьютеров до 128 Кб и более.
Операционная система MS-DOS создает сложную логическую структуру оперативной памяти:
-
основная (conventional) память занимает адресное пространство от 0 до 640 Кб, в нее загружаются операционная система, программы и данные;
-
верхняя память (UMB — Upper Memory Blocks) занимает адресное пространство от 640 Кб до 1 Мб, в нее могут быть загружены драйверы устройств;
-
высокая (high) память начинается после 1 Мб и имеет объем 64 Кб, в нее может быть частично загружена операционная система;
-
память, которая располагается в адресном пространстве «выше» высокой памяти, может использоваться в качестве расширенной памяти или дополнительной памяти; однако память остается недоступной для программ и данных.
Таким образом, под управлением операционной системы MS-DOS аппаратно установленная оперативная память используется очень нерационально. Этот недостаток преодолен в операционной системе Windows, в которой используется простая неструктурированная модель памяти и вся память доступна для загрузки программ и данных.
2. Технология алгоритмического программирования. Основные структуры и средства языка программирования (операторы, функции, процедуры).
Технология алгоритмического программирования базируется на методе последовательной детализации алгоритмов. Сначала формулируется основной алгоритм, который состоит из «крупных» блоков (команд), часть которых может быть непонятна исполнителю (не входит в его систему команд). В этом случае они записываются как вызовы вспомогательных алгоритмов. Затем происходит детализация, т. е. все вспомогательные алгоритмы подробно расписываются с использованием команд, понятных исполнителю.
Как основной алгоритм, так и вспомогательные алгоритмы могут включать основные алгоритмические структуры: линейную, разветвляющуюся и циклическую. В линейной алгоритмической структуре все команды выполняются в линейной последовательности, одна за другой.
В разветвляющиеся алгоритмы входит условие, в зависимости от выполнения или невыполнения которого выполняется та или иная последовательность команд (серий).
В циклические алгоритмы входит последовательность команд, выполняемая многократно. Такая последовательность команд называется телом цикла.
Линейный | |
| Ветвление | |
| Цикл | |
Алгоритмы могут быть описаны различными способами:
-
записаны на естественном языке;
-
изображены в виде блок-схемы;
-
записаны на алгоритмическом языке;
-
закодированы на языке программирования.
Для кодирования алгоритма на языке программирования необходимо знать синтаксис языка, т. е. его основные операторы, типы переменных и др. В школе знакомятся в основном с языком программирования Бейсик.
Язык программирования Basic (Beginner's All-purpose Symbolic Instruction Code — многоцелевой язык для начинающих) был разработан в 1964 году. Языки программирования, в том числе и Basic, развиваются, обогащаются новыми возможностями, и в результате возникают различные версии языка (Бейсик-Агат, MSX-Basic, QBasic, VisualBasic).
Команды и различные типы алгоритмических структур реализуются на языке программирования с помощью операторов. Каждый оператор имеет свой формат.
| Команда | Формат оператора |
| Ввод данных | INPUT |
| Команда | |
| Присваивание | LET = |
| Команда ветвления | IF THEN ELSE |
| Команда цикла | FOR FROM <арифметическое выражение> ТО <арифметическое выражение> |
| NEXT |
В формат операторов, кроме ключевых слов, входят переменные и арифметические выражения. Переменные бывают различных типов, тип переменной определяет, какие значения может принимать эта переменная. В Бейсике переменные могут быть следующих типов: целые (А% = 5), вещественные (А = 3.14), символьные (А$ = "информатика") и массивы DIM А(М, N). Массивы представляют собой одномерные или двумерные таблицы.















