![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Регистры общего назначения
Особенностью всех этих регистров является то, что их можно использовать в любых арифметических, логических и других операциях, но в то же время каждый из этих регистров имеет определенную специализацию. Например команды деления и умножения требуют чтобы первый операнд непременно находился в регистре АL или AХ или регистрах DX: AX. Четыре 16 – ти разрядных регистра AX, BX, CX, DX, образованны из двух 8-битовых регистров AL, AH, BL, BH, CL, CH, DL, DH. Буквы L и H означают младшие (low-order) и старшие (high-order) байты 16-битовых регистров. К каждому из этих восьми битовых регистров можно обратиться по определённой команде. Регистры SI, DI, BP, SP не разделены пополам и к ним можно обращаться только как к 16 разрядным структурам. Регистр АХ - основной регистр, используется при всех арифметических и логических операциях над словами, в операциях ввода вывода и сдвига. В операциях умножения в этом регистре хранится множимое, а в операциях деления - делимое. Регистр ВХ – базовый регистр, используется при арифметических операциях, а так же для адресации данных в памяти. Регистр СХ – счётчик, используется как счётчик числа повторений цикла, а так же при арифметических операциях. Регистр СL - используется как счётчик при операциях сдвига и циклического сдвига на несколько битов. Регистр DX - регистр данных, используется при умножении и делении слов, в операциях ввода – вывода. Сегментные регистры
ЭВМ на базе микропроцессоров INTEL xx86 используют и сегментированные модели памяти, это когда программы и данные хранятся в отдельных областях памяти – сегментах, размером до 64 Кбайт. Поэтому для формирования адреса байта в памяти нужны два числа – адрес начала сегмента и смещение искомого байта относительно начала сегмента. Начальные адреса этих сегментов и содержатся в следующих сегментных регистрах: Регистр сегмента CS – хранит адрес сегмента текущей исполняемой программы. Регистр сегмента DS – хранит адрес текущего сегмента данных используемых в программе. Регистр сегмента SS – хранит адрес сегмента стека. Стек это область памяти для временного хранения данных, адресов, содержимого регистров МП. Особенностью стека является то что запись и чтение осуществляется только из вершины стека. Обращение к произвольной ячейке стека осуществляется специальным образом. Регистр дополнительного сегмента ES – хранит адрес сегмента текущего дополнительного сегмента, который используется для работы над строками или хранения данных и программ.
|