Қарапайым арифметикалық амалдар
Кез келген микропроцессордың арифметикалық командала- ры ерекше көңіл аударады. Арифметикалық командалар орын- далатын командалардың тек аз ғана бөлігін алады.
127
ЕХЕ файлдардың қарапайым мысалы:
. model small
|
; 256 байт өлшемді стек сегменті
|
. stack 100h
|
; 256 байт өлшемді стек сегменті
|
. code
|
; мәліметтерді де сақтайтын код сегменті
|
Begin:
|
; программа кодының басталу белгісі
|
mov ax,@data;
|
; message жолының сегменттік адресі DS реги- стріне орналастырылады
|
mov ds,ax
| |
mov dx,offset string
|
DX регистріне мәліметтер сегментінің бас- талуына қарай String белгісінің ығыстырылуы
|
mov ah,9
|
; АН регистріне жазу
|
int 21h
|
; жолды шығару
|
mov ax,4C00h
|
; exe типіндегі программаның аяқталуы
|
int 21h
|
; программаны аяқтау
|
. data
|
; мәліметтер сегментінің басы
|
string db "Privet", 0Dh,0Ah,
|
; шығарылатын мәліметтерден тұратын жол
|
end begin
|
; программа кодының аяқталу белгісі
|
Мысалы:
mov al,10 - --> AL регистріне 10 санын жүктейміз
add al,15 - --> al = 25; al – қабылдаушы, 15 – шығарушы mov ax,25000 - --> AX регистріне 25000 санын жүктейміз
add ax,10000 - --> ax = 35000; ax – қабылдаушы, 10000 – шы-
ғарушы
mov cx, 200 - --> CX регистріне 200 санын жүктейміз mov bx,760 - --> BX регистріне 760 санын жүктейміз
add cx,bx - --> cx = 960, bx = 760 (bx өзгермейді); cx – қабыл-
даушы, bx – шығарушы
Азайту
SUB командасы (Subtraction – азайту) бірінші операндтан екіншісін азайтып, нәтижесін біріншінің орнына сақтайды. Бі- рінші операндтың бастапқы мәні өзгереді. Сонымен, азайту ама- лын келесідей жазамыз.
SUB 1операнд, 2 операнд
оны шартты түрде келесідей жазамыз:
1 операнд – 2 операнд - > 1 операнд
128
Қосу
ADD команда (Addition – қосу (add – қосу)) бірінші және екінші операндтарды қосуды орындайды. Бірінші операндтың мәні нәтиженің мәнімен алмастырылады. Екінші операнд өзгер- мейді. ADD командасының бірінші операнды ретінде регистрді көрсетуге болады (сегменттіктен басқа) немесе жады ұяшықта- рын, ал екінші операнд ретінде регистрді (сегменттіктен басқа), жады ұяшығын немесе тікелей мәнін көрсетуге болады, бірақ бір мезгілде екі операндты жады ұяшықтар ретінде көрсетуге болмайды. Операндтар байт немесе сөз және таңбалы немесе таңбасыз сандардан тұруы мүмкін. ADD командасы әдеттегі бү- тін сандарды, екілік-ондық сандарды қосу үшін пайдаланылады (АХ регистрін нәтижелерді сақтауға қолданамыз). Команда OF, SF, ZF, AF, PF и CF флагтарына әсер етеді.
Достарыңызбен бөлісу: |