Автор Игорь Кадурин задал вопрос в разделе Другие языки и технологии
как на Assembler организовать вывод сообщений на экран? и получил лучший ответ
Ответ от Миоко Таканава[гуру]
Для вывода на экран в DOS программах обычно используют функцию 9 системного сервиса DOS (прерывание 21h):
data segment
msg db 'Сообщение$'
data ends
code segment
assume cs:code, ds:data
start: mov ax,data
mov ds,ax
...
lea dx,msg; загрузка смещения начала сообщения
mov ah,9; номер функции
int 21h; вызов системной функции
...
mov ah,8
int 21h
mov ah,4Ch
int 21h
code ends
end start
Или то же самое, но в другой нотации:
model small
.data
msg db 'Сообщение$'
.stack 100h
.code
start: mov ax,@data
mov ds,ax
...
lea dx,msg
mov ah,9
int 21h
...
mov ah,8
int 21h
mov ah,4Ch
int 21h
end start
Функция выводит на экран сообщение, начало которого передаётся ей в регистре dx, пока не встретится код символа "$".
Поэтому с её помощью нельзя вывести на экран значок доллара.
Миоко Таканава
Гений
(51022)
А здесь что, намного больше? Всего три инструкции процессора.
Только материться не стоит здесь.
Например писать напрямую в видеопамять. Которая расположена по известному адресу.