Авторы: Фёдор Гончаров, Нина Челышева

Полезные ссылки:

2020 lecture 26 (Презентация про файлы, отображаемые в память. Использовалось на лекции)

2020 seminar mmap (много примеров использования mmap)

2020 lecture 27 (Презентация про файлы, отображаемые в память, и процессы. Использовалось на лекции)

Ассемблерные вставки

Отступление и повторение

Untitled

Оператор ; теряет возвращаемое выражение

3*8; высчисляется, но результат теряется

Часто возвращаемые значения функций мы игнорируем, так как нас интересует только побочный эффект. Например, у printf интересен вывод значений, возвращаемое значение нас не очень интересует.

Побочные эффекты в одной строчке могут вывыватся в произвольном порядке, в зависимости от компилятора, как в строчках 11 и 13

Гарантии, что значение выполнено, есть у ;. То есть, строчка полностью отработает, и только потом оператор ; отбросит возвращаемое значение.

Точки синхронизации: ;, вызов функции. К моменту вызова функции, все её аргументы уже должны быть вычислены.

Частые оптимизации компилятора

CSE - common subexpression elimination - оптимизатор повторяющихся выражений