Метка: Код
Пакет целевой компиляции
В состав пакета целевой компиляции входят целевой ассемблер и целевой компилятор. Целевой ассемблер отличается от обычного встроенного ассемблера форт-системы только тем, что строит машинный код не в инструментальном адресном пространстве от текущей вершины словаря," которая дается словом HERE (здесь), а в целевом. Указатель в целевом адресном пространстве обычно обозначается словом THERE (там) внутри самого пакета, который пользуется обоими этими указателями. Для того чтобы получить целевой ассемблер из исходного инструментального, как...
Выбор по целому
Выбор по целому — распространенная конструкция в языках программирования. Она является обобщением условного оператора, который осуществляет выбор между двумя последовательностями операторов— частью «то» и частью «иначе» — по логическому значению (ИСТИНА или ЛОЖЬ) условия. В конструкции выбора по целому в качестве значения условия выступает целое число, и выбор осуществляется между несколькими альтернативными ветвями, каждая из которых соответствует определенному значению условия или некоторому множеству таких значений. Как правило,...
Слова CASE (выбор) и ENDCASE (конец выбора)
Слова CASE (выбор) и ENDCASE (конец выбора) ограничивают конструкцию и обеспечивают правильную компиляцию вложенных операторов. Слово CASE , проверив, что текстовый интерпретатор находится в состоянии компиляции, сменяет глобальную переменную CSP (сокращение от CURRENT STACK POINTER — текущий указатель стека), сохраняя на стеке ее прежнее значение (слово !CSP засылает в переменную CSP адрес текущей вершины стека). Слова OF (из) и ENDOF (конец из) ограничивают отдельную ветвь. Во время работы скомпилированного определения перед началом исполнения каждой ветви на...
Адрес поля параметров
Если это определение исполняется сразу после переменной или константы (в контексте П или К), то оно преобразует адрес поля параметров соответствующей статьи, который находится в этот момент на вершине стека, в значение данной переменной или константы. Для всех других случаев (контекст FORTH ) преобразования стека не происходит. Именно по этой причине определения ЗНАЧ в списках П и К по завершении их исполнения переключают текущий контекст на FORTH , а в списке FORTH присутствует определение ЗНАЧ с пустым действием. Последнее обстоятельство гарантирует...
Многозадачный режим
Запуская на исполнение какое-либо форт-слово, программист имеет возможность исполнить следующее только это завершении исполнения предыдущего. Если исполнение данного слова требует значительного времени счета, то длительные перерывы в диалоге создают определенное неудобство. Ввиду этого представляется весьма привлекательной идет многозадачной форт-системы, в которой программист может создавать фоновые задачи и запускать их на исполнение, не прерывая диалога. Текстовый интерпретатор такой системы, обеспечивающий диалог, является...
ЦИКЛ-ДО
Этот вариант базовой структуры ЦИКЛ называют ЦИКЛ-ДО. Тот или иной вариант структуры ЦИКЛ используется при составлении алгоритмов в зависимости от особенностей конкретной задачи. Расстановка значений истинности да и нет в изображении структур циклов, вообще говоря, может быть произвольной. Однако способ их расстановки, принятый на рисунке, не случаен, а является выражением определенного стандарта, объясняющего в том числе и сами названия структур (ЦИКЛ-ПОКА и ЦИКЛ -ДО). В первом случае тело цикла исполняется, ПОКА — условие Р истинно;...
Конкатенация значения
Искомый текст формируется в результате поочередной конкатенации значения переменной Т$ (ее начальное значение — пустой текст ) со всеми элементами литерного массива, получающими значения имен членов звездочки. Вслед за каждым именем в формируемом тексте появляется пробел. Закончив формирование, ЭВМ выдает результат:
ЗВЕЗДОЧКА:
ДИМА ЮЛЯ ПАВЛИК МАРИНА ВАНЯ
С помощью операторов FOR — NEXT особенно эффективно программируются алгоритмы с вложенными циклами.
Пример 4.4.7. Составить программу вычисления и печати элементов таблицы Пифагора.
Таблица...
Множество
Множество — это любой набор объектов одного типа, воспринимаемый как целое. Элементом множества является все, что может быть именем в Паскале. Множества задаются в квадратных скобках или перечислением, или указанием диапазона. Например:
2, 8, 73
5, 9... 14, 19 4
КРАСНЫЙ, ГОЛУБОЙ, ЗЕЛЕНЫЙ, БЕЛЫЙ
Задание множества указанием диапазона включает нижнюю и верхнюю границы значений, разделенных двумя последовательными точками. Над множеством в Паскале можно производить операции присваивания (: = ), отношения (==, Ф, объединения ( + ), пересечения (>Ю, вычитания...
Особенности учебно-производственного языка Рапира
Многие интересные идеи программирования воплощены в языке Рапира, который разработан в начале 80-х годов в СССР как диалоговый учебно-производственный язык и получил распространение на школьных компьютерах. Приятной особенностью языка Рапира является то, что в основу конструирования его ключевых слов положена русская транскрипция — это облегчает составление и чтение программ, написанных на этом языке.
В алфавит Рапиры вошли русские и латинские буквы, арабские цифры, а также достаточно стандартный набор специальных символов, среди которых...
Рекурсия
Очень элегантным и универсальным методом, заслуживающим рассмотрения в отдельном подразделе, является рекурсия. Рекурсия была разработана специалистами по фундаментальной математике как средство для определения функций и в дальнейшем применялась в математической логике. Поскольку эти науки тесно связаны с теоретическими основами вычислительной техники, рекурсия является важным для нас понятием. -С этой точки зрения важность рекурсии заключается в том, что она позволяет описывать алгоритмы в элегантной и сжатой форме. Рекурсивные...
Компиляция
Именно поэтому невозможно разработать компилятор, который бы во время компиляции выдавал все сообщения о несоответствиях стандарту. Некоторые из них не удается выявить до момента прогона программы.
Тех нестандартных конструкций, которые при прогоне на разных машинах дают разные результаты, следует избегать во что бы то ни стало.
Если Вы направите алгоритм в журнал, публикующий алгоритмы, то обнаружите, что там готовы принять любой, работоспособность которого можно продемонстрировать на какой-либо конкретной машине. Так, иногда в журнале...
