ХАНДЫФАР

Функция WriteStringEx выводит строку, завершающуюся (\0) или 0, на экран. Функция WriteStringEx автоматически выравнивает стек на 2 байта. Она поддерживает управляющие последовательности, такие как:

  • \t — горизонтальная табуляция,
  • \b — возврат на один символ назад,
  • \r — возврат каретки (переход в начало текущей строки),
  • \n — переход на новую строку,
  • \0 — символ завершения строки.

Параметры:

  1. Указатель на строку, завершающуюся (\0) или 0.

Возвращаемое значение:

  • Функция не возвращает значение.

Состояние флагов:

  • Функция не изменяет состояние флагов.

Особенности:

  • Функция не изменяет значения регистров.
  • Управляющие последовательности обрабатываются для корректного форматирования вывода.

  1. title Автор: Довгополов Евгений Сергеевич
  2. .286C
  3. .model small
  4. .stack 100h
  5. data segment public
  6. ____string db "Привет, Мир языка "
  7. ___________db "ассемблера!\0"
  8. data ends
  9. code segment public
  10. ____assume _ds:data, cs:code
  11. ____include Handyfar.inc
  12. ____include Handymac.inc
  13. ____main proc
  14. ________call____SetDataSegment
  15. ________pushs___ds:[string]
  16. ________call____WriteStringEx
  17. ________push____0
  18. ________call____ExitProcessEx
  19. ____main endp
  20. code ends
  21. end main
Функция WriteStringEx выводит строку, завершающуюся (\0) или 0, на экран. Функция WriteStringEx автоматически выравнивает стек на 2 байта. Она поддерживает управляющие последовательности, такие как:

  • \t — горизонтальная табуляция,
  • \b — возврат на один символ назад,
  • \r — возврат каретки (переход в начало текущей строки),
  • \n — переход на новую строку,
  • \0 — символ завершения строки.

Параметры:

  1. Указатель на строку, завершающуюся (\0) или 0.

Возвращаемое значение:

  • Функция не возвращает значение.

Состояние флагов:

  • Функция не изменяет состояние флагов.

Особенности:

  • Функция не изменяет значения регистров.
  • Управляющие последовательности обрабатываются для корректного форматирования вывода.

  1. title Автор: Довгополов Евгений Сергеевич
  2. .286C
  3. .model small
  4. .stack 100h
  5. data segment public
  6. ____string db "Привет, Мир языка ассемблера!\0"
  7. data ends
  8. code segment public
  9. ____assume _ds:data, cs:code
  10. ____include Handyfar.inc________; Подключаем файл с функциями
  11. ____include Handymac.inc________; Подключаем файл с макросами
  12. ____main proc
  13. ________call____SetDataSegment__; Вызываем процедуру SetDataSegment
  14. ________pushs___ds:[string]_____; Ложим на вершину стека адрес переменной string
  15. ________call____WriteStringEx___; Вызываем процедуру WriteStringEx(string)
  16. ________push____0_______________; Ложим на вершину стека байтовое значение кода возврата
  17. ________call____ExitProcessEx___; Вызываем процедуру ExitProcess(0)
  18. ____main endp
  19. code ends
  20. end main
Made on
Tilda