Дипломированных специалистов «Информатика и вычислительная техника»



Download 12,06 Mb.
Pdf ko'rish
bet52/357
Sana22.02.2022
Hajmi12,06 Mb.
#115195
TuriДиплом
1   ...   48   49   50   51   52   53   54   55   ...   357
Bog'liq
assembler uchebnik dlya vuzov 2-e izd YuRXUW1

Операнды
Операнды — это объекты, над которыми или при помощи которых выполняются
действия, задаваемые инструкциями или директивами. Машинные команды мо-
гут либо совсем не иметь операндов, либо иметь один или два операнда. Большин-
ство команд требует двух операндов, один из которых является источником, а дру-
гой — приемником (операндом назначения). В двухоперандной машинной команде
возможны следующие сочетания операндов:
в регистр — регистр;
регистр — память;
в память — регистр;


Синтаксис ассемблера 91
* непосредственный операнд — регистр;
непосредственный операнд — память.
Здесь важно подчеркнуть, что один операнд может располагаться в регистре
или памяти, а второй операнд
должен находиться в регистре или не-
посредственно в команде. Непосредственный операнд может быть только источ-
ником.
Для приведенных ранее правил сочетания типов операндов есть исключения,
которые касаются:
 команд работы с цепочками, которые могут перемещать данные из памяти
в память;
 команд работы со стеком, которые могут переносить данные из памяти в стек,
также находящийся в памяти;
 команд типа умножения, которые, кроме операнда, указанного в команде, неяв-
но используют еще и второй операнд.
Операндами могут быть числа, регистры, ячейки памяти, символьные иденти-
фикаторы. При необходимости для расчета некоторого значения или определения
ячейки памяти, на которую будет воздействовать данная команда или директива,
используются выражения, то есть комбинации чисел, регистров, ячеек памяти,
идентификаторов с арифметическими, логическими, побитовыми и атрибутивны-
ми операторами.
Рассмотрим классификацию операндов, поддерживаемых транслятором ассем-
блера.
в Операнд задается неявно на микропрограммном уровне. В этом случае команда
явно не содержит операндов. Алгоритм выполнения команды использует не-
которые объекты по умолчанию (регистры, флаги в EFLAGS и т. д.). Например,
команды CLI и STI неявно работают с флагом прерывания IF в регистре EFLAGS,
а команда XLAT неявно обращается к регистру AL и строке в памяти по адресу,
определяемому парой регистров
к Операнд задается в самой команде (непосредственный операнд). Это может быть
число, строка, имя или выражение, имеющее некоторое фиксированное (кон-
стантное) значение. Физически непосредственный операнд находится в коде
команды, то есть является ее частью. Для его хранения в команде выделяется
поле длиной до 32 битов (см. главу 3). Непосредственный операнд может быть
только вторым операндом (источником). Операнд-приемник может находить-
ся либо в памяти, либо в регистре. Например, команда
пересылает
в регистр АХ шестнадцатеричную константу
Команда add sum,2 складыва-
ет содержимое поля по адресу sum с целым числом 2 и записывает результат по
месту первого операнда, то есть в память. Если непосредственный операнд —
имя, то оно не должно быть перемещаемым, то есть зависеть от адреса за-
грузки программы в память. Такое имя можно определить оператором EQU
или =. Пример:
num
5
imd =
mov
вместо num ассемблер везде подставляет 5
вместо num ассемблер везде подставляет 3
эквивалентно mov
здесь 5 - непосредственный операнд


92 Глава 5. Синтаксис ассемблера
add
сложение
; здесь imd - непосредственный
mov
здесь 5 - непосредственный операнд
В данном фрагменте определяются две константы, которые затем используют-
ся в качестве непосредственных операндов в командах пересылки
и сложе-
ния ADD.
 Адресные операнды задают физическое расположение операнда в памяти путем
указания двух составляющих адреса: сегмента и смещения (рис. 5.4). К примеру:
mov
mov
mov
записать слово в ах из области памяти
по физическому адресу 0000:0000
Здесь третья команда
имеет адресный операнд.

Download 12,06 Mb.

Do'stlaringiz bilan baham:
1   ...   48   49   50   51   52   53   54   55   ...   357




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish