Меню
Видеоучебник
Видеоучебник  /  Информатика  /  10 класс  /  Информатика 10 класс (ФГОС)  /  Язык структурного программирования Паскаль. Его элементы и типы данных

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

Урок 18. Информатика 10 класс (ФГОС)

В уроке идёт речь о том, как происходила эволюция программирования, какие языки программирования использовались на различных типах ЭВМ. Рассматривается история языка программированияPascal.Рассказывается, что такое ЯПВУ, а также детально разбирается структура процедурных языков программирования высокого уровня.Более подробно описаны элементы, которые входят в язык программированияPascal, а также типы данных этого языка.

Конспект урока "Язык структурного программирования Паскаль. Его элементы и типы данных"

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

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

Мы с вами знаем, что в основе архитектуры ЭВМ разных поколений лежат принципы Джона фон Неймана.

Но в процессе развития ЭВМ происходят некоторые отклонения от фон-неймановской архитектуры.

История электронных вычислительных машин I поколения связана с изобретением в 1906 году американским инженером Ли де Форестом вакуумного триода.

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

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

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

Эта команда называется трёхадресной. Шестнадцатеричный код 02 обозначает команду сложения. Первый и второй адрес – это адреса ячеек, в которых хранятся слагаемые. Третий адрес – это адрес ячейки, куда заносится сумма. Сама же команда хранится в ячейке ОЗУ с адресом 28.

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

В 1950-х гг. возникает такое направление, как «автоматизация программирования». Основной целью этого направления является создание средств, которые облегчат и ускорят процесс создания программы для ЭВМ. Начинают появляться первые языки программирования. К первым языкам программирования относятся машинно-ориентированные автокоды. Позднее их начали называть ассемблеры.

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

Рассмотрим пример, написанные на ассемблере: ADD, a, b, c

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

Язык ассемблер называется машинно-ориентированным, потому что для каждой команды процессора существует свой аналог команды на ассемблере.

Так как разные типы ЭВМ имели разные системы команд процессора, ассемблеры у них также различались.

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

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

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

Следующим этапом языков программирования стало появление языков программирования высокого уровня – ЯПВУ. К примерам таких языком относятся Pascal, Бейсик, C, Java и другие. Все эти языки относятся к процедурной парадигме программирования, поэтому они называются процедурными языками программирования.

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

Существуют другие типы программирования. Языки, которые к ним относятся, называются декларативными языками программирования. К примерам можно отнести такие языки программирования, как Пролог, Лисп, HTML и другие.

Для каждого языка программирования существует машинно-независимый стандарт. Возможность программирования на одном из языков программирования высокого уровня зависит от наличия на компьютере транслятора с этого языка. Трансляторы для каждого типа компьютера создаются системными программистами.

Текст программы на ЯПВУ по своей форме ближе к естественным языкам (чаще всего – английскому), к языку математики.

Рассмотрим пример записи команды сложения двух величин на Паскале и Бейсике.

c:=a+b                                              с=a+b

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

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

Язык Бейсик появился в 1965 году в Дартмутском университете. Бейсик – это простой и легко изучаемый язык, который предназначен для программирования несложных расчётных задач. Наибольшее распространение бейсик получил с появлением микроЭВМ и персональных компьютеров.

А сейчас мы с вами обратимся к истории появления языка Pascal.

Pascal – один из наиболее известных языков программирования, а также является базой для ряда других языков.

Язык Pascal был создан в 1968 – 1969 годах швейцарским учёным, специалистом в области информатики Никлаусом Виртом. Он получил своё название в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал первую в мире механическую машину, умеющую складывать два числа.

Первая же публикация Никлауса Вирта о языке Pascal была сделана в 1970 году.

Pascal является одним из языков, на основе которых создавались и развивались другие языки программирования. К примерам можно отнести MODULA 2, который был также разработан Никлаусом Виртом в 1972 году.

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

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

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

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

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

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

Алфавит – это множество символов, допустимых в записи текстов программ.

Синтаксис – это правописание языковых конструкций (имён, констант, выражений и так далее).

Семантика – это смысловое содержание языковой конструкции.

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

Саму же ошибку должен исправить программист.

Рассмотрим структуру программы языка Pascal.

Она состоит из заголовка программы и тела программы (блока), за которым следует точка – признак конца программы.

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

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

В Turbo Pascal, в отличие от базового стандартного Паскаля, возможно:

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

·                   разделы Const, Type, Var, Label могут следовать друг за другом в любом порядке и повторяться в разделе описаний сколько угодно раз.

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

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

В алфавит языка Pascal входят

·        латинские прописные буквы;

·        латинские строчные буквы;

·        арабские цифры;

·        специальные символы:

К специальным символам относятся:

·        знаки препинания «,», «.» и т. д.;

·        знак подчёркивания «_»;

·        круглые скобки «( )»;

·        квадратные скобки «[ ]»;

·        фигурные скобки «{ }»;

·        знаки арифметических действий «+», «-», «=» и т.д.

Также в алфавите языка есть неделимые элементы. Это составные символы, которые нельзя разрывать (разделять пробелом). К ним относятся:

·        знак операции присваивания «:=»;

·        знак больше или равно «>=»;

·        знак меньше или равно «<=»;

·        ограничители комментариев «(*..*)»;

·        не равно «<>»;

·        открывающиеся и закрывающиеся круглые «(..)» и квадратные скобки «[..]».

Также в алфавит языка входят пробелы – символ пробела (код ASCII 32) и все управляющие символы кода ASCII от 0 до 31.

Помимо этого, в языке программирование существует такое понятие как служебные слова.

Служебные слова – это цепочки символов, которые рассматриваются как единые смысловые элементы с фиксированным значением.

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

Идентификатор – это символическое имя определённого программного объекта. К идентификаторам относятся имена констант, переменных, типов данных, процедур и функций, программ. Таким образом, идентификатор – это любая последовательность букв и цифр, начинающаяся с буквы. Знак подчёркивания также относится к буквам. Длина идентификатора может быть любой, но значащими являются только первые 63 символа.

А сейчас давайте рассмотрим примеры комментариев.

{ текст, который не содержит символ «фигурная скобка» }

(* текст, который не содержит символы «звёздочка, круглая скобка» *)

// весь текст до конца строки

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

Перейдём к типам данных. Как мы уже знаем, с типом величины связаны 3 её свойства: форма внутреннего представления, множество принимаемых значений и множество допустимых значений.

Типы данных в Pascal делятся на простые, структурные, ссылочные.

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

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

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

type <имя типа> = (<список значений>)

Определённое таким образом имя типа используется для описания переменных.

Как правильно задавать пользовательский тип, вы можете увидеть на примере.

Значения, которые входят в перечислимый тип, являются константами. Над ними можно выполнять те же действия, что и с константами. Каждое значение занимает 2 байта, поэтому число значений этого типа не должно превышать 65 535.

Ограниченный тип задаётся как упорядоченное ограниченное подмножество некоторого порядкового типа.

<константа 1> .. <константа 2>

Порядковый номер первой константы не должен превышать номера второй константы.

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

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

А сейчас пришла пора подвести итоги урока.

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

4444

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт