Понятие трансляции

Программирование

XVI. Основы технологии программирования

Рехеширование

Рехеширование – переразмещение таблицы.

Существует эмпирическое правило, согласно которому нецелесообразно расширять таблицу до того момента, когда она заполнится на 80%, если каждый элемент должен выбираться только один раз.

Имеет смысл удвоить размер таблицы, заполненной на 40%, если каждый элемент будет выбираться в среднем 6 раз.

Недостаток хеш-таблицы заключается в трудности исключения из них произвольного элемента. Исключенная позиция не может быть освобождена, т.к. это может нарушить цепочку ссылок.

 


5 мая

 

СРС: Построить граф или семантическую сеть (от программирования до трансляции).

 

 

 

ПРОГРАММИРОВАНИЕ – совокупность работ по конструированию, написанию и

тестированию программ.

СТ ИСО 2382/1-84

ПРОГРАММИРОВАТЬ– конструировать, писать и тестировать программы.

СТ ИСО 2382/1-84

ПРОГРАММНЫЙ МОДУЛЬ – языковая конструкция, состоящая из процедур и

описаний данных, которая допускает сочетания и с другими конструкциями аналогичного типа.

СТ ИСО 2381/15-85

 

Формула великого программиста (ВП):

ВП = 50%К + 30%Т + 10%О + 5%З + 5%ТЛ

К – знать, КАК это делать

Т – ТРУДОЛЮБИЕ

О – ОПЫТ

З – ЗНАНИЯ

ТЛ – ТАЛАНТ

Сложности программ:

Количество операторов Программа
Простая
Средней сложности
Сложная
Сверхсложная
> 10000000 Гиперсложная

 

Трансляция программы – преобразование программы, представленной на одном

из языков программирования (см. стр.), в программу на другом языке и в определенном смысле равносильную первой.

СТ ИСО 282/7-77

Транслятор – машинная программа, которая транслирует с одного языка на другой, в

частности, с одного языка программирования на другой.

СТ ИСО 282/7-77

Исходная программа – машинная программа, выраженная на исходном языке.

СТ ИСО 282/7-77

Выходная программа – машинная программа на выходном языке, которая была

получена при трансляции с исходного языка.

СТ ИСО 282/7-77

Выходной язык – язык, в который транслируются предложения.

СТ ИСО 282/7-77


Требования трансляции:

- независимость от архитектуры,

- любая языковая программа отличается своей семантикой, грамматикой, поэтому трансляция может быть выполнена сначала в некоторый промежуточный код; а промежуточный код в машинный.

Виды трансляции:

- интерпретация (Basic, MS Office, VBA),

- компиляция (C, Pascal, Oberon, C# и др.).

Интерпретация – перевод по предложению в машинный код и моментальное

выполнение программы.

СТ ИСО 2382/7-77

Интерпретатор – программное или техническое средство, выполняющее

интерпретацию.

СТ ИСО 2382/7-77

Интерпретировать – произвести трансляцию и выполнение каждого предложения

исходного языка машинной программы перед трансляцией и исполнением следующего предложения.

СТ ИСО 2382/7-77

Компиляция – перевод текста программы в машинный код.

СТ ИСО 2382/7-77

Компилировать – проводить трансляцию машинной программы с проблемно-

риентированного языка на машинно-ориентированный язык.

СТ ИСО 2382/7-77

Компилятор – машинная программа, используемая для компиляции.

СТ ИСО 2382/7-77

Синтаксичес- кий анализ
Генератор кода
Лексический анализ текста

программа на лексе- компи- машинный

ЯВУ[8] мы лятор код

Таблица

 

 

Рис. 20. Упрощенная модель компилятора