Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛЕКЦИИ_ПО_ПРОГРАММИРОВАНИЮ_ПРЕПОД_3403_220301.doc
Скачиваний:
27
Добавлен:
06.11.2018
Размер:
845.31 Кб
Скачать

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ПРИБОРОСТРОЕНИЯ И ИНФОРМАТИКИ

Кафедра ИС 5 Информационное обеспечение робототехнических и мехатронных систем.

Для студентов 3 курса факультета Интеллектуальных систем специальностb 2203.01.

Кандидат технических наук, доцент Стефанович Александр Евгеньевич.

ЛЕКЦИИ ПО ПРОГРАММИРОВАНИЮ

НА ЯЗЫКЕ СИ

(дисциплина 3403)

МГУПИ – 200__г.

УДК

Лекции по программированию на языке Си. Учебно-методическое пособие по дисциплинам Информатика и Программирование. Составитель А.Е. Стефанович. М: МГУПИ, 2007. 133 с.

Цель методического пособия систематическое изложение основных сведений по языку программирования Си в сопровождении соответствующих исполняемых файлов (действующих программ). В основу конспекта положена работа с основополагающей ставшей уже классической литературой. Список литературы открывает книга разработчиков языка Си Б.В. Кернигана и Д.М. Ритчи «Язык программирования Си» и включает книгу ведущего специалиста в области программирования на языке Си, члена комитета ANSI/ISO Г. Шилдта «Полный справочник по языку Си». Весь материал систематизирован с учетом стандартов ANSI/ISO (C89, C99). Многочисленные примеры, взятые из различных книг, приведены составителем конспекта к единому стилю, дополнены данными и файлами, необходимыми для получения исходного текста на языке Си, готового к компиляции, подробно комментированы. Рассмотрены результаты выполнения программ.

Предисловие.

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

  1. Керниган Б., Ритчи Д. Язык программирования Си / Пер. с англ. - М.: Финансы и статистика, 1992.

  2. Уэйт М., Прата С., Мартин Д. Язык Си / Пер. с англ. - М.:Мир, 1988.

  3. Белецкий Я. Энциклопедия языка Си / Пер. с англ. - М.:Мир, 1992.

  4. Джехани Н. Программирование на языке Си. / Пер. с англ. Справочник. - М.: Радио и связь, 1988.

  5. Уинер Р. Язык Турбо Си / Пер. с англ. - М.:Мир, 1991.

  6. Левкин Г.Н., Левкина В.Е. ДЕМО ТУРБО СИ - М: ПРОК, 1992.

  7. М.И. Болски. Язык программирования Си / Пер с англ. Справочник. – М.: Радио и связь, 1988.

  8. Р. Бери, Б. Микинз. Язык Си. Введение для программистов / Пер. с англ. – М.: Финансы и статистика, 1988.

  9. З.С. Погорелый, Т.Ф. Слободянюк. Программное обеспечение микропроцессорных систем. Справочник. – Киев: Техника, 1988.

  10. Бошкин А.В., Дубнер П.Н. Работа в Турбо СИ – М: ЮКИС, 1991.

  11. Б.П. Прокофьев, Н.Н. Сухарев, Ю.Е. Храмов Графические средства Турбо С и Турбо С++ - М: Финансы и статистика, 1992.

  12. Трой Д. Программирование на языке Си для персонального компьютера IBM PC/ Пер. с англ. – М: Радио и связь, 1991.

  13. Касаткин А.И., Вальвачев А.Н. От Turbo C к Borland C++ Справочное пособие – Минск: Вышэйшая школа, 1992

  14. Касаткин А.И. Управление ресурсами Справочное пособие – Минск: Вышэйшая школа, 1992.

  15. Касаткин А.И. Системное программирование Справочное пособие – Минск: Вышэйшая школа, 1993.

  16. Подбельский В.В., Фомин С.С. Программирование на языке Си - М: Финансы и статистика, 2000.

  17. Березин Б.И., Березин С.Б. Начальный курс С и С++ - М: ДИАЛОГ-МИФИ, 2003.

  18. Шилдт Г. Полный справочник по С, 4-е издание/ Пер. с англ. – М, С-Пб, Киев: Издательский дом Вильямс, 2002.

Весь материал систематизирован с учетом стандартов ANSI/ISO (C89, C99). Многочисленные примеры, взятые из различных книг, приведены составителем конспекта к единому стилю, дополнены данными и файлами, необходимыми для получения исходного текста на языке Си, готового к компиляции, подробно комментированы. Рассмотрены результаты выполнения программ.

1. Введение.

1.1. История создания языка си.

Язык программирования C (Си) был разработан Деннисом Ритчи (Dennis Ritchie) в 1972 году как инструмент написания операционной системы (ОС) UNIX для электронной вычислительной машины (ЭВМ) PDP-11 фирмы DEC. ОС UNIX была задумана как мастерская для инженеров программистов. Главный инструмент мастерской – язык Си. В настоящее время язык Си используется на различных ЭВМ, на которых установлены разные операционные системы (UNIX, DOS, OS/2, WINDOWS и др.).

Ближайшими родственниками и предками языка программирования Си являются языки программирования:

  • Алгол 60 (ALGOL – ALGOrithmic Language - -алгоритмический язык), разработанный Джоном Бэкусом (Backus) и Питером Науром (Naur) и принятый Международным комитетом из представителей семи стран (США, ФРГ, Англии, Франции, Дании, Нидерландов и Швйцарии) в Париже в 1960 году;

  • CPL (Combined Programming Language), разработанный Кембриджским и Лондонским университетами в 1963 году;

  • BCPL (Basic Combined Programming Language), разработанный Мартином Ричардсом (Martin Richards) в Кембриджском университете в 1967 году;

  • B (базовый язык Би), разработанный Кеном Томпсоном (Ken Thompson) в Bell Laboratories в 1970 году.

Язык Си является одновременно языком высокого и низкого уровней (ассемблер высокого уровня). Это означает, что он одновременно относится к двум классам формальных алгоритмических языков:

  • универсальных машинно-независимых языков (высокий уровень),

  • машинно-ориентированных языков (низкий уровень).

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

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

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