У вас вопросы?
У нас ответы:) SamZan.net

Лекции по дисциплине Информатика и программирование Автор ~ Шульга Т.

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 28.12.2024

5

Лекции по дисциплине «Информатика и программирование»

Автор – Шульга Т.Э.

Лексические основы языка программирования

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

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

В тексте на любом естественном языке можно выделить четыре основные структурные компоненты: символы, слова, словосочетания и предложения. Подобные элементы содержит и любой алгоритмический язык: символы, лексемы, выражения и операторы. Лексемы образуются из символов, выражения из лексем, а операторы из выражений и лексем. Объединенная единым алгоритмом совокупность операторов образует программу на алгоритмическом языке.

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

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

  1. арабские цифры
  2. латинские буквы и знак подчеркивания
  3. специальные знаки: “ ‘ {} .  , & ? () [] < >  и т.д.
  4. пробельные символы (пробел, табуляция, символ перехода на новую строку)

Лексемы (или элементарные конструкции) – минимальная конструкция языка, имеющая самостоятельный смысл.

Из символов алфавита формируются следующие лексемы языка:

  1. идентификаторы;
  2. ключевые слова (служебные, зарезервированные);
  3. знаки операций;
  4. константы;
  5. разделители (скобки, точка, запятая, пробельные символы).

Границы лексем определяются другими лексемами, такими как разделители, знаки операций и комментариями.

Рассмотрим каждый из видов лексем подробно.

Идентификатор – это набор символов, представляющих имя программного объекта. Правила написания идентификаторов в конкретном языке программирования указываются в справочниках по этому языку. Например в С++ идентификатор представляет собой последовательность из букв латинского алфавита, десятичных цифр и символов подчеркивания, начинающуюся не с цифры, причем прописные и строчные буквы различаются. На длину различаемой части идентификатора в С++ различные реализации накладывают свои ограничения (по стандарту длина не ограничена). Задание для самостоятельной работы: в справочной системе MS Visual Studio найти каковы ограничения на длину идентификатора.

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

Пример ключевых слов в языке С++:

int – ключевое слово для описания переменных целого типа

if – ключевое слово для построения условной конструкции

Знаки операций - это один или более символов, определяющих действия над операндами. Знаки операций обеспечивают формирование и последующие вычисление выражений. Выражение задает правило для получения значения. Один и тот же знак операции может употребляться в различных выражениях и по-разному интерпретироваться в зависимости от контекста. (Например, унарный и бинарный минус). Для каждой операции задан тип операндов, над которыми может выполняться данная операция. Операндами могут быть выражения и их частные случаи – константы и переменные. Операции делятся на унарные, бинарные и тернарую по количеству операндов (1,2,3 соответственно).

Примеры унарных операций

-7    унарный минус

 a++ или ++a – операция инкремента (увеличения на единицу)

a-- или --a – операция декремента (уменьшения на единицу)

! a – операция отрицание

Все бинарные операции делятся на следующие основные группы:

  1. аддитивные (+,-);
  2. мультипликативные(*, /, %);
  3. поразрядные (&,|, ^);
  4. операции отношений (<, >, <=, >=, ==, !=);
  5. логические (&&, ||);
  6. присваивания (=, *=, );
  7. и др.

Рассмотрим тернарную условную операцию.

выражение1? выражение2: выражение3;   

Если истинно выржение1, то выполняется выражение2, иначе выполняется выражение3

Например,     a>0?b=1:b=-1

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

a==++b*c+d             (++        *            +      ==)

-!a        (-(!a))

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

Задание для самостоятельной работы: Изучить операции языка С (см. пособие) и их приоритеты.

Константа – это лексема, представляющая изображение фиксированного числового (целого или вещественного), строкового или символьного значения.

Например,

целые 10, 012(8), 0хА(16);

вещественная 78.8,  5., .09, 0.2E-3;

символьная – один  символ, заключенный в кавычки, например ‘a’, ‘\n’;

строковая  - последовательность символов, заключенная в кавычки “Hello, World”.

Последовательность символов, начинающаяся с обратной косой черты называется escape-последовательностями (управляющими последовательностями) и используются для представления

  1. кодов, не имеющих графического изображения;
  2. символов “ ‘ \ ?
  3. любого символа, с помощью его шестнадцатеричного и восьмеричного кода \141 \х61 =a (от 0 до 255).

Оператор задает законченное описание некоторого действия. (Существует путаница понятий, например, у Страуструпа оператор и операция – синонимы а для таких элементов языка, как if, for используются выражение statement – утверждение, предложение, инструкция). Каждый оператор в С заканчивается точкой с запятой.

Для описания сложного действия требуется последовательность операторов. Операторы могут быть объединены в составной оператор или блок с помощью инструктивных (операторных) скобок (например, в С инструктивными являются скобки {}).  В этом случае они рассматриваются как один оператор.

Операторы бывают исполняемые и не исполняемые. Исполняемые операторы задают действия над данными. Неисполняемые операторы служат для описания данных, поэтому их называют операторами описания или просто описаниями.

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




1. нафтола натрия нитрит в щелочной среде фенол железа IIIхлорид кислота хлористоводородная натрия
2. Основания и пределы ограничения прав человека и гражданина по российскому законодательств
3. средние века лат
4. Предварительная нумерация- настоящие сведения- таможенный порт
5. Тема ~ то о чём говориться в тексте часто отражена в его заголовке
6. строительный факультет Кафедра 13ГрСтрбГрПр Отчет по расчетногра
7. Сроки предоставления тезисов- строго до 15 марта 2013 года; 2 К публикации принимается не более двух работ одн
8. Вариант 16 Работу выполнил студент группы ИС147 Арсений Борисович Чистый Работу
9. Предпринимательская деятельность
10. Pavel Tretiakov
11. Эффективность производства, анализ эффективности производства
12. Проблемы врожденного и приобретенного в поведении человека
13.  20 года Закрытое акционерное общество Универсальное Строительное объединение ЗАО УНИСТО
14. .преднамеренные контакты педагога с ребенком длительные или временные целью которых является изменения в
15. А.Н. Жеребцов Международное прав
16. Реферат Физические упражнения для снятия стресса
17. Массовые коммуникации и медиапланирование 1
18. Кристаллизация, структурно-химическое модифицирование и адсорбционные свойства цеолитов (физхимия)
19. Реферат на тему- Культура Стародавньої Греції Виконав студент КККН Групи 1КН3 Каб
20. тема неэффективна что противоречит действительности Успехи японских компаний объясняются партнерскими о