В информатике и теории автоматов состояние цифровой логической схемы или компьютерной программы является техническим термином для всей хранимой информации, к которой схема или программа в данный момент времени имеет доступ. [1] Вывод данных цифровой схемы или компьютерной программы в любой момент времени полностью определяется его текущими входными данными и его состоянием.
Цифровые логические схемы могут быть разделены на два типа: комбинационной логики, чьи выходные сигналы зависят только от входных сигналов, и секвенциальной логики, чьи выходные данные являются функцией и от текущих, и от прошлых входных данных.[2] В секвенциальной логике информация из последних входов сохраняется в памяти электронных элементов, таких как триггеры. Сохраненные содержимое этих элементов памяти, в данный момент времени, в совокупности именуемое "состояние" схемы содержит всю информацию о прошлом, к которому схема имеет доступ.[3]
Например, состояние микропроцессора (компьютерной микросхемы) представляет собой содержимое всех его элементов памяти: аккумуляторов, регистров хранения, кэшей данных и флагов. Когда ноутбуки уходят в режим "гибернации", чтобы сохранить энергию за счет отключения процессора, состояние процессора хранится на диске компьютера, так что оно может быть восстановлено, если компьютер выходит из режима гибернации, и процессор может взяться за операции с того момента, где он их оставил.
Поскольку каждый бинарный элемент памяти, такой как триггер, имеет только два возможных состояния - "один" или "ноль", и есть конечное число элементов памяти, цифровая схема имеет конечное число возможных состояний. Если количество двоичных элементов памяти в схеме - N, то максимально возможное количество состояний будет 2N.
Компьютерные программы хранят данные в переменных, представляющих собой области хранения данных в памяти компьютера, содержание этих областей памяти в любой момент времени исполнения программы называется состоянием программы. [4][5][6]
Императивное программирование - это парадигма программирования (способ проектирования языка программирования), которая описывает в терминах состояний и операторов, которые изменяют состояние программы. В декларативных языках программирования, напротив, программа описывает желаемый результат, не указывая изменения состояний напрямую. Более специализированное определение состояния используется в некоторых компьютерных программах, которые работают последовательно с потоками данных, таких как синтаксические анализаторы, файрволы, протоколы передачи данных и программ шифрования. Последовательные программы обрабатывают поступающие данные , символы или пакеты, последовательно, по одному за раз. В некоторых из этих программ, информация о предыдущих полученных символах или пакетах данных, хранится в переменных и используется, чтобы повлиять на обработку текущего символа или пакета. Это называется "протоколом состояния", и данные, перенесенные из предыдущего цикла обработки называется "состоянием". В других случаях, программа не имеет никакой информации о предыдущем потоке данных и начинает "чистый" с каждого ввода данных; это называется "протокол без состояния".
Выходная последовательная цепь или компьютерная программа в каждый момент времени полностью определена текущими входными данными и текущим состоянием. Поскольку каждый бинарный элемент памяти имеет только два возможных состояния, 0 или 1, общее количество состояний сети предполагается конечным и фиксированным по числу элементов памяти. Если количество двоичных элементов памяти в схеме - N, то максимально возможное количество состояний будет 2N. Понятие состояния, оформленное в абстрактной математической модели вычислений, называется конечным автоматом, используемым для разработки как последовательные цифровые схемы так и компьютерных программ.
Различают следующие типы состояний:
Для улучшения этой статьи желательно: |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .