В процессе трансляции выражений на
В процессе трансляции выражений на этапе генерации кода транслятор строит последовательности машинных кодов, реализующие закодированные в выражениях действия. Например, при трансляции выражения A = A + 125
транслятор, прежде всего, генерирует код для вычисления значения выражения A + 125 и присвоения результата переменной A. При этом фрагмент кода, вычисляющий адрес переменной A дважды войдёт во множество команд процессора, реализующих это выражение.
В целях упрощения структуры подобных операторов в C++ применяются комбинированные (или сокращённые) формы операторов присваивания.
*= Операция присвоения произведения. A *= B
Присвоение левому операнду произведение значений левого и правого операндов. Операция по своему результату эквивалентна простой форме операции присвоения, у которой правый операнд имеет вид произведения A * B, левый операнд имеет вид A. При этом A является модифицируемым l-выражением:
A = A * B
/= Операция присвоения частного от деления. A /= B + 254
Присвоение левому операнду частного от деления значения левого операнда на значение выражения правого операнда. Операция по своему результату эквивалентна простой форме операции присвоения, у которой правый операнд имеет вид A / (B + 254)
левый операнд прелставляется выражением A. Очевидно, что при этом A должно быть модифицируемым l-выражением:
A = A / (B + 254)
%= Операция присвоения остатка от деления. A %= B
Левый операнд должен быть модифицируемым l-выражением.
+= Операция присвоения суммы. A += B
Левый операнд должен быть модифицируемым l-выражением.
-= Операция присвоения разности. A -= B
Левый операнд должен быть модифицируемым l-выражением.
<<= Операция присвоения результата операции побитового сдвига влево на количество бит, равное значению правого целочисленного операнда. A <<= B
Левый операнд должен быть модифицируемым l-выражением.
>>= Операция присвоения результата операции побитового сдвига вправо на количество бит, равное значению правого целочисленного операнда. A <<= B
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий