Cтраница 2
Реализуйте поиск в глубину с использованием стека для графов, которые представлены списками смежности. [16]
Напишите программу, которая с использованием стека магазинного типа преобразует постфиксное выражение в инфиксное. [17]
Принцип работы СР основан на использовании динамического рабочего стека. Рабочий стек набивается ссылками к данным. Этот процесс набивки стека ссылками продолжается до появления в объектной строке символа операции. В этот момент включается в работу арифметический блок центрального процессора и выполняет соответственно двуместную или одноместную операцию в зависимости от кода операции. Следует заметить, что для того, чтрбы арифметический блок мог работать, в стеке должна оказаться последняя ссылка на операнд. В стеке не может быть размещена ссылка на следующую ссылку. Исчисление последней ссылки является сложной функцией центрального процессора и подчас требует многоступенчатого поиска по таблицам имен, вычисления индексов для определения ссылки к элементу структуры. [18]
Объявляя переменные глобально, можно сократить использование стека. Если вы объявляете переменные вне процедуры, компьютеру не надо при каждом вызове процедуры выделять новую память. [19]
Возможен несколько лучший вариант, предусматривающий использование стека фиксированного размера и комбинирование алгоритмов Аи В. [20]
Упрощенные таблицы локальной среды и обработка ссылок в Фортране. [21] |
В основе этого метода моделирования лежит использование центрального стека таблиц локальной среды. Пространство для таблицы среды не резервируется рядом с командами подпрограммы. Вместо этого для фактически вызванных подпрограмм используется по мере необходимости пространство из центрального стека. Первоначально в стеке содержится только таблица для главной программы. Когда главная программа вызывает подпрограмму Р, создается таблица для Р, которая помещается на вершину стека. Когда Q заканчивается и возвращает управление Р, таблица для Q удаляется со стека. [22]
В предыдущей главе была рассмотрена основанная на использовании стеков абстрактная машина для вычисления функциональных выражений, написанных в соответствии с нотацией А-исчисления. Как мы видели, эта машина наиболее удобна для реализации вычислений аппликативного порядка, соответствующих вызовам по значению Расширение области применения машины с целью поддерживать вызовы по необходимости требует введения дополнительных структур для явного представления задержек В этой главе будет рассмотрен совсем другой подход к вычислению лямбда-выражений, при котором мы допускаем представление выражений в виде графов, а не в виде линейных текстовых строк. Результирующая модель вычислений по очевидным причинам называется редукцией графов. Одно очевидное преимущество заключается в том, что в графовом представлении легко выразить разделение; нам не нужна дополнительная структура, такая, как контекст, для запоминания связей ( разделяемых) переменных, поскольку на ( разделяемый) подграф можно ссылаться любое число раз с помощью указателей. Второе преимущество данного представления в том, чю вычисление нормального порядка в этом случае легко представляется и относительно эффективно реализуется. Все это делает редукцию графов особенно естественным инструментом Для поддержки вызовов по необходимости и, следовательно, ленивого вычисления в функциональных языках. [23]
Архитектура ЭВМ В 5000 обеспечивает передачу параметров с использованием стека; Алгол и другие подобные языки высокого уровня сделали возможным широкое использование стековой памяти. [24]
Нижеприведенная подпрограмма инвертирует порядок следования элементов массива с использованием стека. [25]
Упрощенные таблицы локальной среды и обработка ссылок в Фортране. [26] |
Операция обработки ссылки на локальные идентификаторы выполняется с использованием центрального стека во многом так же, как и в предыдущем методе. [27]
Программно-доступные регистры.| Управление стековой памятью. [28] |
Система прерываний реализуется как аппаратурный запуск процедуры с использованием текущего стека. [29]
В главу включен дополнительный раздел по гипотетической машине с использованием стека. [30]