цей запис з накопичувача, ОС вибирає його з програмного кеша.
При переході з доріжки на доріжку, ОС повинна визначити “правильний” напрямок. Це пов’язано з часом. Існують стратегії переміщення головки зчитування по поверхні.
Стратегії переміщення головки зчитування по поверхні НЖМД:
переміщення min доріжка max доріжка ( ОС Novel )
переміщення по принципу мінімального відхилення від поточного стану
@лекція 8 ( 4.04.03 )
Теорія та практика розробки мовних процесорів
( транслятор та інтерпретатор )
Мовний процесор - це програмний комплекс який програму на вхідній мові
перетворює в програму на вихідній мові (транслятор).
Мовний процесор - це програмний комплекс який програму та дані на вході
перетворює в результати на виході.
Блочна структура мовного процесора (транслятора).
Мови програмування :
прагматичний аспект; ( І )
семантичний аспект; ( ІІ)
синтаксичний аспект. (ІІІ)
І – визначає область адекватного використання мови програмування, а саме
визначає на які задачі орієнтована мова програмування.
ІІ – конкретизує прагматичний аспект, а саме визначає базові типи даних та
операції над ними, способи побудови структур даних(об’єктів) та способи
побудови “складних” програм на основі простих.
ІІІ – визначає форму нотації семантичних понять( наприклад розробили мову
аналогічну Pascal – Ломоносов, в якій інтерпретація: „Начало - Конец” )
Лексичний аналізатор.
Вхід – текст (послідовність літер), вихід – текст (послідовність лексем).
Лексема – послідовність літер, що має семантичний зміст.
В теорії кількість лексем необмежена, але кількість класів лексем – скічченна.
Класи лексем :
зарезервовані слова ( int, if, double, sizeof, …);
ідентифікатори;
числові та літерні константи;
коди операцій (>, >>, >>=);
незначущі елементи ( прогалина, табуляція тощо);
коментарі
Синтаксичний аналізатор.
Вхід – текст (послідовність лексем),
Вихід(структурований) – так + синтаксична структура
ні + синтаксичні помилки.
Синтаксична структура програми визначається синтаксичним термом, в компіляторах як синтаксичний терм використовується синтаксичне дерево.
Семантичний аналізатор.
Вхід – синтаксична структура, вихід –семантична структура.
Блок оптимізації.
Вхід – семантичний терм, вихід –семантично еквівалентний даному терм.
Оптимізація – це еквівалентна перетворення термів програми на основі певних критеріїв.
Критерії оптимізації–
оптимізація об’єму коду–
оптимізація
Генератор вихідного коду.
Вхід – семантичний терм, вихід – вихідна (об’єктна) програма.
Транслятор, котрий як результат видає об’єктний код – компілятор.
Компілятор машинно орієнтованої мови програмування – асемблер.
Машинно орієнтовані мови програмування – асемблер.