84-сурет. Программаның орындалу коды
Тапсырмалар:
- Зертханалық барысындағы мысалдарды іске асырыңыздар.
- *.com типіндегі орындалатын файлды құрыңыз.
- Алынған программалардың жұмысын талдаңыз.
- DIV, PUSH, POP, SHL, TEST командаларының жұмысын сипаттаңыз.
- Стекке орналасқан сандар қай жерде екенін анықтаңыз (адрестерін та- уып, жазыңыз).
160
1
|
2
|
xchg ah, al
|
; ah және al операндтарының арасындағы мәлімет алмасу
|
add al, 30h
|
; al регистріне 30h санын қосамыз
|
int 29h
|
; үзуді шақыру, символды шақыру;
|
loop @2
|
; циклді іске асыру @2 белгісіне көшу
|
mov al, 13
|
; al регистріне 13 санын жазу
|
int 29h
|
; үзуді шақыру, символды шақыру
|
mov al, 10
|
; al регистріне 10 санын енгізу
|
int 29h
|
; үзуді шақыру, символды шақыру
|
ret
|
; «программаны аяқтау» функциясы
|
end begin
|
; программа кодының аяқталу белгісі
|
Бұл функция экранға шығару барысында бірқатар басқару- шы символдарды өңдейді. BEL (07h) символы дыбыс шығара- ды, ал BS (08h) символы курсорды солға қарай бір орын жыл- жытады, НТ (09h) символы бірнеше бос орындармен алмасты- рылады, LF (0Ah) символы курсорды бір орын төмен түсіреді және CR (0Dh) символы курсорды ағымдағы жолдың басына кө- шіреді. Егер осы функцияның орындалу барысында Ctrl-Break батырмаларының комбинациясы басылса, 23h үзуі орындалады да программадан шығады.
DOS 02h функциясын пайдаланудың қарапайым мысалы.
161
- СS регистрінің мәнін баспаға беретін программаны жазыңыз.
- Қарастырылып отырған есептерді шешудің басқа жолдарын ұсыныңыз.
Достарыңызбен бөлісу: |