Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
"Язык "C", первоначально предназначавшийся для написания
операционной системы "UNIX" на ЭВМ DEC PDP-11, был разрабо-
тан и реализован на этой системе Деннисом Ричи.....
... Язык "C" - это язык относительно "низкого уровня". В
такой характеристике нет ничего оскорбительного; это просто
означает, что "C" имеет дело с объектами того же вида, что и
большинство ЭВМ, а именно, с символами, числами и адресами.
Они могут объединяться и пересылаться посредством обычных
арифметических и логических операций, осуществляемых реаль-
ными ЭВМ.
В языке "C" отсутствуют операции, имеющие дело непос-
редственно с составными объектами, такими как строки симво-
лов, множества, списки или с массивами, рассматриваемыми как
целое. Здесь, например, нет никакого аналога операциям PL/1,
оперирующим с целыми массивами и строками. Язык не предос-
тавляет никаких других возможностей распределения памяти,
кроме статического определения и механизма стеков, обеспечи-
ваемого локальными переменных функций; здесь нет ни
"куч"(HEAP), ни "сборки мусора", как это предусматривается в
АЛГОЛЕ-68. Наконец, сам по себе "C" не обеспечивает никаких
возможностей ввода-вывода: здесь нет операторов READ или
WRITE и никаких встроенных методов доступа к файлам. Все эти
механизмы высокого уровня должны обеспечиваться явно вызыва-
емыми функциями.
Аналогично, язык "C" предлагает только простые, после-
довательные конструкции потоков управления: проверки, циклы,
группирование и подпрограммы, но не мультипрограммирование,
параллельные операции, синхронизацию или сопрограммы.
Хотя отсутствие некоторых из этих средств может выгля-
деть как удручающая неполноценность ("выходит, что я должен
обращаться к функции, чтобы сравнить две строки символов
?!"), но удержание языка в скромных размерах дает реальные
преимущества. Так как "C" относительно мал, он не требует
много места для своего описания и может быть быстро выучен.
Компилятор с "C" может быть простым и компактным. Кроме то-
го, КОМПИЛЯТОРЫ ЛЕГКО ПИШУТСЯ; при использовании современной
технологии можно ожидать написания компилятора для новой ЭВМ
за пару месяцев и при этом окажется, что 80 процентов прог-
раммы нового компилятора будет общей с программой для уже
существующих компиляторов. Это обеспечивает высокую степень
мобильности языка."
(с) Керниган, Ричи. Язык C
Составить ответ | Вернуться на конференцию
Ответы