ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 30.10.2023
Просмотров: 19
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Деректерді ауыстыру командасы MOV
Команда форматы:
MOV < аргумент1 >, < аргумент2 >
Команданың орындалуы меншіктеу амалы сияқты. аргумент1 ге аргумент2 мәні меншіктеледі, яғни ондағы бұрынғы мән жойылады, ал аргумент2 өзгермейді.
аргумент1 = аргумент2
аргумент1 ретінде регистр немесе жады адресі (ұяшығы) қолданылуы мүмкін , ал аргумент2 ретінде - регистр, жады ұяшығы және тұрақты мән қолданылады.
Команда аргументтерінің өлшемі бірдей болуы керек (1, 2, 4, 8 байт).
MOV командасында деректерді бір жады адресінен екіншіге ауыстыруға болмайды. Бұл көшіруді аралық регистр арқылы орындауға болады. Аралық регистр ретінде SP-дан басқа жалпы регистр қолданылды. MOV командасында рұқсат берілген алып орналастырулар:
регистр -> регистр,
регистр -> жады,
тұрақты -> регистр,
тұрақты -> жадыға,
жады->регистр.
Мысалдар:
MOV AX, DX
MOV AX, A
MOV A, DX
MOV AL, 22H
Қате командалар:
MOV A, B ; жадыдан жадыға тікелей ауыстыруға болмайды
MOV AL, DX ; аргументтердің өлшемі әртүрлі
Арифметикалық командалар
Барлық арифметикалық командалар орындалу нәтижесіне байланысты flags регистріндегі CF, AF, SF, ZF, OF, PF жалауларын (разрядтарын) өзгертеді.
Қосу және азайту командалары
ADD қосу командасы. Команданың жазылу форматы:
ADD аргумент1, аргумент2
Команда екі санды қосу амалан орындайды. аргумент1 ге, аргумент1 мен аргумент2 мәндерінің қосындысы меншіктеледі, яғни ондағы бұрынғы мән жойылады, ал аргумент2 өзгермейді.
аргумент1 = аргумент1 + аргумент2
аргумент1 ретінде регистр немесе жады ұяшығы қолданылуы мүмкін , ал аргумент2 ретінде - регистр, жады адресі және тұрақты мән қолданылады.
Команда аргументтерінің өлшемі бірдей болуы керек (1, 2, 4, 8 байт).
ADD командасында 2 аргументте жады адресі болмайды.
Мысалдар:
ADD CX, DI ; CX = CX + DI
ADD BX, V ; BX = BX + V адресіндегі мән
ADD t, DX
ADD AL, 15
Қате командалар:
ADD p, t ; жадыдан жадыға тікелей қосуға болмайды
ADD AX, DH ; аргументтердің өлшемі әртүрлі
ADС Ауысу жалауымен қосу командасы. Команданың жазылу форматы:
ADC аргумент1, аргумент2
Орындалуы
аргумент1 = аргумент1 + аргумент2 + CF
Мысал:
mov al, 100
add al, 200 ; нәтиже al = 44, CF = 1
adc al, 16 ; нәтиже al = 61
ІNC командасы (1-ге өсіру). Жады адресіндегі немесе регистрдегі мәндін бірге өсіреді.
Команданың жазылу форматы:
ІNC аргумент
аргумент = аргумент +1
Азайту командалары
SUB азайту командасы.
SUB аргумент1, аргумент2
Орындалуы: аргумент1 = аргумент1 - аргумент2
SBB Ауысу жалауымен азайту командасы.
SUB аргумент1, аргумент2
Орындалуы: аргумент1 = аргумент1 - аргумент2 - CF
DEC командасы (1-ге азайту). Жады адресіндегі немесе регистрдегі мәнді бірге азайтады.
DEC аргумент
Орындалуы: аргумент = аргумент – 1
NEG терістеу командасы. Жады адресіндегі немесе регистрдегі мәннің таңбасын ауыстырады.
NEG аргумент
Орындалуы: аргумент = - аргумент