Понятие трансляции
Программирование
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. Упрощенная модель компилятора