- •Оглавление
- •Архитектура вычислительных систем
- •Этапы развития вычислительных машин
- •Фон неймановская архитектура
- •Типы структур вычислительных машин и систем
- •Вычислительная система с общей памятью
- •Распределенная система
- •Классификация параллельных вычислительных систем
- •29.09.2011
- •Способы ускорения традиционных архитектур
- •01.10.2011
- •Супер скалярные процессоры
- •06.10.2011 Кэш-память
- •Алгоритмы замещения информации в заполненной кэш-памяти.
- •27.10.2011 Расслоенная память Блочная организация основной памяти
- •Структура основной памяти на основе блочной схемы
- •Циклическая организация
- •Блочно-циклическая схема расслоения памяти
- •Архитектура с сокращенным набором команд
- •КлассSimd
- •Структура типа память-память и регистр-регистр
- •03.11.2011 Матричные вычислительные системы
- •Контроллер массива процессоров
- •Массив процессоров
- •10.11.2011 Ассоциативные вычислительные системы
- •Вычислительные системы с систолической структурой
- •Классификация систолических структур
- •Основы теории вычислительных систем
- •Задача синтеза
- •Модели вычислительных систем
- •Статистические модели
- •Аналитические методы
- •Имитационные модели
- •Экспериментальные методы
- •24.11.2011 КлассMimd
- •Симметричные мультипроцессорные системы (smp)
- •Архитектура с общей шиной
- •Классификация кластеров
- •01.12.2011 Топологии кластеров
- •Системы с массовой параллельной обработкой (mpp-системы)
- •Транспьютеры
- •08.12.2011 Вычислительные системы с неоднородным доступом к памяти (cc-numa)
- •Вычислительные системы с обработкой по принципу волнового фронта
- •Надежность и отказоустойчивость вычислительных систем
- •Трансляторы
- •10.12.2011
- •Варианты взаимодействия двух трансляторов
- •Многопроходная трансляция
- •Однопроходная трансляция
Трансляторы
Транслятор – программа, преобразующая исходных код, представленный на языке программирования, в рабочую программу на объектном языке.
Трансляторы разделяются на 3 группы: ассемблеры, компиляторы и интерпретаторы.
Ассемблер – системная служебная программа, преобразующая символические команды в команды машинного языка.
Ассемблеры осуществляют дословную трансляцию одной символьной команды в одну машинную.
Компилятор – обслуживающая программа, выполняющая трансляцию на машинный язык программы, написанные на исходном языке программирования.
Интерпретатор – программа или устройство, осуществляющее пооператорную трансляцию и выполнение исходной программы. В отличие от компилятора, не порождает программу на машинном языке. Распознав команду машинного языка, сразу выполняет ее.
Эмулятор – программа или программно-техническое устройство, обеспечивающее возможность без перепрограммирования выполнять на данной вычислительной машине программу, использующую коды операций, отличные от использующихся на данной ЭВМ.
Перекодировщик – программа или программное устройство, переводящее программу на машинном языке одной ЭВМ в программу на машинном языке другой ЭВМ.
Макропроцессор – программа, обеспечивающая замену одной последовательности символов другой. Является разновидностью компилятора, осуществляющего генерацию выходного текста при помощи специальных вставок, расположенных в исходном тексте. Вставки оформляются специальным образом и принадлежат специальному языку, названному макроязыком.
Синтаксис – совокупность правил образования семантически значимых последовательностей символов в данном языке.
Семантика – правила и условия, определяющие соотношения между элементами языка и их смысловыми значениями, а также интерпретацию значений.
10.12.2011
Общее свойства и закономерности присущи как самим языком программирования, так и трансляторам с этих языков.
Рассмотрим фазы процесса трансляции, существующие в компиляторе. Выделаются:
Фаза лексического анализа;
Фаза синтаксического анализа, состоящая из распознавания синтаксической структуры, семантического разбора, в процессе которого осуществляется генерация промежуточного представления или модели адекватности языка;
Фаза генерации кода, осуществляется семантического анализ компонент промежуточного представления или объектной модели языка и их переход период в объектный код;
Наряду с основными фазами процесса трансляции, возможны дополнительные фазы:
Исследования и оптимизации промежуточного построения;
Фаза оптимизации объектного кода;
Рисунок 46 Лексический анализатор
Лексический анализатор осуществляет чтение входной цепочки символов и их группировку в элементарные конструкции, называемые лексемами.
Синтаксический анализатор осуществляет разбор исходной программы, использую поступающие лексемы, построение синтаксической структуры программы и семантический анализ с формирование объектной модели языка.
Анализатор ошибок получает информацию об ошибках в различных блоках трансляции. Используя полученную информацию, он формирует сообщения пользователю. Может пытаться исправить ошибку, чтобы продолжить разбор дальше. На него также возлагаются действия, связанные с корректным завершением программы в случае невозможности продолжения трансляции программы.
Генератор кода строит объектный код на основе анализа объектной модели или промежуточного представления.