Program a dane Program można podzielić na dwie części (obszary): część zawierająca kod – składająca się z rozkazów sterujących działaniem procesora; część zawierająca dane – składająca się z danych wykorzystywanych i przetwarzanych przez program, np. adresów pamięci, stałych liczbowych, komunikatów tekstowych, danych graficznych itp. O ile operowanie na danych przez program jest zupełnie normalne i oczekiwane, o tyle operowanie programu na własnym kodzie nie jest typową praktyką. Przewidywanie zachowań programów, które modyfikują własny kod w czasie działania, jest bardzo trudne. Dlatego na ogół przyjmuje się założenie (lub wręcz jest to wymuszane przez system wykonawczy), że obszar kodu programu w pamięci operacyjnej jest tylko do odczytu. Programy nie respektujące tego podejścia to programy samomodyfikujące się, co jest charakterystyczne np. dla wirusów polimorficznych.
Źródło i licencja
Fragment artykułu Wikipedia — Program komputerowy · historia autorów.
Tekst: CC BY-SA 4.0. Wydzielono fragment z dłuższego artykułu.