Реклама:

Любой процессор, в том числе и у 8088, обладает своим внутреннем состоянием, под которым понимается та или иная критически важная информация. Для хранения и обработки этой информации в процессоре предусмотрен особый набор регистров. Наиболее важным из них является регистр PC (Program Counter - счетчик команд). В нем указывается ячейка памяти (адрес), в которой хранится следующая в порядке выполнения команда. Другое обозначение этого регистра - IP (Instruction Pointer - указатель команд). Та часть основной памяти, в которой хранится следующая команда в порядке выполнения, называется кодовым сегментом. Допустимая емкость основной памяти, которую поддерживает процессор 8088, составляет чуть более 1 Мбайт, однако размер кодового сегмента ограничен значением 64 Кбайт. Начало этого сегмента в рамках памяти емкостью 1 Мбайт определяется в регистре CS (см. рис. В.1). Чтобы активировать новый кодовый сегмент, достаточно изменить значение регистра CS. Помимо кодового сегмента, существует сегмент данных, также занимающий 64 Кбайт и определяющий начало данных. На рис. В.1 начало данных определяется регистром DS, содержание которого можно при необходимости изменить и тем самым получить доступ к данным, находящимся за пределами текущего сегмента. Потребность в регистрах CS и DS обусловлена тем, что разрядность регистров 8088 составляет 16 бит, а, значит, хранить в них 20-разрядные адреса, необходимые для обращения к памяти емкостью 1 Мбайт, невозможно. Вот почему появились кодовый сегмент и сегмент данных.

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

Небольшая программа на языке ассемблера || Оглавление || Цикл процессора