Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Регистры общего назначения
Микропроцессор 8086 имеет 8 общих регистров назначения, каждый регистр имеет его собственное имя * AХ - регистр сумматора (разделенный на AH / AL). * BX - регистр базового адреса (разделенный на BH / BL). * CX - регистр индекса (разделенный на CH / CL). * DX - регистр данных (разделенный на DH / DL). * SI - индексирует регистр источника. * DI - индексирует регистр адресата. * BP - базируются указатель. * SP - располагают в стеке указатель.
Несмотря на имя регистра, это - программист, кто определяет использование для каждого регистра общего назначения. Главная цель регистра состоит в том, чтобы сохранить число. Размер вышеупомянутых регистров - 16 битов, это - кое-что подобно: 0011000000111001b (в двоичной форме), или 12345 в десятичной форме.
4 регистра общего назначения (AХ, BX, CX, DX) сделаны двух отдельных 8 разрядных регистров, например если AХ = 0011000000111001b, то AH=00110000B и AL=00111001B. Поэтому, когда Вы изменяете любой из 8 бита, регистрирует, 16 разрядных регистра также модифицирован, и наоборот. Тот же самый - для других 3 регистраторов, "H" - для высокого, и "L" - для низкой части.
Поскольку регистры расположены внутри микропроцессора, они - намного быстрее, чем память. Доступ к местоположению памяти требует использования системной шины, так что требуется намного более длинный. Доступ к данным в регистре обычно не требует никакое время. Поэтому, Вы должны пробовать сохранить переменные в регистрах. Наборы Регистра очень маленькие, и большинство регистров имеет специальные цели, которые ограничивают их использование как переменные, но они - все еще превосходное место, чтобы хранить временные данные вычислений.
Регистры сегментов
* СS - указывает сегменту, содержащей текущую программу. * DS - вообще указывает сегменту, где переменные определены. * ES - дополнительный регистр сегмента, это - до coder, чтобы определить его использование. * SS - указывает сегменту, содержащей стек.
Хотя возможно хранить любые данные в регистрах сегмента, это никогда не хорошая идея. Регистры сегментов имеют очень специальную цель - направляющий в доступных блоках памяти.
Сегмент регистрирует работу вместе с регистрами общего назначения, чтобы обратиться к любому значению памяти. Например, если мы хотели бы обратиться к памяти в физическом 12345 h адресе (hexadecimal), мы должны установить DS = 1230 h и SI = 0045 h. Это хорошо, начиная с этого пути, которым мы можем обращаться намного больше к памяти, чем с одиночным регистром, который ограничен 16 разрядными значениями. Микропроцессор делает вычисление из физического адреса, умножая регистр сегмента 10h и добавляя регистр общего назначения к этому (1230h * 10h + 45h = 12345h): Адрес, сформированный с 2 регистрами называется эффективным адресом. По умолчанию BX, SI и DI регистрирует работу с регистром сегмента DS; BP и SP работают с регистром сегмента SS. Другие регистры общего назначения не могут формировать эффективный адрес! Также, хотя BX может формировать эффективный адрес, BH и BL не может!
|