Функция
StringTitleEx преобразует каждый буквенный символ каждого слова в строке, завершающейся (\0) или 0, в верхний регистр.
Функция
StringTitleEx не выравнивает стек на 2 байта а сохраняет преобразованную строку на вершине стека и в регистре AX. Это сделано для того чтобы иметь возможность вызвать функцию
WriteString или
WriteStringEx сразу после вызова функции
StringTitleEx. Если после вызова функции
StringTitleEx для вывода преобразованной строки используется функция
WriteString то, выравнивание стека лежит на программисте. Для того чтобы выровнять стек на 2 байта, после вызова функции
WriteString нужно написать следующую команду: add sp, 2.
Параметры:- Указатель на строку, завершающуюся (\0) или 0.
Возвращаемое значение:- DS:AX: Указатель на изменённую строку.
Состояние флагов:- Функция не изменяет состояние флагов.
Особенности:- Слово определяется как последовательность букв, разделённая пробельными символами.
- Если указатель на строку равен 0, функция завершает работу без изменений.
- Функция не изменяет значения регистров, кроме AX.
- title Автор: Довгополов Евгений Сергеевич
- .286C
- .model small
- .stack 100h
- data segment public
- ____string db "российская федерация\0"
- data ends
- code segment public
- ____assume _ds:data, cs:code
- ____include Handyfar.inc
- ____include Handymac.inc
- ____main proc
- ________call____SetDataSegment
- ________pushs___ds:[string]
- ________call____StringTitleEx
- ________call____WriteStringEx
- ________push____0
- ________call____ExitProcessEx
- ____main endp
- code ends
- end main