Дипломная работа: Вивід вмісту каталогу y середовищі MS DOS

IDEAL

MODEL small

ASCnull EQU 0 ; ASCIIнуль

ASCcr EQU 13 ; ASCIIсимвол повернення каретки

ASClfEQU 10 ; ASCIIсимвол вертикальної табуляції

; (прогону рядка)

CODESEG

PUBLIC StrLength, StrWrite, StrWrite2, NewLine, WriteSimv

; ------------------------------------------------------------------------------------------

; StrLength підраховує кількість ненульових символів в рядку

; -------------------------------------------------------------------------------------------

; Вхід di адреса ASCIIрядка

; Вихід cx кількість ненульових символів в рядку

; Регістри cx

; -------------------------------------------------------------------------------------------

PROCStrLength

pushax ; зберегти у стеку змінювані

pushdi ; регістри ax, di

xoral, al ; в alпоміщується шуканий символ 0

mov cx, 0ffffh ; в cxмаксимальна глибина пошуку

cld ; автоматичне збільшення di

repnzscasb ; шукати al, доки [di] або cxне стане 0

not cx ; логічне заперечення cx

dec cx ; зменшення cxна 1 – довжина рядка

popdi ; відновлення регістрів

popax

ret ; повернення до викликаючої програми

ENDP StrLength

; -------------------------------------------------------------------------------------------

К-во Просмотров: 552
Бесплатно скачать Дипломная работа: Вивід вмісту каталогу y середовищі MS DOS