I. Понятие информации. Общая характеристика процессов сбора, передачи, обработки и накопления информации

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

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

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

Машинный язык

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

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

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

 

Язык ассемблера

<TBODY>Язык ассемблера — это система обозначений, используемая для представления в удобочитаемой форме программ, записанных в машинном коде. </TBODY>

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

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

Основные преимущества алгоритмических языков перед машинными таковы:

· алфавиталгоритмического языка значительно шире алфавита машинного языка, что существенно повышает наглядность текста программы;

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

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

· требуемые операции задаются с помощью общепринятых математических обозначений;

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

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

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

 

<TBODY>Алгоритмический язык (как и любой другой язык) образуют три его составляющие: алфавит, синтаксис и семантика.

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

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

<TBODY>Понятие языка определяется во взаимодействии синтаксических и семантических правил. Синтаксические правила показывают, как образуется данное понятие из других понятий и букв алфавита, а семантические правила определяют свойства данного понятия </TBODY>

Основными понятиями в алгоритмических языках обычно являются следующие.

1. Имена (идентификаторы) — употребляются для обозначения объектов программы(переменных, массивов, функций и дp.).

2. Опеpации. Типы операций:

· арифметические операции + , - , * , / и дp. ;

· логические операции и, или, не;

· операции отношения < , > , <=, >= , = , <> ;

· операция сцепки (иначе, "присоединения", "конкатенации") символьных значений друг с другом с образованием одной длинной строки; изображается знаком "+".

3. Данныевеличины, обрабатываемые программой. Имеется тpи основных вида данных: константы, переменные и массивы.

· Константы — это данные, которые зафиксированы в тексте программы и не изменяются в процессе ее выполнения.

примеры констант:

Ø числовые 7.5, 12;

Ø логические да(истина), нет(ложь);

Ø символьные "А", "+";

Ø литерные "abcde", "информатика", "" (пустая строка).

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

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

4. Выpажения — предназначаются для выполнения необходимых вычислений, состоят из констант, переменных, указателей функций (например, exp(x)), объединенных знаками операций.

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

Различают выражения арифметические, логические и строковые.

· Арифметические выражения служат для определения одного числового значения. Например, (1+sin(x))/2. Значение этого выражения при x=0 равно 0.5, а при x=p/2 - единице.

· Логические выражения описывают некоторые условия, которые могут удовлетворяться или не удовлетворяться. Таким образом, логическое выражение может принимать только два значения — "истина" или "ложь" (да или нет). Рассмотрим в качестве примера логическое выражение x*x + y*y < r*r , определяющее принадлежность точки с координатами (x,y) внутренней области круга радиусом r c центром в начале координат. При x=1, y=1, r=2 значение этого выражения — "истина", а при x=2, y=2, r=1 — "ложь".

· Значения строковых (литерных) выражений — тексты. В них могут входить литерные константы, литерные переменные и литерные функции, разделенные знаком операции сцепки. Например, А + В означает присоединение строки В к концу строки А. Если А = "куст ", а В = "зеленый", то значение выражения А+В есть "куст зеленый".

5. Операторы (команды). Оператор — это наиболее крупное и содержательное понятие языка: каждый оператор представляет собой законченную фразу языка и определяет некоторый вполне законченный этап обработки данных. В состав операторов входят:

· ключевые слова;

· данные;

· выражения и т.д.

Операторы подразделяются на исполняемые и неисполняемые. Неисполняемые операторы предназначены для описания данных и стpуктуpы программы, а исполняемые — для выполнения различных действий (например, оператор присваивания, операторы ввода и вывода, условный оператор, операторы цикла, оператор процедуры и др.).

<TBODY>Вычисления часто употребляемых функций осуществляются посредством подпрограмм, называемых стандартными функциями, которые заранее запрограммированы и встроены в транслятор языка. </TBODY>Каждый язык программирования имеет свой набор стандартных функций.

 

Литература

1. Информатика [Текст]. / Под ред. Н. В. Макаровой. М., "Финансы и статистика", 2005.

2. Могилев, А. В. Информатика [Текст]: Учеб.пособие для вузов / А. В. Могилев, Н. И. Пак, Е. К. Хеннер. Под ред. Е. К. Хеннера. - М.: Академия, 2001.

3. Симонович, С. В. Информатика для юристов и экономистов [Текст]: Учеб.пособие для вузов / C. В Симонович [и др] . – СПб.: Питер, 2001.

4. Степанов, А. Н. Информатика. 3-е изд. [Текст]: Учебник для вузов / А. Н. Степанов - СПб.: Питер, 2003.