Анимация
JavaScript
|
Главная Библионтека 10.9. Основные этапы: 1. Проверка нахождения метки в таблице символов - не может сделать переход в блок 2. Генерация кода для настройки DISPLAY, если осуществляется переход из блока. 3. Генерация команды jump. 10.10. С точки зрения разработчика компилятора - хорошая, так как ее легко прочитать. Во время трансляции команд промежуточного кода требуется поиск в таблице. Глава 11 11.1. Преимущества - появится возможность воспользоваться стандартным редактором связей и ассемблером. Недостатки - возможно, менее эффективно; требуется дополнительный 11.2. 1. read ((add/, add2)); convert (add/, /); convert (add2, 2); print ((newline, X6, «MOVE 1 /»)) 2. read ((label, add/)); convert (addI, I), print ((newline, X6, «LDXI 0(1)», newline, X6, «BGT 1", Х2, label)) Допускается, что все адреса базируются на стеке. 11.3. Генерировать, например, LDX /0(1)3 + f= 4 2x4 = 5 11.4. Во многих языках нельзя печатать L, за которым сразу же следует целое число. 11.5. Описывая все подобные идентификаторы на самом внешнем уровне. Преимущество - меньше описаний. Недостаток - вероятно, менее удобочитаемый код. 11.6. Когда одно действие во время компиляции генерировало более (например) восьми команд в коде Ассемблера. 11.7. Не все значения могут поместиться в регистр. 11.8. Всякий раз, когда необходимо переписать значение, например, при выходе из блока. 11.9. Придется всегда запоминать две последние команды, генерируемые в коде Ассемблера. 11.10. Проверять каждый безусловный переход - не приводит ли он к другому безусловному переходу. Глава 12 12.1. Нет. 12.2. Ошибки могут быть обнаружены на более ранней стадии, так как компилятор не путает слова языка с идентификаторами, определяемыми пользователем, что возможно в Фортране и ПЛ/1. 12.3. Способствовать ошибкам могут произвольные правила. Исследования показали, что употребление в качестве разделителя «;», а не терминатора приводит к большему числу ошибок программирования, как и чрезмерное употребление некоторых литер. 12.4. Строгая печать позволяет выдавать более четкие сообщения об ошибках (см. также упражнение 12.2). 12.5. х; end интерпретируется как х semi-colon dummy statement end 12.6. Открывающие и закрывающие символы комментария не идентичны. 12.7. Нет. 12.8. Нет. Их будет, вероятно, слишком много. 12.9. Чтобы программа прошла быстрее. Полезно, но опасно. 12.10.Необходимо пересылать таблицы и т. п. по мере того, как они будут заполнять первоначально выделенный им объем памяти. ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Абсолютный номер блока 135 Абстрактная машина 127 Автомат 426, 53, 56 Автомат магазинного типа 30, 58, 88 Адрес 13, 14,49, 123, 129, 138, 139, 140-165, 173, 182 4, 202 поле 13 тип 167, 173, 179, 182 Адрес возврата 76, 192 Аксиома 25 Алгоритм 37, 651 74, 80, 100, ПО, 116, 123, 125, 133, 141, 157, 163, 166, 178, 185, 189, 194 Алгоритм исправления 190 Алгоритм подбора слова 187 Алгоритм Уоршалла 68 Алфавит 23, 24, 42, 131 Алфавит магазинный 57 Алфавит порядок 130, 133, 142 АЪбом (сегментов программы) 2003 Анализ 8, 16, 49, 109, 125, 164, 200 Анализатор 16, 31, 34, 61, 7, 122, 129, 187, 188, 195, 200 Апостериорный вид 177, 196 Априорный вид 177, 196 Арифметическое выражение 109 Арифметическое устройство 14 Ассемблер 14 код 14, 164, 181, 182, 185 подпрограмма 181, 185 Атрибут 33, 34, 125 Атрибутивная грамматика 33, 34, 39, 125, 200 Аффиксная грамматика 39 База 98 конфигурация 97 множество Базовый Байт Безусловный Бесконечный 98 147 143 215 191 адрес 13, переход цикл Бинарная четверка Бинарное дерево 132, 133, 163, 166 Бинарный оператор 12 Бит 13, 159 I Блок 34, 51, 11318, 12, 126, 134- 138, 144И57, 162, 170, 175, 184, 195 вход 4, 153, 175 втход 114, 153, 175 номер 167, 175, 181, 182 структура 11, 113, 134, 155, 156 таблица 135, 136, 168, 170, 171, 175, 182 уровень 48, 153, 195 номер 114, 137, 168, 175, 182 Блочный структурный язык 3, 163 Вариант (в Паскале) 154, 163 Вариантное предложение 122, 123, 181, 183, 201 Ввод (вход) 10, 43, 7, 118, 126, 189, 193, 203 алфавит 57 символ 44 57, 76, 936, 192 строка 62 Ведение 125 Ведущая подстрока предложения 90 Векторизация 176 Верхний предел (стека) 173 Верхний стек 171 Верхняя граница (массива) 147 Вершина (дерева) 132, 133, 142 Вершина-наследник 133 Вершины (матрицы) 68 Ветвь else 172 Ветвь then 72 Ветвь whle"4, 191 Вещественное число 46 Взаимно-рекурсивные виды 1 12заимно-рекурсивные процедуры Взаимно-рекурсивные типы 119 Вид 12, 17, 18, 33, 34, 49, 51, 53, Из, 9- 122, 124, 125, 12942, 152, 154, 168, 173-178, 196, 199, 200 изменение 140 информация 124, 125, 140, 175 описание 141 - 142, 155, 196 описатель 140 представление 140 проверка 178 просмотр 185 структура 139 таблица 17, 128, 12942, 168, 17, 175, 181, 184 эквивалентность 141 Вид компонента 154 Вид, определяемый пользователем 51, 2, 121, 125, 135 Вид, составляющий объединение 141 Видимость идентификаторов 138 Включающий блок 146 Включение символов 186, 19194 Включение действий в грамматику 109, 117, 118 Внешний блок 137, 156 Внутренний блок 138,2 Возврат 39, 44, 54, 58, 59, 83, 194 Время 159, 160 Время компиляции 17, 52, 80, 124, 144- 149, 154, 168, 172, 178, 179, 185, 186, 19698 анализ 145 глобальные переменные 181 действие 83, 8, 171 - 173, 184 значение 202 информация 6, 9 представление 60 Время прогона 11, 17, 21, 14449, 153, 154, 173, 179,185, 186, 197 6, 128, 129, 146, 152, 164, 167- 168, 179, 181, 184 действие 179 код 2, 177, 179 ошибка 186, 18798 система 197 стек 144, 15053, 16063 Вторичное хеширование 132 Выбирающее предложение 178 Выбор 177 Вывод (втход) 10, 51, 117, 126, 134, 199 Выделенное слово (Алгол 60) 187 Выделенное слово (Алгол 68) 49, 51, 120, 188 фаза 124 таблица 125 Выделенн1й идентификатор 49 Выделенн1й символ 52 Вызов 125, 152, 181, 184, 202 по значению 150 по значению и результату 151, по имени 150, 151 по результат! 1 по ссылке 151, 152, 163 стандартного знака операции 183 Выражение 9, 17, 18, 10911, 121, 143, 144, 14851, 163, 16474, 180, 197 Вырезка (массива) 124, 125 Выровненная вправо грамматика 27 Выясняющее предложение 105, 191 Генератор 135, 156 Гибкий массив 48 Гиперправило 32 Глобальное описание 181 Глобальная оптимизация 179 Глобальная память 143, 156 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 [ 65 ] 66 67 68 69 |