КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Концепция разработки языков высокого уровня
Язык программирование (ЯПВУ) – это множество строк (последовательностей символов) некоторого алфавита удовлетворяющих правилам синтаксиса и задающих порядок вычислений в соответствии с правилами семантики. Тип данных - диапазон значений, операции которые можно производить над данными
ЯПВУ: · Система типов данных языка программирования (включает средства описания (операторы описания) данных языка программирования) 1. Базовые (простые) типы данных(встроены в язык) Ø Числовые § Целые § Действительные ü С плавающей запятой ü Фиксированная запятая Ø Логические Ø Символьные § Один символ § Строка символов
2. Структурные типы (типы определяемые пользователем). Ø Массивы Ø Записи Ø Объединение Ø Множества 3. Указатели 4. Абстрактный тип данных (определяем сами) Ø Структурные типы Ø Базовые типы Ø Методы или функции над данными · Средства описания действий над данными 1. Выражения Ø Логические Ø Арифметические 2. Операторы действия Ø Ввод / Вывод Ø Операторы присваивания Ø Подпрограммы § Процедуры § Функции Ø Операторы управления § Перехода ü Условный ü Безусловный ü Много условный § Циклы ü С постусловием ü С пред условием ü С пересчетом
· Дополнительные возможности языка (возможность подключения и обработки файлов) Ø Обработка файлов Ø Обработка исключительных ситуаций Ø Организация параллельных вычислений Ø Макро обработка
Категории языков Все языки делятся на 4 категории: 1. Императивные языки высокого уровня (те которые разработаны с принципами Фон-Неймана) Следовательно, имеют в своем составе следующие языковые средства: · Операторы позволяющие организовать ту или иную структуру синтаксической единицы. Это либо главная программа (Program), либо что-либо иное. · Язык должен иметь средства описания ячейки памяти или области ячеек памяти, а так же операторы присваивания и операторы ввода /вывода. 2. Функциональные языки 3. Логические языки 4. Языки объектно ориентированного программирования (основываются на абстрактных типах данных)
Классификация языков по назначению 1. Научные языки (большой математический аппарат) 2. Коммерческое (фиксированный десятичный тип, записи, символьные типы) 3. Системыные (битовые структуры, битовые операции) 4. Различные специализированные языки
Практика:
Два класса: · Istream -Cin · Ostrean -Count -Cerr (поток предупреждений и ошибок)(вывод сообщений несущие критическую информацию) -Clog (информационный поток)(сообщения при отладки)
Int a; - объявление Int b=5; - инициализация
Система реализация языка. Способы которые помогают преобразовать исходный код в объектный (системы реализации языка) Существует 3 способа: · Система компиляций (компиляторов) Схема чистой компиляции:
Минусы: Ошибки показываются программисту в конце процесса(после обработки кода, поэтому зачастую локализовать ошибочный оператор бывает трудно), а не в ходе обработки кода. Плюсы: Время обработки – быстрое. Получаем exe. (мобильность)
· Схема интерпретатора языка (интерпретации языка)
Плюсы: Каждая команда либо прошла, либо не прошла. (ошибки локализуются сразу) Минусы: Работает в несколько раз дольше чем предыдущая. Нет exe.
· Система смешанной компиляции
Минусы: Нет exe. Плюсы: Более быстрое выполнение, чем в пункте 2.
Критерии оценки языков программирования. Каждая цель должна иметь измеримые критерии которые позволяют оценивать степень достижения цели в результате осуществления тех или иных стратегий реализации целей.
Система оценки языков программирования менялась с течением времени.
Классические критерии были до эры персональных компьютеров:
· Мобильность языка (связана с системой реализации языка) (язык + система реализация) (критерий мобильности был важен из-за архитектуры платформы) · Уровень языка определяет то, насколько просто писать программу на данном языке. Assembler + ЯПВУ · Мощность языка определяется разнообразием задач которые можно на языке реализовать.
Современные критерии: · Читабельность программ написанных на ЯПВУ. · Легкость создания программ на ЯПВУ. · Надежность языка программирования. · Стоимость. Эти критерии поддерживаются системой оценочных характеристик.
Цели разработки ЯПВУ (критерии 1 уровня)
Union { Int a; Float b; Double c; } Объекты данных Базовым объектом данных любого языка является переменная или ячейка памяти. Обладает 6ю характеристиками. · Имя - Идентификатор, под которым ячейка известна программе. · Адрес - (типы связей 1 имя= 1 адрес, 2 ячейки = 1 имя, 2 имя = 1 ячейка) · Содержимое переменной · Тип данных · Время жизни переменной (время в течении которого имя переменной связано с адресом)
Дата добавления: 2014-01-11; Просмотров: 871; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |