Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






MOV ан,byte PTR X





Здесь конструкция BYTE PTR x означает адрес х, однако рас-

Сматриваемый как адрес байта, а не слова. (Напомним, что с одного

И того же адреса может начинаться байт, слово и двойное слово;

Оператор PTR уточняет, какого размера ячейка имеется.)

И еще одно замечание. Если в символьной команде, оперирую-

Щей со словами, указан непосредственный операнд размером в

Байт, как, например, в команде

MOV АХ,8Oh

то возникает некоторая неоднозначность: что будет записано в ре-

гистр АХ —число OOSOh (+128) или OFFSOh (-128)? В подобных си-

Туациях ассемблер формирует машинную команду, где операнд-байт

Расширен до слова, причем расширение происходит со знаком, если

Операнд был записан как отрицательное число, и без знака —в ос-

тальных случаях. Например:

MOV АХ,-128; => MOV AX,OFFSOh (A:=-128)

MOVAX,128; => MOV AX,OOSOh (А:=+128)

MOV AX,80h; => MOV AX,OOSOh (A:=+128)

Режимы процессора. Система команд процессоров 180x86... 393

Сегментирование

С е г м е н т ы п а м я т и. С е г м е н т н ы е р е г и с т р ы. Первые

модели 180X86 имели оперативную память объемом 2'6 байтов

(64 Кб) и потому использовали 16-битовые адреса. В последующих

моделях память была увеличена до 220 байтов (1 Мбайт = 1000 Кб),

Для чего уже необходимы 20-битовые адреса. Однако в этих 180X86

для преемственности были сохранены 16-битовые адреса: именно

Такие адреса хранятся в регистрах и указываются в командах, а так-

Же получаются в результате модификации по базовым и индексным

Регистрам. Как же удается 16-битовыми адресами ссылаться на

1 Мбайт памяти и большие объемы?

Эта проблема решается с помощью сегментирования адресов

(неявного базирования адресов). В 180X86 вводится понятие ≪сег-

мент памяти≫. Так называется любой участок памяти размером до

Кб и с начальным адресом, кратным 16. Абсолютный (20-бито-

Вый) адрес А любой ячейки памяти можно представить как сумму

Битового начального адреса (базы) В сегмента, которому принад-







Date: 2015-11-13; view: 481; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию