- •Информатика
- •Введение
- •1. Общие сведения об информатике
- •1.1. Информатика как наука
- •1.2 Определения информации
- •1.3. Виды информации
- •1.4. Структура информации
- •1.5. Требования, предъявляемые к социальной информации
- •Контрольные вопросы и задания:
- •2. История развития вычислительной техники
- •2.1. Ручной период вычислений или период абака
- •2.2. Механический период
- •2.3. Электромеханический период
- •2.4. Электронный период
- •Контрольные вопросы и задания
- •3. Поколения эвм
- •Контрольные вопросы и задания:
- •4. Сферы использования эвм
- •Контрольные вопросы и задания
- •5. Принципы построения эвм. Структура эвм, назначение основных блоков
- •5.1. Структура машины фон-неймановского типа
- •5.2. Назначение основных блоков эвм
- •5.2.1 Процессор
- •5.2.1 Устройства ввода-вывода
- •Контрольные вопросы и задания:
- •6. Персональные компьютеры
- •6.1. Современный настольный персональный компьютер
- •Контрольные вопросы и задания:
- •7. Двоичная система счисления
- •Контрольные вопросы и задания:
- •8. Память, ее характеристики
- •8.1. Определения. Единицы емкости памяти
- •8.2. Принципы устройства памяти
- •8.3. Виды памяти.
- •8.4. Внешние запоминающие устройства
- •Контрольные вопросы и задания:
- •9. Языки программирования современных эвм. Этапы разработки программ
- •9.1. Понятие программы
- •9.2. Машинный язык и языки программирования высокого уровня
- •9.3. Компиляторы и интерпретаторы языков программирования
- •9.4. Лингвистическое обеспечение современных эвм.
- •9.5. Этапы разработки программ для эвм
- •Контрольные вопросы и задания:
- •10. Программное обеспечение современных эвм
- •10.1. Роль программного обеспечения
- •10.2. Понятие об операционной системе
- •10.3. Основные задачи, решаемые ос пэвм
- •10.4. Современные операционные системы
- •10.5. Понятие интерфейса ос
- •10.6. Классификация операционных систем. Современные операционные системы
- •10.7. Оболочки операционных систем
- •Наиболее распространенные оболочки
- •10.8. Прикладное программное обеспечение
- •10.8.1.Текстовые редакторы
- •10.8.2. Табличные процессоры
- •10.8.3. Базы данных и субд
- •Контрольные вопросы и задания:
- •11. Алгоритмы
- •11.1. Понятие алгоритма
- •11.2. Свойства и состав алгоритмов
- •11.3. Способы записи алгоритмов. Блок-схемы
- •11.4. Базовые структуры алгоритмов: следование, ветвление, цикл
- •Контрольные вопросы и задания:
- •12. Информационные системы. Основные понятия и классификация
- •12.1. Классификация информационных систем
- •12.1.1. Классификация по масштабу
- •12.1.2. .Классификация по целям.
- •12.1.3. Классификация по способу организации
- •12.2. Архитектуры информационных систем
- •Контрольные вопросы и задания:
- •13. Понятие программного продукта. Качество и жизненный цикл программного продукта
- •13.1. Программный продукт. Особенности разработки программного обеспечения
- •Характеристики качества программного обеспечения
- •13.2. Качество программных продуктов
- •13.3. Показатели эффективности разработки программного обеспечения
- •13.4. Жизненный цикл программного обеспечения информационных систем
- •13.4.1.Основные этапы жизненного цикла по
- •13.4.2. Структура жизненного цикла по
- •13.4.3. Модели жизненного цикла по
- •Контрольные вопросы и задания:
- •14. Методология и технология разработки программного обеспечения
- •14.1. Методологии и инструменты проектирования
- •14.2. Методы и средства структурного анализа и проектирования
- •14.3. Диаграммы потоков данных
- •14.3.1. Основные символы
- •Основные элементы dfd диаграммы
- •14.3.2. Контекстная диаграмма и детализация процессов
- •14.3.3.Спецификация процесса (описание операций)
- •14.3.4. Диаграммы сущность связь
- •14.4. Методология rad
- •Контрольные вопросы и задания:
- •15. Тестирование и отладка программ
- •15.1.Понятие тестирования и отладки программ
- •15.2. Классификация ошибок, способы их выявления и устранения
- •Контрольные вопросы и задания:
- •16. Передача информации. Компьютерные сети основные понятия
- •16.1. Формы передачи информации на большие расстояния
- •16.2. Передача информации между компьютерами
- •16.3. Компьютерные сети
- •16.4. Классификация сетей
- •16.5. Локальные сети. Общие понятия
- •16.6. Глобальная сеть Internet. Общие понятия
- •Контрольные вопросы и задания:
- •17. Основы защиты информации
- •17.1. Способы несанкционированного доступа к компьютерной информации
- •17.2. Компьютерные вирусы и защита от них
- •17.2.1. Способы проявления компьютерных вирусов
- •17.2.2. Защита от поражения компьютерными вирусами
- •17.3. Нормативно правовая база защиты информации
- •Контрольные вопросы и задания:
- •18. Современная вычислительная техника (аналоговая и дискретная)
- •18.1. Аналоговая вычислительная техника
- •18.2. Основные характеристики авм
- •18.3. Гибридная вычислительная техника
- •18.4. Сравнительные характеристики аналоговой и дискретной техники
- •Контрольные вопросы и задания:
- •Библиография
- •Оглавление
9.3. Компиляторы и интерпретаторы языков программирования
Важно различать язык программирования и реализацию этого языка. Сам язык – это система записи, набор правил, определяющих синтаксис программы. Реализация этого языка – это программа, которая преобразует запись высокого уровня в последовательность машинных команд.
Имеются два основных вида средств реализации языка: компиляторы и интерпретаторы. Компиляторы транслируют весь текст программы, написанной на языке высокого уровня в машинный код в ходе одного непрерывного процесса. При этом создается полная программа, в машинных кодах, которую затем можно выполнять без участия компилятора. Работа с компилятором состоит из трех этапов: сначала текст программы создается при помощи редактора текстов или какой-либо другой программы текстовой обработки, затем текст компилируется, и наконец, скомпилированная программа выполняется.
Первая программа-компилятор была создана полковником ВВС США Грейс Хоппер в 1951году.
Интерпретаторы переводят на машинный язык по одному предложению программы по ходу ее выполнения.
Работа компиляторов и интерпретаторов отличается как работа переводчиков иностранного текста, написанного на бумаге и синхронного переводчика живой речи. Переводчик с листа выдает полный перевод написанного сразу, а синхронный переводчик переводит фразу за фразой.
9.4. Лингвистическое обеспечение современных эвм.
Языки высокого уровня были большим шагом вперед в предоставлении возможности работы на ЭВМ не только программистами высокого уровня, но и рядовыми пользователями. По мере развития ВТ круг задач, решаемых ЭВМ расширяется, и в настоящее время не только решают математические задачи, большей частью они теперь обрабатывают информацию различного вида. Поэтому современная ВТ требует соответствующего лингвистического обеспечения. Для лингвистического обеспечения современных вычислительных систем и их программного обеспечения служат формальные языки различного изобразительного уровня и назначения. Их можно разбить на пять уровней:
Программное обеспечение |
Языки работы с программами |
Уровни |
Сети ЭВМ -
Операционные оболочки (ОО) –
Операционные системы –
Прикладное ПО (ППО) -
Инструментальное ПО - |
Сетевые командные языки –
Языки работы с оболочкой –
Языки работы с операционными системами -
Языки прикладного ПО –
Языки программирования высокого уровня |
V
IV
III
II
I |
В локальных и/или глобальных вычислительных сетях функцию общения с их ресурсами выполняют сетевые командные языки -V, позволяющие инициировать работу в сети (определение режимов доступа к ресурсам, начальных установок и др.), управлять работой сети, использовать ресурсы сети (конфигурация сети, электронная почта, управление печатью и др.) и т.д.
Интерфейс ОО обеспечивают языки графического, командного, табличного типов, типа меню или смешанного типа -IV.
В качестве лингвистического обеспечения ОС выступают языки командного типа и языки управления заданиями - III. Например, MS DOS и OS/2 используют языки командного типа. Языки ОС позволяют использовать и управлять вычислительными ресурсами ЭВМ. Средства ППО располагают собственными языками - II, обеспечивающими как интерфейсные функции (инсталляции, запроса обслуживающих функций, управление режимами, выполнение работ в среде пакета, инструментальные (например, разработку документов в среде пакета)).
И, последнее: инструментальное ПО включает современные языки программирования различного типа и назначения - I, это ЯВУ о которых мы уже говорили.