Главная страница Случайная лекция  
Мы поможем в написании ваших работ! Порталы: БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика  
Мы поможем в написании ваших работ!  | 
    
	
	
 ОПС для стандартных операторов
 Наряду с рассмотренными типами операторов в языке программирования, как правило, имеются такие стандартные операторы, как операторы ввода и вывода. Рассмотрим пример таких операторов. 
 Пример 18. Расширим грамматику, рассмотренную в примере 17, задав операторы ввода и вывода порождающими правилами, начинающимися с нетерминала A: A → read (aH) | write (S) При работе анализатора, если верхний символ в магазине будет A, то при входном символе read в магазин будет копироваться последовательность: read (aH), а в дополнительный магазин: □□a□<r>. При входном символе read в магазин будет копироваться последовательность: write (S), а в дополнительный магазин: □□□<w>. Здесь <r> и <w> обозначают соответственно операции чтения входного значения с устройства ввода в переменную (возможно, с индексом) и записи значения арифметического выражения на устройство вывода. Обе такие операции при вычислении требуют в магазине одного операнда. Так, например, по входной цепочке: begin read(i); read(M[i]); write(M[i]*i) end будет сгенерирована ОПС: i <r> M i <i> <r> M i <i> i * <r> При вычислении по этой ОПС содержимое магазина интерпретатора будет изменяться таким образом: 
 
 
 
 
 
 
 
 
 
 
 
 Конец примера. 
 Дата добавления: 2015-07-26; просмотров: 114; Нарушение авторских прав  
Мы поможем в написании ваших работ!  |