Бақылау сұрақтары:
TEST командасының орнына SHL командасын пайдаланудың артық- шылығы? SHL dx,1 және SHL dx, cl командаларының өзара айырмашылығы? X мәнін стекке жазып және одан кері қалай аламыз? Ондық санау жүйесінде байттың мәнін баспаға берудің әдістемесін си- паттаңыз. Стек және оның жұмыс істеу принциптері? pushDS, popES және pushDS, popES командаларының өзара айырмашы- лығы?
3.10. Мәтіндік режимде экранға шығару
Жұмыстың мақсаты: DOS ОЖ, BIOS және бейнебуферге тура бейнелеудің құралдарын пайдалана отырып, мәтіндік мәлі- меттерді экранға шығарудың негізгі құралдарымен танысу.
DOS ОЖ құралдары
DOS ОЖ 02h функциясы. DOS ОЖ 02h функциясы – символ- ды STDOUT жазу және Ctrl-Break тексеру
Енгізу
|
АН = 02h
DL = ASCII-кодының символы
|
Шығару
|
AL = соңғы жазылған символдың коды (DL тең, тек DL = 09h (табуляция) болған кезінен басқа, AL регистрі 20h мәні- не қайтып келеді).
|
Бұл функция басқаратын символдарды өңдемейді (CR, LF, HT және BS регистрлері өздерінің функцияларын экранға шыға- ру кезінде орындайды, бірақ файлға шығару кезінде сақталады) және Ctrl-Break комбинациясының басылуын тексермейді. Мы- салдағы MOV АН,2 командасын MOV АН,6 өзгертіп програм- маны қайта іске қосамыз.
162
Мысал:
org 100h
|
; СОМ-файлдың басы
|
begin:
|
; программа кодының басталу белгісі
|
mov dl,
|
; кез келген ASCII-кодының символын dl регистрі- не жазамыз
|
mov ah,2
|
; «символды шығару» DOS функциясының нөмірі
|
int 21h
|
; DOS шақыру
|
ret
|
; «программаны аяқтау» DOS функциясы
|
end begin
|
; программа кодының аяқталу белгісі
|
Бұл программа кез келген ASCII-символын шығарады.
Достарыңызбен бөлісу: |