Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_СП_2004_1_00.doc
Скачиваний:
69
Добавлен:
04.11.2018
Размер:
882.69 Кб
Скачать

Лекция 1

Язык Си: историческая справка, общая характеристика, основные достоинства. Подготовка к выполнению и выполнение программ в операционной среде MS DOS. Элементы языка Си: множество символов, ключевые слова, константы и переменные, операции и операторы, управляющие конструкции. Примеры простейших программ: разбор элементов языка.

1. Язык Си: Общая характеристика, историческая справкаи основные достоинства

Язык Си является языком программирования общего назначения. Появление его тесно связано с созданием операционной системы UNIX, ибо он разрабатывался специально для этой системы и на нем написана большая часть системного программного обеспечения UNIXа. Однако язык Си не ориентирован на работу только лишь в одной операционной системе или на какой-либо конкретной машине. Он представляет собой универсальный, машиннонезависимый, легко переносимый язык программирования, в равной степени подходящий как для системного программирования, так и для решения задач вычислительной математики, технических и коммерческих приложений. Язык Си - это алгоритмический язык "не очень высокого уровня". Приведенная характеристика означает, что он дает возможность работы с такими типами объектов и позволяет выполнять такие операции, которые традиционно относят к машинноориентированным языкам "низкого уровня", подобным языку ассемблера. Примером упомянутых объектов могут служить символы, числа (со знаком и без), адреса оперативной памяти и указатели, битовые цепочки и т.д., над которыми можно проделывать арифметические, логические и поразрядные операции. В то же время, Си не обеспечивает возможности работы со строками, множествами, массивами или списками как с единым целым. В языке Си имеется большой набор управляющих конструкций для реализации циклических и разветвленных алгоритмов, средства для блочного и модульного программирования, а также возможность гибкого управления процессом выполнения программы. Все это позволяет охарактеризовать Си как язык структурного программирования. Однако сам по себе язык Си не обеспечивает возможности управления вводом/ выводом и в нем нет операторов, подобных операторам READ и WRITE в FORTRANе. Все же действие по обмену информацией с периферийными устройствами выполняются при помощи явным образом вызываемых внешних функций, входящих в состав стандартных библиотек. Появление Си принято связывать с именем Мартина Ритчи, подготовившего в 1972 году первую версию этого языка в ходе работ над операционной системой UNIX для ЭВМ семейства PDP. Однако исторически его возникновение следует связывать с, во многом машиннозависимым, языком B, созданным Кеном Томпсоном на основе языка BCPL. В настоящее время из 13000 строк системного кода UNIXа лишь 800 строк, выполняющих работу наиболее низкого уровня, написаны на языке ассемблера. Остальная же часть этой операционной системы и множество ее программных утилит написаны на Си. В заключение перечислим некоторые основные свойства языка Си:

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

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

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

- наличие средств для конструирование новых агрегатированных типов данных;

- возможность непосредственной работы с машинными адресами через аппарат указателей;

- наличие препроцессора, позволяющего вносить изменение в текст программы непосредственно перед ее компиляцией;

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