Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Команда JMP
Формат команды: JMP Операнд В качестве операнда может выступать непосредственный адрес (число) или РОН, или ячейка памяти, содержащие адрес кода программы в памяти, с которого должно продолжиться выполнение программы.
Программа, которую выполняет микропроцессор, храниться в оперативной памяти. После компиляции, все команды превращаются в шестнадцатеричные коды, которые последовательно хранятся в памяти. Каждому коду программы соответствует адрес в памяти, так как память микропроцессорных систем можно представить в виде одномерного массива, где каждому элементу массива присвоен номер (адрес). Это прекрасно видно на рисунке 6 в первой его области: первый столбец – адреса ячеек памяти, второй столбец (через пробел от первого) – шестнадцатеричные коды программы, третий столбец – соответствующая кодам из второго столбца мнемоника команд. Команда JMP указывает микропроцессору, начиная с какого адреса следует дальше выполнять команды. Команда JMP может осуществлять четыре различных типа перехода: § переход типа short (короткий переход) – если адрес перехода находиться в пределах -128…+127 байт от команды, следующей за командой JMP; § переход типа near (ближний переход) – если адрес перехода находиться в том же сегменте памяти, что и команда JMP; § переход типа far (дальний переход) – если адрес перехода находиться в другом сегменте. Дальний переход может выполняться и в тот же самый сегмент при условии, что в сегментной части операнда указано число, совпадающее с текущим значением CS; § переход с переключением задачи – передача управления другой задаче в многозадачной среде. При выполнении перехода типа short и near команда JMP фактически преобразовывает значение регистра EIP, изменяя тем самым смещение следующей исполняемой команды относительно начала сегмента кода. Если операнд – регистр или ячейка памяти, то его значение просто копируется в EIP, как если бы это была команда MOV. Если операнд команды JMP – непосредственно указанное число, то это число воспринимается как число со знаком и его значение суммируется с содержимым EIP, приводя к относительному переходу. В ассемблерных программах в качестве операнда обычно указывают имена меток. Программисту сложно каждый раз вычислять конкретное значение адреса перехода и указывать его в команде. Абсолютно логично возложить это на компилятор. На этапе компиляции вычисляются адреса всех меток и полученные значения записываются во все команды, использующие эти метки, в виде относительного смещения.
Date: 2015-10-19; view: 458; Нарушение авторских прав |