Программа состоит из набора команд, выполняющихся процессором автоматически в определенной последовательности.
Вначале с помощью какого-либо внешнего устройства в память компьютера вводится программа. Устройство управления считывает содержимое ячейки памяти, где находится первая инструкция (команда) программы, и организует ее выполнение.
Эта команда может задавать выполнение арифметических или логических действий, чтение из памяти данных для выполнения арифметических или логических операций или запись их результатов в память, ввод данных из внешнего устройства в память или вывод данных из памяти на внешнее устройство.
Выборка программы из памяти осуществляется с помощью счетчика команд. Этот регистр процессора последовательно увеличивает хранимый в нем адрес очередной команды на длину команды. Так как команды расположены в памяти друг за другом, организуется выборка цепочки команд из последовательно распложенных ячеек памяти. Если же нужно после выполнения команды перейти не к следующей, а к какой-то другой ячейке, то используются команды условного и безусловного перехода, которые заносят в счетчик команд номер ячейки памяти, содержащей следующую команду. Выборка команд из памяти прекращается после достижения и выполнения команды «стоп». Процессор исполняет программу автоматически, без вмешательства человека.
Принцип программного управления обеспечивает универсальность использования компьютера: в определенный момент времени решается задача по соответственно выбранной программе. После ее завершения в память загружается другая программа и т.д.
Принцип однородности памяти
Программы и данные хранятся в одной и той же памяти, поэтому компьютер не различает, что хранится в данной ячейке памяти — число, текст или команда. Над командами можно выполнять такие же действия, как и над данными.
Принцип адресности
Структурно основная память состоит из пронумерованных ячеек. Процессору в произвольный момент времени доступна любая ячейка.
Память компьютера должна состоять из некоторого числа пронумерованных ячеек, в каждой из которых могут находиться или обрабатываемые данные, или инструкции программ. Все ячейки памяти должны быть одинаково легко доступны для других устройств компьютера.
Отсюда следует возможность давать имена областям памяти так, чтобы к сохраненным в них значениям можно было впоследствии обращаться или менять их в процессе выполнения программ с использованием присвоенных имен.