Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

В информатике , нулевая функция (или нулевой оператор ) является подпрограммой , которая оставляет госпрограмма без изменений. Когда она входит в набор инструкций о наличии процессора , это называется NOP или NOOP (бездействует).

Математически функция (компьютерная) имеет значение NULL тогда и только тогда, когда ее выполнение оставляет состояние программы неизменным. То есть, нулевая функция - это функция идентичности , домен и кодомен которой являются пространством состояний программы и для которой:

для всех элементов .

Также можно встретить менее строгие определения. Например, функция может принимать единственный операнд, преобразовывать его в новый тип данных и возвращать результат. [1] Хотя такие способы использования имеют сильное визуальное сходство с функциями идентификации, они создают или изменяют значение двоичных данных и, таким образом, изменяют состояние программы. С точки зрения ремонтопригодности программного обеспечения лучше явно идентифицировать такие «незначительные» изменения состояния, поскольку их вызов нулевых функций не дает будущим разработчикам кода понимания их фактических целей.

Использует [ редактировать ]

Нулевые функции имеют несколько применений.

Во время разработки программного обеспечения нулевые функции с теми же именами и сигнатурами типов, что и запланированные функции, часто используются в качестве заглушек, то есть в качестве нефункциональных заполнителей, которые позволяют скомпилировать и протестировать неполный текст кода до завершения всех запланированных функций. .

Нулевые функции, особенно разновидность NOP, также используются для обеспечения задержек неопределенной длины в циклах ожидания . Это обычная стратегия в выделенных контроллерах устройств, которые должны ждать внешнего входа и не имеют других задач, которые нужно выполнять, пока они ждут. Такие циклы ожидания также используются в программных приложениях в более крупных многопроцессорных компьютерных системах. Однако для многопроцессорных систем лучшим подходом является использование функций операционной системы, которые позволяют другим процессам использовать ЦП в течение периода ожидания.

Третье использование нулевых функций - это определение функции программы, которая, если создается случайно, почти всегда является вредоносной. Непреднамеренные нулевые функции могут возникать во время разработки сложных программ, и, как и мертвый код , такие случаи указывают на серьезные недостатки в структуре программы.

Нулевые функция или метод часто используются в качестве поведения по умолчанию для обнаруживаемой функции или переопределяемого метода в объектной структуре.

См. Также [ править ]

Ссылки [ править ]

  1. ^ Примерфункции преобразования типа, помеченной как «нулевая функция»: _NULLF - нулевая функция.

Внешние ссылки [ править ]

  • Алгоритм NULL-шифрования и его использование с IPsec . IETF . Ноябрь 1998 г. doi : 10.17487 / RFC2410 . RFC 2410 . Делает юмористические заявления об алгоритме шифрования NULL.