Программирование на Си
ПО – ядро всех ИТ.
ЯП
Алгоритм – точно определенное описание способа решения задачи в виде конечной последовательности действий.
Код программы – полное законченное и детальное описание алгоритма на ЯП.
Центральный процессор (ЦП) ПК – большая интегральная микросхема, все команды и данные ЦП получает в виде электрических сигналов – два уровня напряжения – в математике «0» и «1». Поэтому команды и данные для ЦП – это числа.
Программа, с которой работает ЦП, – это последовательность чисел или машинный код.
Уровни ЯП
-
Машинный ЯП ( +1300042774 – загрузить Y, +1400593419 – добавить Х, +1200274027 – сохранить)
-
Ассемблер ( LOAD Y ADD X STORE Z)
-
Алгоритмический язык высокого уровня
Пример, оператор на С (С++) Z=Y+X
Машинный язык закладывается при проектировании аппаратных средств ПК, в нем учитываются: адресность, коды операции, регистры ЦП и др. Эти языки машинно-зависимы.
Языки Ассемблера – аббревиатур на англ.яз. машинных команд, их МНОГО.
Языки высокого уровня – алгоритмический язык (АЯ) – использует математическую нотацию и изложен на англ.яз. (для записи алгоритма) .
АЯ – проблемно ориентированные, каждый АЯ для эффективного использования в своей области:
-
FORTRAN – математические задачи (переводчик формул)
-
BASIC – для начинающих, математика и др.
-
COBOL – экономические задачи
-
Algol – математические и др. задачи
-
Pascal – для изучения ЯП
-
С (Си) – язык системного программирования
-
С ++ - объектно-ориентированное расширение Си, работа с классами
-
Java – н. 90-х на основе Си++, компиляция в платформно-независимый байт-код (команда – один байт) - мобильные устройства и микрокомпьютеры
-
С# (Си Шарп) – к.90-х, идеи Си, С++, Java – для быстрой разработки сетевых (.NET)-приложений
-
ЯП БД – SQL
-
ЯП для интернета – HTML, Perl, Php, Vrml
-
Языки моделирования – имеют генератор исходных текстов программы на основе созданной модели
-
…
История С и С++
1972 – Деннис Ритчи (Bell Laboratories, USA), к.70-х, книга «Си Кернигана и Ритчи»
1983 – ANSI (Американский комитет стандартов в области вычислительной техники и обработки информации) – начало разработки стандарта языка Си
1989 – Принят стандарт ANSI Си
1990 – Стандарт ANSI / ISO 9899, международный стандарт
90-е – развитие и расширение языка С++
Си создается для поддержки разработки ОС UNIX, быстро получил распространение для создания системного ПО.
Достоинства:
-
Язык высокого уровня
-
Сохранил черты языков низкого уровня
-
Как ассемблер может управлять памятью ПК
-
Удобен при написании системных программ
Недостатки
-
В Си труднее разбираться
Порядок выполнения Си-Программы
Текст программы *.cpp (в среде программирования ВС++) препроцессор (программа предварительной обработки, выполняет директивы #include <math.h> # define N 100) компилятор объектный код *.obj
компоновщик linker ( библиотека) выполнимая программа *.exe загрузчик (размещает программу в основную память ПК) ЦП
Пример Си-программы – на практике))