Logo GenDocs.ru

Поиск по сайту:  


Загрузка...

Лекции - Информатика - файл Лекции 2 семестр.doc


Загрузка...
Лекции - Информатика
скачать (917.8 kb.)

Доступные файлы (2):

Лекции 1семестр.doc2271kb.06.12.2004 04:00скачать
Лекции 2 семестр.doc795kb.11.06.2005 11:59скачать

Лекции 2 семестр.doc

  1   2   3   4   5
Реклама MarketGid:
Загрузка...
Лекции (черновики).
Как известно для решения некоторой задачи необходимо построить алгоритм, то есть конечную последовательность действий по обработке исходных данных и приводящую к некоторому результату. Написать программу в машинном коде довольно сложное и кропотливое дело и чем труднее и объёмнее задача, тем больше возрастает трудоёмкость программирования. Языки программирования позволяют представить алгоритм в понятной для микропроцессора форме. Алгоритмическим языком программирования называется набор символов с заданными правилами образования из этих символов конструкций, с помощью которых описывается порядок выполнения алгоритма. Алгоритмические языки упрощают процесс разработки программ. Современные языки программирования позволяют решать широкий круг задач, но в определённых случаях предпочтительнее использовать специализированные языки программирования.

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

Трансляторы подразделяются на два вида: компиляторы и интерпретаторы. Компилятор преобразует исходный текст программы в исполняемую форму и сохраняет его на внешнем запоминающем устройстве в виде исполняемого модуля (файл с расширением *.EXE). После трансляции исполняемый файл можно отправлять на исполнение самостоятельно. Процесс компиляции на самом деле состоит из двух частей – компиляция и компоновка. После компиляции получается объектный код (это машинный код, не привязанный к конкретным адресам памяти ЭВМ). Компоновка из объектного кода получает исполняемый машинный код.

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

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

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

На сегодняшний день существует большое количество языков программирования. Они подразделяются на языки программирования низкого и высокого уровней, а также специализированные языки программирования (баз данных, скриптязыки). Терминология "низкий уровень" означает близость операторов языка к машинному коду. Наиболее используемый и популярный язык низкого уровня ассемблер. Каждый оператор языка представляет в виде мнемокодов команду микропроцессора, поэтому этот язык программирования называют машинноориентированным. Для каждого типа микропроцессора создаётся свой ассемблер, поддерживающий все его команды. При помощи языков низкого уровня создаются компактные и быстродействующие программы, однако, они зачастую привязаны к определённому виду архитектуры компьютера.

Терминология "высокий уровень" означает, что язык программирования приближен к мышлению человека. В них не учитываются особенности архитектуры конкретной модели компьютера, поэтому разрабатываемые программы легко переносятся на другие платформы. Разнообразие языков программирования обусловлено их специфическими особенностями и предназначением. Basic разработан в 60е годы как язык программирования для начинающих. Pascal, созданный в конце 70х для обучения программированию как систематической дисциплине. С для разработки программ системного назначения, обладающих преимуществами как языков программирования низкого уровня (компактность и эффективность разрабатываемых программ), так и преимуществами языков высокого уровня (независимость от машинных архитектур). Fortran первый компилируемый язык, созданный в 50е годы для научнотехнических расчётов. Cobol применяется для решения экономических задач. Приведённый перечень языков программирования высокого уровня не претендует на полноту, однако, наглядно показывает разнообразие и специфичность тех или иных языков программирования.

В конце 70х годов Никлаус Вирт, работавший доцентом на факультете информатики Стэндфордского университета, предложил язык Паскаль на конкурс по созданию нового языка программирования. В начале 80х, с появлением Turbo Pascal, произвёл переворот в программировании. Turbo Pascal объединил язык программирования с интегрированной средой разработки и отладки программ. Он, являясь продолжением языка ALGOL, положил основу таким языкам как Ada и Modul. Первая версия Turbo Pascal появилась в 1983 году и использовалась недолго. Через год вышла в свет вторая версия, получившая широкое распространение. В 1985 году вышла третья версия языка, удобная в эксплуатации и более быстродействующая. В четвертой версии появился встроенный компилятор, а в пятой встроенный отладчик. Разработанная в 1989 году версия 5.5, позволила перейти к поддержке объектноориентированной технологии программирования. Turbo Pascal 6.0 был расширен поддержкой многодокументного интерфейса, обладал встроенным ассемблером, что позволяло эффективно выполнять процедуры работы с устройствами компьютера на низком уровне. В 1992 году фирма Borland выпускает два пакета Borland Pascal 7.0 и Turbo Pascal 7.0. Эти пакеты позволяют не только использовать в разработке программ объектноориентированную методологию, но и разрабатывать приложения с поддержкой защищённого режима работы микропроцессора, а также создавать приложения для работы под популярную операционную среду "Windows". Дальнейшее своё продолжение Pascal получил в визуальной среде, поддерживающей технологию быстрой разработки приложений RAD (Rapid Application Development) Delphi. Delphi одно из наиболее распространённых в настоящий момент средств разработки программных продуктов, объединяющее средства визуального проектирования и объектный Pascal. Поскольку Pascal предназначен, в первую очередь, для изучения программирования как дисциплины, то многие профессиональные программисты начинали свой путь именно с изучения программирования на языке Pascal.
^ Интегрированная среда Turbo Pascal (Borland Pascal)
Для запуска Turbo Pascal необходимо активизировать каталог \TP\BIN\ и в командной строке указать turbo.exe. При необходимости открыть файлы с текстом программ можно указать их имена через пробелы. После запуска появится окно IDE Turbo Pascal, изображённое на рисунке 1.



^ Рис. 1 - IDE Turbo Pascal

Пункты главного меню IDE содержат все команды. Активизация главного меню выполняется нажатием клавиши F10, при этом один из пунктов выделяется зелёным маркером. Маркер может перемещаться по пунктам при помощи клавиш управления курсором ( ), тем самым, выбирая один из пунктов. Для отмены выбора пунктов достаточно нажать клавишу Esc. Эта клавиша также используется для закрытия диалоговых окон, выхода из подменю. Для инициализации одного из пунктов необходимо после активизации меню, выделить его и нажать клавишу Enter. При этом появляется соответствующее подменю с набором команд.

Центральное место занимает окно редактирования. В заголовке окна указывается имя редактируемого файла. Если это вновь создаваемый файл, то его имя NONAMEХХ.PAS, где ХХ - это порядковый номер нового файла (нумерация начинается с 00). В правом верхнем углу окна расположен номер активного окна и кнопка изменения режима отображения окна при помощи "мышки" (оконный или полноэкранный). Каждому вновь открываемому окну , присваивается следующий по порядку номер. Допускается открытие 99 окон. Переключение между первыми девятью окнами возможно при помощи комбинации клавиш Alt + <№ окна>, где <№ окна> - цифра от 1 до 9. Для активизации остальных окон необходимо пользоваться командой из пункта меню Window - List… Alt + 0 (будет рассмотрены ниже). В левом верхнем углу расположена кнопка закрытия окна при помощи "мышки" . В левом нижнем углу указываются номера строки и столбца, в которой расположен курсор. Полосы прокрутки облегчают пролистывание текста программы при помощи "мышки".

В строке статуса отражается состояние IDE при выполнении тех или иных операций. При работе с редактором IDE в строке статуса располагаются подсказка для наиболее используемых команд. F1 Help - вызывает контекстную помощь IDE. F2 Save - позволяет сохранить текст программы из активного окна редактирования на диске. F3 Open - служит для открытия файла с текстом программы для редактирования. Alt+F9 Compile - компилирует текст исходной программы из активного окна редактирования. F9 Make- позволяет перекомпилировать текст исходной программы из активного окна редактирования и используемые ей модули. Alt+F10 Local menu - вызывает локальное меню.
^ Главное меню Turbo Pascal
Пункт File.

Пункт меню File содержит команды для работы с файлами. На рис. 2 приведены команды данного пункта.



^ Рис.2 - Команды пункта меню File

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

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

Open… F3 - служит для вызова диалогового окна, открытия файла с текстом программы (см. рис. 3).



^ Рис.3 - Диалоговое окно открытия файла

В разделе Name можно ввести имя открываемого файла или выбрать его в разделе Files при помощи клавиш управления курсором. Для переключения между разделами диалоговых окон служит клавиша Tab. Внизу диалогового окна находится информационная строка, показывающая активный каталог, выделенный файл, его размер дату и время создания. После выделения файла или введения его имени нажатие кнопки Open приводит к открытию файла в новом окне редактирования. При нажатии на кнопку Replace файл открывается в активном окне. Команда Cancel во всех диалоговых окнах отменяет выполнение команды (можно использовать клавишу Esc). Help - служит для вызова справки по данному окну.

Save F2 - сохраняет на внешнем запоминающем устройстве внесённые в файл изменения в процессе редактирования. Если у файла нет имени (NONEMEXX.PAS), то вызывается диалоговое окно, позволяющее ввести имя и указать путь для сохраняемого файла.

Save as… - вызывается диалоговое окно, похожее на окно Open, позволяющее ввести новое имя и указать путь для сохраняемого файла.

Save all - сохраняет на диске изменения в файлах, находящихся в открытых окнах редактирования.

Change dir… - позволяет изменять рабочий каталог. Диалоговое окно представлено на рис.4.



^ Рис.4 - Диалоговое окно изменения рабочего каталога
Выбор каталога осуществляется нажатием Chdir. При необходимости вернуть исходное состояние нажимают клавишу Revert. После выбора необходимого каталога нажимается клавиша Ok.

Print - служит для вывода текста программы из активного окна редактирования на печатающее устройство.

Printer setup… - позволяет настроить печатающее устройство.

DOS shell - временный выход в DOS, возврат в IDE осуществляется выполнением команды Exit.

Exit Alt+X - завершение работы с IDE. Если в открытых окнах есть не сохраненный текст, то появляются информационные окна, запрашивающие подтверждение на сохранение измененного файла.
^ Пункт Edit.

Зачастую при редактировании текста программы возникает необходимость работы с отдельными блоками текста. Блок текста - это любой объем текста (начиная от одного символа), который выделен на экране. В каждый момент времени в окне может быть выделен только один блок. Выделение выполняется следующим образом:
      - курсор устанавливается в начало (конец), выделяемого блока;
      - при нажатой клавише Shift, клавишами управления курсора выделяемая область перемещается в конец (начало) блока.

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

      Меню Edit, представленное на рисунке 1.5 содержит команды управляющие редактированием.



Рисунок 1.5 - Меню Edit

      Undo Alt+Backspace - команда отмены действия предыдущей операции редактирования. Если несколько раз выполнять команду Undo, редактор продолжает отменять действия. Команда Undo вставляет все удаленные символы, удаляет любой вставленный символ, заменяет все перезаписанные символы и перемещает курсор обратно на предыдущую позицию. Если отменяется блочная операция, то файлы выводятся в том виде, в каком они были перед выполнением блочной операции. Команда Undo не изменяет установку параметров, влияющих более чем на одно окно. Параметр Group Undo в диалоговом окне Options|Enviroment| Editor влияет на поведение команды Undo и соответствующей команды Redo. При выборе параметра Group Undo (Групповая отмена), и нажатии клавиш Alt+Backspace или Edit|Undo, редактор изменяет последнюю группу команд. Под группой понимается последовательность команд одного типа.

      Redo - отменяет действие команды Undo.
      Cut Shift+Del - служит для вырезки выделенного блока, который удаляется из текста и помещается в буфер обмена (Clipboard) - временную область памяти.
      Copy Ctrl+Ins - служит для копирования выделенного текста в буфер обмена.
      Paste Shift+Ins - предназначена для вставки содержимого буфера обмена в активное окно, начиная с текущей позиции курсора.
      Clear Ctrl+Del - удаляет выделенный блок из текста программы. Восстановить удаленный текст можно при помощи команды Undo.

      На поведение в редакторе выделенных блоков влияют два параметра - Persistent Blocks и Overwrite Blocks. Они находятся в диалоговом окне Options|Enviroment|Editor. Если включен параметр Persistent Blocks, то выделенные блоки остаются выделенными, пока не удалиться или не отмениться выделение (или пока не выделен другой блок). Если параметр Persistent Blocks выключен, и курсор перемещён за выделенный блок, то выделение блока отменяется. При выключенном параметре Persistent Blocks, параметр Overwrite Blocks игнорируется. Если включен параметр Overwrite Block, и набирается символ, то выделенный блок заменяется набранным символом. Если параметр Overwrite Block включен, а параметр Persistent Block выключен, и нажимается клавиша Del или Backspace, то весь выделенный текст удаляется. Если вставляется текст (нажимая символ или вставляя его из буфера), то весь выделенный текст заменяется вставленным.

      Show clipboard - открывает окно с содержимым буфера обмена. Последний помещённый в него блок является выделенным.


^ 2. Введение в язык Паскаль. Структура программы на Паскале.
1) Из истории возникновения языка. Никлас Вирт. Обучение cтруктурному программированию.

2) Структура программы на Паскале. Пояснить кратко назначение каждого из блоков программы.

3) Изобразить программу, которая ничего не делает.
^ 3. Вывод сообщений на экран.

Составить традиционную программу <Здравствуй мир!>.

Program Hello;

begin

WriteLn('Здравствуй, мир!!!');

end.

Для этого требуется процедура вывода на экран. Это процедура Wtite.
Write('Сообщение1','Сообщение2',ИмяПеременной1,Выражение1,...);
Существует модификация процедуры Write --- процедура WriteLn
WriteLn('Сообщение1','Сообщение2',ИмяПеременной1,Выражение1,...);
Она отличается от Write тем, что после вывода на экран всех своих аргументов переводит курсор на следующую строку. Следующий вывод на экран будет осуществлён с начала следующей строки.
Например:

WriteLn('Дискриминант квадратного уравнения равен',b*b-4*a*c);

WriteLn('x1=',x1,' x2=',x2);
Допускается использование WriteLn без аргументов. Тогда вывода на экран не происходит, а курсор переводиться на следующую строку.
Подведем итог: процедуры Write и WriteLn выводят на экран информацию, указанную в аргументах. Всё, что заключено в апострофы выводится на экран без изменения. Аргументы без апострофов интерпретируются как имена переменных или выражения. На экран выводятся значения переменных и выражений.
^ 4. Этапы создания программы.
Этапы создания программы:

1) Подготовка текста программы.

2) Компиляция.

3) Компоновка.

4) Выполнение.
Лекция №4
Переменные, типы. Стандартные типы. Операции. Присваивание.
1. Идентификаторы.

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

Привести примеры правильных и неправильных идентификаторов!

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

Существуют стандартные предопределённые идентификаторы — это имена встроенных процедур и функций, типов и т.д. Переопределение стандартных имён допускается, но является дурным тоном, так как стандартное действие такого имени будет утеряно.

Идентификаторы не должны совпадать с зарезервированными словами языка, которые при редактировании текста программы выделяются цветом.
2. Метки.

Метки бывают двух разновидностей: числовые и символьные. Числовая метка представляет собой последовательность цифр в диапазоне от 0 до 9999. Незначащие нули не считаются. Символьная метка представляет собой идентификатор. Метка отделяется от оператора, который она помечает двоеточием (:). Метки описываются в разделе описания меток label, где перечисляются через запятую.
3. Числа.

В языке ТР используются целые десятичные числа, целые шестнадцатеричные числа и вещественные десятичные числа. Вещественные могут быть представлены в обычной и показательной формах записи. Целую и дробную часть разделяет точка. Шестнадцатеричные числа начинаются знаком доллара.
4. Строки.

Строка символов — это последовательность символов, заключённая в апострофы. Необходимо, чтобы вся последовательность располагалась в одной строке программы. Если в состав строки должен входить апостроф, его печатают дважды. В строку могут входить управляющие символы, которые начинаются знаком # с последующим указанием кода символа. Например, #7 — символ «звонок», #10 —символ «перевод строки», #13 — символ «возврат каретки». В принципе таким способом могут быть представлены и все остальные символы.
5. Комментарии.

Комментарием считается фрагмент текста программы, который начинается символом { или сочетанием символов (*, а заканчивается символом } или сочетанием символов *).
^ 6. Описание констант.

Константы описываются в разделе описания констант const. Описание выглядит так:

Идентификатор = константа.

Идентификатор представляет собой имя константы. Сама константа может быть числом, символом, строкой, или выражением из констант.
7. Типы.

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

  • стандартные (предопределённые) типы;

  • типы, определяемые пользователем (пользовательские типы).

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

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

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

  • к любому значению прядкового типа можно применить функцию Ord, которая выдаёт номер этого значения;

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

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


Целые типы в ТР изобразим таблицей
  1   2   3   4   5



Скачать файл (917.8 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации
Рейтинг@Mail.ru