
- •Раздел і. Основные понятия и методы теории информатики и кодирования. Сигналы, данные, информация. Общая характеристика процессов сбора, передачи, обработки и накопления информации
- •Общая характеристика процессов сбора, обработки, передачи и хранения информации
- •Лекция 2 Меры и единицы количества и объема информации
- •Позиционные системы счисления (псс)
- •Соответствие чисел в различных системах счисления
- •Лекция 4 Логические основы эвм
- •Раздел іі. Технические средства реализации информационных процессов. Лекция.5 История развития эвм. Понятие и основные виды архитектуры эвм
- •Лекция 6 Состав и назначение основных элементов персонального компьютера, их характеристики
- •Лекция 7 Запоминающие устройства: классификация, принцип работы, основные характеристики
- •Лекция 8 Устройства ввода/вывода данных, их разновидности и основные характеристики
- •Лекция10. Файловая структура операционных систем. Операции с файлами
- •Лекция11. Технология обработки текстовой информации
- •Лекция12. Электронные таблицы
- •Лекция13. Технология обработки графической информации
- •Лекция 14. Средства электронных презентаций
- •Лекция15. Системы управления базами данных Состав и функции систем управления базами данных
- •Лекция16. Основы баз данных и знаний Виды структур данных
- •Банки документов
- •Банк знаний
- •Раздел іv.
- •Лекция17. Моделирование как метод познания
- •Лекция 18.Классификация и формы представления моделей
- •Лекция19. Методы и технологии моделирования Связи между объектами
- •Этапы и цели компьютерного математического моделирования
- •Лекция20. Информационная модель объекта
- •Раздел V. Алгоритмизация и программирование. Лекция 21. Понятие алгоритма и его свойства. Блок-схема алгоритма
- •Лекция 22. Основные алгоритмические конструкции. Базовые алгоритмы
- •Лекция 23. Программы линейной структуры
- •Лекция24. Операторы ветвления, операторы цикла
- •Раздел VI. Локальные и глобальные сети эвм. Защита информации в сетях. Лекция25. Сетевые технологии обработки данных
- •Лекция26. Основы компьютерной коммуникации. Принципы организации и основные топологии вычислительных сетей
- •Лекция27. Сетевой сервис и сетевые стандарты
- •Лекция28. Защита информации в локальных и глобальных компьютерных сетях
- •Раздел VII.
- •Лекция 29.Этапы решения задач на компьютерах Основные этапы решения задач на эвм:
- •Лекция 30. Понятие о структурном программировании. Модульный принцип программирования. Подпрограммы. Принципы проектирования программ сверху – вниз и снизу – вверх
- •Лекция31. Объектно-ориентированное программирование
- •Лекция 32. Эволюция и классификация языков программирования. Основные понятия языков программирования
- •Лекция33. Структуры и типы данных языка программирования
- •Лекция 34. Трансляция, компиляция и интерпретация
Лекция 34. Трансляция, компиляция и интерпретация
Большая часть работы программистов связана с написанием исходного кода, тестированием и отладкой программ на одном из языков программирования. Различные языки программирования поддерживают различные стили программирования. Единственный язык, напрямую выполняемый процессором -- это машинный язык (также называемый машинным кодом). Изначально все программисты прорабатывали программы в машинном коде, но сейчас эта трудная работа уже не делается. Вместо этого программисты пишут исходный код на языке программирования высокого уровня, и компьютер (используя компилятор, интерпретатор или ассемблер) транслирует его, в один или несколько этапов, уточняя все детали, в машинный код, готовый к исполнению на целевом процессоре.
Трансляция программы -- преобразование программы, представленной на одном из языков программирования, в программу на другом языке и, в определённом смысле, равносильную первой. При трансляции выполняется перевод программы, понятной человеку, на язык, понятный компьютеру. Выполняется специальными программными средствами (транслятором).
Трансляторы реализуются в виде компиляторов или интерпретаторов. С точки зрения выполнения работы компилятор и интерпретатор существенно различаются. Если цель трансляции - преобразование всего исходного текста на внутренний язык компьютера (т.е. получение некоторого нового кода) и только, то такая трансляция называется также компиляцией. Исходный текст называется также исходной программой или исходным модулем, а результат компиляции - объектным кодом или объектным модулем. Если же трансляции подвергаются отдельные операторы исходных текстов и при этом полученные коды сразу выполняются, такая трансляция называется интерпретацией. Поскольку трансляция выполняется специальными программными средствами (трансляторами), последние носят название компилятора или интерпретатора, соответственно.
Цель трансляции -- преобразовать текст с одного языка на другой, который понятен адресату текста. В случае программ-трансляторов, адресатом является техническое устройство (процессор) или программа-интерпретатор.
Виды трансляторов
Трансляторы подразделяют на:
Адресный. Функциональное устройство, преобразующее виртуальный адрес в реальный адрес
Диалоговый. Обеспечивает использование языка программирования в режиме разделения времени.
Многопроходной. Формирует объектный модуль за несколько просмотров исходной программы.
Обратный. То же, что детранслятор (декомпилятор, дизассемблер).
Однопроходной. Формирует объектный модуль за один последовательный просмотр исходной программы.
Оптимизирующий. Выполняет оптимизацию кода в создаваемом объектном модуле.
Синтаксически-ориентированный (синтаксически-управляемый). Получает на вход описание синтаксиса и семантики языка и текст на описанном языке, который и транслируется в соответствии с заданным описанием.
Тестовый. Набор макрокоманд языка ассемблера, позволяющих задавать различные отладочные процедуры в программах, составленных на языке ассемблера
Компиляция -- преобразование программой-компилятором исходного текста программы, написанного на языке высокого уровня в машинный язык, в язык, близкий к машинному, или в объектный модуль. Результатом компиляции является объектный файл с необходимыми внешними ссылками для компоновщика.
Компилятор читает всю программу целиком, делает ее перевод и создает законченный вариант программы на машинном языке, который затем и выполняется.
Виды компиляции
Пакетная. Компиляция нескольких исходных модулей в одном пункте задания.
Построчная. То же, что и интерпретация.
Условная. Компиляция, при которой транслируемый текст зависит от условий, заданных в исходной программе. Так, в зависимости от значения некоторой константы, можно включать или выключать трансляцию части текста программы.
Интерпретация -- процесс непосредственного покомандного выполнения программы без предварительной компиляции, «на лету»; в большинстве случаев интерпретация намного медленнее работы уже скомпилированной программы, но не требует затрат на компиляцию, что в случае небольших программ может повышать общую производительность.
Типы интерпретаторов
Простой интерпретатор анализирует и тут же выполняет (собственно интерпретация) программу покомандно (или построчно), по мере поступления её исходного кода на вход интерпретатора. Его достоинство - мгновенная реакция. Недостаток -- такой интерпретатор обнаруживает ошибки в тексте программы только при попытке выполнения команды (или строки) с ошибкой.
Интерпретатор компилирующего типа -- это система из компилятора, переводящего исходный код программы в промежуточное представление, например, в байт-код или p-код, и собственно интерпретатора, который выполняет полученный промежуточный код (так называемая виртуальная машина). Его достоинство - большее быстродействие выполнения программ (за счёт выноса анализа исходного кода в отдельный, разовый проход, и минимизации этого анализа в интерпретаторе). Недостатки -- большее требование к ресурсам и требование на корректность исходного кода.
Для создания программы на выбранном языке программирования нужно иметь следующие компоненты.
Текстовый редактор. Подобные редакторы созданы для всех популярных языков и дополнительно могут автоматически проверять правильность синтаксиса программы непосредственно во время ее ввода.
Исходный текст с помощью программы-компилятора переводится в машинный код, компилятор обычно выдает промежуточный объектный код
Исходный текст большой программы состоит, как правило, из нескольких модулей. Каждые модули компилируются в отдельные файлы с объектным кодом, которые затем надо объединить в одно целое. Кроме того, к ним надо добавить машинный код подпрограмм, реализующих различные, стандартные функции. Такие функции содержатся в библиотеках, которые поставляются вместе с компилятором. Сгенерированный код модулей и подключенные к нему стандартные функции надо не просто объединить в одно целое, а выполнить такое объединение с учетом требований операционной системы, то есть получить на выходе программу, отвечающую определенному формату. Объектный код обрабатывается специальной программой – редактором связей или сборщиком.
Исполнимый код – это законченная программа, которую можно запустить на любом компьютере, где установлена операционная система, для которой эта программа создавалась. Файл имеет расширение .EXE
Жизненный цикл программного обеспечения включает в себя:
Формирование требований к программному обеспечению
Проектирование
Реализация
Тестирование
Ввод в действие
Эксплуатация и сопровождение
Снятие с эксплуатации
Формирование требований к ПО включает в себя следующие последовательности шагов:
Планирование работ
Проведения обследования деятельности автоматизированного объекта
Построение модели, отражающей существующие на момент обследования особенности функционирования организации
Собственно формирование требований к ПО, предполагающее определение следующих характеристик для каждого комплекта программного обеспечения: функциональных возможностей, внешних интерфейсов, спецификаций надежности и безопасности, требований к формам представления используемых данных, требований к пользовательской документации, требований к эксплуатации и сопровождению.
Этап проектирования и тестирования охватывает работы по созданию ПО и его компонентов в соответствии с заданными требованиями, включая подготовку проектной и эксплуатационной документации, материалов для проверки качества программных продуктов, руководств для обучения персонала.
Этап ввода в действие предполагает установку разработанного ПО на оборудование заказчика. При этом осуществляется полномасштабная проверка работоспособности ПО и баз данных в реальных условиях эксплуатации.
Этап эксплуатации и сопровождения включает в себя весь комплекс работ по обслуживанию и развитию разработанного ПО до момента снятия его с эксплуатации. Под сопровождением понимается внесение изменений в ПО в целях исправления ошибок, повышения производительности или адаптации к изменившимся условиям работы или требованиям.