Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Языки программирования низкого и высокого уровня.



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

Язык программирования низкого уровня – язык Ассемблер (от английского assemble – сборка, устройство). Один оператор языка превращается в одну или несколько команд ЦП. Это – самый мощный язык программирования, но его отличает большая трудоемкость написания программ. Принято считать, что на Ассемблере пишут программы самые искусные профессионалы, хакеры и программисты, которые создают вирусы и антивирусные программы.

Языки программирования высокого уровня: Паскаль, Алгол, Фортран и др. В этих языках один оператор превращается в сотни команд ЦП. Язык программирования высокого уровня – это почти разговорный английский язык. Он легок в обучении и использовании. Но программы получаются большие и не такие совершенные, как на Ассемблере.

Язык программирования С (английское С произносится как “си”) занимает особое место. В нем есть операторы и низкого, и высокого уровня. Большинство профессиональных программ, в том числе операционные системы, написаны на современной версия этого языка С++ (“си два плюса”).

Виды интерфейса.

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

· интерфейс пользователя – интерфейс между пользователем и программно-аппаратными средствами компьютера. Наиболее современный тип интерфейса пользователя – графический – обеспечивается комбинацией монитора и манипулятора «мышь»;

· аппаратно-программный интерфейс, или интерфейс между аппаратными и программными средствами компьютера;

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

Три вида алгоритмов.

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

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

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

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

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

Алгоритмами и программами циклической структуры называют алгоритмы и программы, предусматривающие многократное повторение некоторых групп операторов.

Вопросы для самоконтроля

1. Как принято классифицировать программное обеспечение?

2. В чём состоит различие языков программирования низкого и высокого уровня?

3. Что такое интерфейс?

4. Три вида интерфейса.

5. Чем программа отличается от алгоритма?

6. Какие существуют виды алгоритмов?

СПИСОК ЛИТЕРАТУРЫ

Основная

1. Черняков, М.В. Основы информационных технологий: учебник для ВУЗов. / Черняков М.В., Петрушин А.С. М.: ИКЦ Академкнига, 2007. – 407 с.

2. Информатика: базовый курс. / Симонович П.А. [и др.] – СПб.: Изд-во «Питер», 2008, 640 с.

3. Арсеньев, Ю.Н . Информационные системы и технологии / Арсеньев, Ю.Н.. – М.: ЮНИТИ-ДАНА, 2009. – 447 с.

4. Розанов, А.В. Программирование персональных компьютеров. / Розанов А.В., Федоров В.К. Электронный учебник на CD-ROM. Саратов, 2006

Дополнительная

1. Кашина, И.А. Информационно-правовые системы в экономической деятельности. / Кашина И.А. [и др.] –М.: ДМК-ПРЕСС, 2008.

2. Лихтеншейн, В.Е. Информационные технологии в бизнесе: практикум. / Лихтеншейн В.Е., Росс Г.В. – М.: ФиС, 2008. – 509 с.

3. Макаров, В.Ф. Аутентификация электронного документооборота и защита информации с использованием методов ассиметричного преобразования данных / Макаров В.Ф., Нечаев Д.Ю., Уколов В.С. – М.: РГТЭУ, 2007. – 58 с.

4. Барановская, Т.П. Информационные системы и технологии в экономике / Барановская Т.П. [и др.] – М.: Финансы и статистика, 2007. – 412 с.

5. Якубайтис, Э.А. Информационные сети и системы: справочная книга Якубайтис Э.А.. – М.: Финансы и статистика, 2008


Лекция 3.

ИНТЕГРИРОВАННАЯ СРЕДА ПРОГРАММИРОВАНИЯ FREE PASCAL И ЕЁ МЕСТО В ПРОГРАММНОМ ОБЕСПЕЧЕНИИ ПЕРСОНАЛЬНОЙ ЭВМ.

3.1. Среда программирования Free Pascal – пример инструментального ПО.

Для создания программы на любом языке программирования выполняется ряд действий.

1. С помощью программы Текстовый редактор создаётся текст будущей программы операторами языка программирования.

Если мы используем язык Pascal, текстовый файл нашей программы будет называться *.pas. Символ * (звёздочка) заменяет любой набор символов, его использование в данной записи означает, что имя файла может быть любым заданным пользователем (но содержать не более восьми букв латинского алфавита и/или цифр), а тип файла (расширение) должен быть pas. Текстовый файл программы часто называют исходным файлом.

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

Из файла *.pas будет сделан объектный файл *.obj , то есть имя файла сохранится, а тип файла будет obj (от английского object). В этом файле уже нет текста, а есть набор внутренних кодов.

3. С помощью программы Компоновщик файл *.obj преобразуется в готовую программу *.exe.

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

Процесс трансляции и компоновки в совокупности называют также компиляцией.

4. Если компиляция прошла успешно, можно запустить готовую программу *.exe на исполнение.

5. После исполнения программы можно посмотреть на экране результаты её работы.

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

Современная программа языка программирования объединяет в себе все 5 шагов и называется интегральная среда программирования, или интегральная среда разработки программ.

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

Мы будем пользоваться интегральной средой программирования Free Pascal. Мы изучим два десятка операторов языка программирования Pascal. Примерно 30 английских слов достаточно, чтобы понимать сообщения программы.

Для открытия (запуска) среды программирования необходимо найти и запустить файл C: \PASCAL\BIN\turbo.exe. Это можно сделать через программу Norton Commander, если она установлена на компьютере, или посредством соответствующей пиктограммы (значка) на Рабочем столе.

Запись C: \PASCAL\BIN\turbo.exe есть полный путь к файлу, уникальный адрес файла запуска программы на диске. Из прочтения этой записи следует, что программа turbo.exe находится в каталоге (папке) BIN, который находится в каталоге (папке) PASCAL, который размещён в корневом (главном) каталоге на диске C.

После запуска программы turbo.exe на экране появляется окно редактирования (Edit). На синем фоне желтыми буквами воспроизводится текст программы на языке Pascal. Некоторые операторы будут воспроизводиться на экране белым цветом. Результаты выполнения программы отображаются на черном экране – пользовательском окне (User), или окне выполнения. После завершения работы программы вместо черного окна снова появится синее окно с текстом программы. Чтобы перейти из синего окна в чёрное и посмотреть результаты работы программы, надо нажать комбинацию клавиш Alt-F5. Чтобы вернуться из чёрного окна в синее окно редактирования, нужно нажать любую клавишу.

Комбинация клавиш – одновременное нажатие двух (изредка трёх) клавиш. Выполняется следующим образом. Первой нажимается многофункциональная клавиша (Ctrl, Shift, Alt) и удерживается в нажатом состоянии. Затем однократно нажимается вторая клавиша, символьная или командная, после чего первая клавиша отпускается.

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

Нижняя строка окна редактирования – подсказки по функциональным клавишам. Так, нажатие клавиши F1 приводит к появлению окна помощи (Help) на английском языке. Даже слабое знание английского языка позволяет узнать много интересного. Например, если в тексте программы встать курсором на любой оператор или название функции и нажать Ctrl-F1, то появится контекстно-зависимая подсказка по данному оператору или функции.

В главном меню нам будут нужны только несколько команд.

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

Команды, собранные в группе File, управляют пересылкой файлов между оперативной памятью и внешней памятью (жёстким диском). Как и 30 лет назад, на современных компьютерах имеется две памяти: временная оперативная (быстрая) и постоянная (медленная).

File – Open. .. Открыть файл, то есть загрузить файл с текстом программы в оперативную память (и тогда текст появится на экране). После запуска команды на экране появляется дополнительное диалоговое окно “Open”, в котором можно указать имя файла в соответствующем поле или, нажав клавишу Tab, перейти к предложенному ниже списку. Можно также, не пользуясь клавишей Tab, щёлкнуть мышью по имени нужного файла, или любого файла, если нужный файл оказался в невидимой части списка, а затем, перебирая список, найти нужный.

File–New. В оперативной памяти создать новый файл NONAME.PAS.

В OS Window аналогичная команда называется Файл – Создать. Так, в приложении Paint новый файл называется также, только по-русски: Безымянный.bmp.

File–Save (F2). Сохранить файл, то есть переписать файл из оперативной памяти на диск под тем же именем, какое имеет файл.

В OS Window аналогичная команда называется Файл – Сохранить.

File– Save as... Сохранить файл под другим именем, то есть переписать файл из оперативной памяти на диск под другим именем. После запуска команды на экране появляется дополнительное диалоговое окно “Save”, в котором можно указать имя файла в соответствующем поле, или найти соответствующий файл в списке.

При этом надо быть внимательным, не путать диалоговые окна “Open” и “Save”, и не пытаться вместо открытия нужного файла записать на его место пустой файл NONAME.PAS.

В OS Window аналогичная команда называется Файл – Сохранить как...

File – Exit (Alt-X). Выход из среды Free Pascal. Программа удаляется из оперативной памяти. Перед этим программа проверяет, совпадают ли текстовые файлы в оперативной памяти и на диске. Если они разные, программа предлагает сохранить файл на диске.

В OS Window аналогичная команда называется Файл – Выход.

Команды, собранные в группе Compile, управляют компиляцией (трансляцией и компоновкой) исходного файла. Нас интересуют следующие команды.

Compile–Compile (Alt-F9). Скомпилировать активный (то есть открытый) текстовый файл.

Compile–Make (F9). Преобразовать текстовые файлы в программы *.exe.

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

Run–Run (Ctrl-F9). Преобразовать текстовый файл в программу и выполнить.

Команды, собранные в группе Debug, управляют отладкой программы.Мы будем пользоваться следующей командой.

Debug–User screen (Alt-F5). Дословно: перейти на пользовательский экран, то есть перейти из синего окна редактирования в черное пользовательское окно (окно выполнения). В окне выполнения отображается результат выполнения программы пользователя, который мы оцениваем. Для того, чтобы вернуться обратно в окно редактирования, нужно нажать любую клавишу.

Пример простейшей программы.

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

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

Составим алгоритм вычисления площади треугольника:

1) вывести на экран: «Ввести два числа: a, h – основание и высоту треугольника»;

2) ввести с клавиатуры два числа: a, h;

3) вычислить: S = a * h / 2;

4) вывести на экран: «Площадь треугольника равна», а затем вывести на экран вычисленное значение S.

В этом алгоритме все действия выполняются подряд, линейно. Это – линейный алгоритм.

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

Program A1;

Var a, h, s: real;

Begin

WriteLn('Ввести два числа: основание и высоту треугольника');

Read(a, h);

s: =a*h/2;

WriteLn('Площадь треугольника =', s: 8: 2);

ReadLn;

End.

Разберём, из чего состоит и как записывается программа на языке Pascal.

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

· Для записи операторов можно использовать любые латинские буквы, не зависимо от их регистра; программа не различает строчные (маленькие) и прописные (большие) буквы.

· В конце каждого оператора, кроме отдельных случаев, должен стоять символ “; ” (точка с запятой). Символ “; ” никогда не ставится после Begin и после последнего End (там ставится точка), а также может не ставиться перед End.

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

· В одной строке можно писать несколько операторов, хоть всю программу. Но удобнее работать с программой, когда в одной строке записан один оператор, или даже когда один оператор продолжается на несколько строк.

· Точка после последнего End – признак окончания текста программы. После точки на следующих строках можно писать что угодно, программа туда «не заглядывает». Если программа сложная, обычно после неё пишут комментарий.

Теперь рассмотрим, как работают отдельные операторы программы.

Оператор Program A1 представляет собой заголовок программы. Он даёт программе имя A1. Имя программы является идентификатором, в качестве которого может использоваться любая последовательность латинских букв, цифр и других символов, кроме пробела и специальных символов (точка, запятая, слеш, табуляция и т.п.), обязательно начинающаяся с латинской буквы. Идентификатор может состоять не более чем из 64 символов. В качестве идентификатора не могут использоваться служебные (зарезервированные) слова языка Pascal.

Те же правила распространяются на имена ячеек оперативной памяти (названия переменных), которые также являются идентификаторами.

Оператор Var a, h, s: real представляет собой блок описания переменных. Он отводит в ОП три ячейки с именами a, h, s для трёх переменных. Во время работы программы в эти ячейки будут записываться значения переменных. Для краткости записи каждую переменную (ячейку ОП) мы обозначили одной буквой.

После символа “: ” (двоеточие) указывается тип переменной. В языке Pascal много типов переменных. Но мы, чаще всего, будем использовать только два типа переменных.

Первый тип – real – вещественные числа (с десятичной дробной частью). Диапазон изменения от 10-38 до 10+38. Программа отводит под каждое вещественное число 6 байт в соответствующей ячейке ОП.

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

В компьютере действительные числа хранятся в так называемом научном, или, как его ещё называют, в экспоненциальном формате. В этом формате действительное число состоит из мантиссы, числа от 1 до 10 с 12-ю значащими цифрами, и так называемой экспоненты, степени числа 10. При выводе на экран степень числа 10 заменяется прописной буквой E с последующим двузначным числом со своим знаком, которое является показателем степени числа 10. Такое представление позволяет легко записывать очень большие и очень маленькие числа. Если пользователь не задал формат, на экран или на печать действительное число будет выведено в своем внутреннем представлении. Например, на экране число Авогадро 6, 02*1023 будет выглядеть так: 6.020000000000E+23.

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

Второй тип – integer – целые числа. Диапазон изменения от -32768 до +32767 (215). Ёмкость отводимой под него ячейки в ОП – 2 байта.

С первого оператора Begin начинается собственно программа, называемая блоком операторов программы. Все операторы до первого Begin образуют блок описания программы. Вся последовательность операторов между первым Begin и последним End образует тело программы.

Мы специально подчеркиваем «первый», «последний», потому что в теле программы, как мы скоро убедимся, могут быть другие пары операторов Begin и End.

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

Оператор WriteLn ('Ввести два числа: основание и высоту треугольника') выводит на чёрный пользовательский экран надпись – цепочку символов, стоящую в круглых скобках после оператора и заключенную в апострофы, подсказывающую пользователю, что ему необходимо сделать. В нём объединены два оператора. Первый – Write – оператор вывода на экран. Второй – Ln, сокращение от английского line (строка) – оператор перевода курсора в начало новой строки экрана после окончания работы оператора Write. Иными словами, оператор Write выводит символы на экран, тогда как оператор WriteLn после вывода символов ещё и переводит курсор на следующую экранную строку.

Ввода данных с клавиатуры осуществляет оператор Read(a, h). В данном случае это два числа, которые вводятся в ячейки c именами a, h.

Вводимые с клавиатуры числа разделяются хотя бы одним пробелом, например, 3 6. Если ввести их без пробела, то будет прочитано одно число 36. При вводе с клавиатуры каждая нажатая символьная клавиша попадает в буфер (специально отведённую для этого часть ОП) клавиатуры и отображается на экране. Но программа прочитает буфер клавиатуры только после нажатия клавиши Enter. До этого набранные символы можно удалять частично или полностью, вводить новые, то есть редактировать.

После нажатия клавиши Enter программа вводит значения из буфера клавиатуры и расшифровывает их по списку ввода оператора Read (каковым являются символы, стоящие в круглых скобках после оператора и отделённые друг от друга запятой). В данном случае в списке ввода стоят две переменные: a, h. Программа ищет в строке два числа, разделенные пробелом. Первое число помещается в ячейку ОП, отведенную для переменной с именем a, второе число – в ячейку ОП, отведенную для переменной с именем h.

Если в строке найдено только одно число, например, числа 3 и 6 были введены без пробела как 36, то число 36 помещается в ячейку a, и программа будет ждать ввода с клавиатуры еще одного числа, чтобы переслать его в ячейку h. При этом бесполезно нажимать клавишу Enter: программа не перейдёт к следующему шагу (например, к исполнению) до тех пор, пока не будет введено числовое значения второй переменной.

Оператор присваивания s: =a*h/2 – инструкция для компьютера выполнить действия, указанные в правой части оператора, и результат поместить в ячейку ОП, записанную слева от символа оператора присваивания “: =”.

В данном случае из ячеек ОП a и h будут извлечены хранящиеся там числа, и отправлены в ЦП. Только ЦП может производить действия над числами. Результат будет помещен в ячейку s.

В программе нам ещё раз встречается оператор вывода WriteLn ('Площадь треугольника =', s: 8: 2). Теперь посредством него на экран будет дословно выведен текст, заключенный в апострофы: 'Площадь треугольника =', а затем будет выведено число из ячейки s с форматом: 8: 2.

Задание формата числа позволяет вывести это число на экран в привычном виде, с десятичным разделителем между целой и дробной (десятичной) частями. Следует помнить, что в языке Pascal в качестве десятичного разделителя используется точка, запятая же используется для других целей. Форматом называется количество текстовых позиций экрана (знакомест), отводимое под данное число, включая десятичный разделитель. Формат вещественного числа состоит из двух чисел, отделённых двоеточиями от имени переменной и друг от друга – s: 8: 2. Формат целого числа состоит из одного числа, отделённого от обозначения переменной двоеточием. Формат вывода (печати) задает пользователь. В рассмотренном случае число будет занимать 8 текстовых позиций экрана (знакомест), из них 2 правых позиции будет отведено под 2 цифры десятичной дроби, одна позиция – под десятичную точку, оставшиеся 4 позиции – под целую часть, причем свободные левые позиции будут заполнены пробелами.

Например, число 2, 6 будет выведено как _ _ _ _2.60.

Следует обратить внимание на то, что количество значащих цифр после десятичной точки оказалось меньшим, чем задано форматом, и недостающее число было заменено нулём. При формате s: 8: 4 это же число 2, 6 будет выведено как _ _ 2.6000.

Если задать формат s: 8: 0, то число выведется без десятичных знаков, и на экране будет выглядеть как целое.

В общем виде формат можно обозначить как X: m: n, где X – переменная, m – общее число текстовых позиций экрана (знакомест) для вывода числа, n – число текстовых позиций экрана (знакомест) для вывода его десятичной части.

Пустой оператор ввода ReadLn временно приостанавливает работу программы до нажатия клавиши Enter, чтобы пользователь мог оценить полученные результаты в «черном» окне выполнения. Когда нет этого оператора, по окончанию работы программы на экране сразу появляется «синее» окно редактирования, где был создан текст программы, и приходится нажимать комбинацию клавиш Alt-F5, чтобы вернуться в окно выполнения.

Конец тела программы – это оператор End. Точка после оператора End – конец текста программы.

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


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-04-11; Просмотров: 949; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.05 с.)
Главная | Случайная страница | Обратная связь