ГОСТ Р 53556.5—2013
If
оператордолжен выполняться следующим образом:
В каждой передаче через оператор, происходящей на равных уровнях присвоения, должно быть
оценено выражение защиты. Если оператор защиты в определенной передаче оценен ненулевым значени
ем. то блок программы должен быть оценен на уровне, соответствующем той передаче.
Если в блоке, выполняющийся в
a-rato
или
k-rate,
есть
i-rate
операторы, эти операторы должны быть
выполнены только в первый раз.
Если в блоке, выполняющейся в
a-rate,
есть операторы
k-rate
,эти операторы должны быть выполне
ны только в первый раз. когда блок выполняется в
kcyde.
8.6.6.5
Else
<statement>•> if ( <expr>) { <Ыоск> } else { <bk>ck>}
Else
оператор позволяетдизъюнктивую оценку двух блоков программы. Выражение, которое тестиру
ется в операторе, называют выражением защиты.
Уровень оператора является уровнем выражения защиты, или уровнем самого быстрого оператора в
первом защищенном блоке программы, или уровнем самого быстрого оператора во втором защищенном
блоке программы.
Else
недопустимодля блоков программы, которым оператор
else
приказывает содержать более мед
ленные операторы, чем выражение защиты. Недопустимо для любого из операторов в блоках программы,
которыми управляют, содержать коды операций, которые были бы выполнены медленнее, чем выражение
защиты. Выражение защиты должно быть однозначным выражением.
Else
оператордолжен выполняться следующим образом:
В каждой передаче через оператор, происходящей на равных уровнях присвоения, должно быть
оценено выражение защиты. Если выражение защиты в определенной передаче оценено ненулевым зна
чением. то первый защищенный блокпрограммы должен быть на уровне соответствующем этой передаче.
Если оператор защиты в определенной передаче обнулить, то каждый оператор во втором защищенном
блоке программы должен быть обнулен.
Если в блоке программы, выполняющейся в
a-rate
или
k-rate.
есть
i-rate
операторы, эти операторы
должны быть выполнены только в первый раз. когда блок выполняется.
Если в блоке программы, выполняющейся в
a-rate.
есть
k-rate
операторы, эти операторы должны
быть выполнены только в первый раз. когда блок выполняется в
kcyde.
8.6.6.6
While
<statement>
->
while ( <expr>) { <Ыоск>}
While
оператор позволяет блоку программы быть условно оцененным несколько раз в одном уровне
передачи. Выражение, которое тестируется в
while
операторе называют выражением защиты.
Уровень
while
оператора является уровнем выражения защиты.
Недопустимо для блока программы, которым управляет
while
оператор, содержать операторы, кото
рые работают на уровне, кроме уровня выражения защиты. Не допустимо для любого из операторов в
блоке программы, которым управляют, содержать коды операции, которые выполняются на уровне, кроме
уровня выражения защиты. Выражение защиты должно быть однозначным выражением. Недопустимо
для выражения защиты содержать базовые коды операции
specialop.
While
оператор должен выполняться следующим образом:
В каждой передаче через оператор, происходящей на равных уровнях присвоения, должно быть
оценено выражение защиты. Если выражение защиты в определенной передаче оценено в ненулевое
значение, то каждый оператор в защищенном блоке программы должен быть оценен согласно определен
ным правилам для этого оператора, и затем выражение защиты переоценивают, выполняя итерации, пока
выражение защиты не обнулится.
8.6.6.7
Instr
<statement> > instr <ident> (<exprlist>);
Instr
оператор позволяет инструментальному инстанцированиюдинамически создавать другие инст
рументальные инстанцирования для методов синтетической производительности или иерархического пред
ставления. Он состоит из идентификатора, обращающегося к инструменту, определенному в текущем ор
кестре. задержки, продолжительности и списка выражений, определяющих параметры инструмента на ко
торый ссылаются.
Если число выражений в списке выражения не два или больше чем число
pfields.
принятого инстру
ментом на который ссылаются, то это синтаксическая ошибка. Каждое выражение в списке выражения
должно бытьоднозначным выражением.
24