|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
08.12.2010, 21:19 | #1 (permalink) |
Member
Регистрация: 10.08.2009
Сообщений: 215
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 142
|
Помогите с ассемблером
Нужно написать прогу на асемблере в Turbo Debugger'е которая выводит текст в левом верхем углу, а потом по нажатию кнопки выстраивается в столбик. Помогите пожалуйста |
08.12.2010, 21:19 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
По схожим топикам найдено следующее Помогите, пожалуйста, с Ассемблером Помогите с ассемблером! |
08.12.2010, 23:17 | #2 (permalink) |
Member
Регистрация: 10.08.2009
Сообщений: 215
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 142
|
Ideal
p386 Model Small DATASEG nadpis db 'Eta nadpis',0 ENDS CODESEG Proc Main ;Инициализация сегмента данных mov ax,DGROUP mov DS,ax ;Вход в видеорежим mov ax,3h int 10h ;Инициализация регистров mov ax,0B800h ;Начало видеопамяти для текстового режима mov es,ax mov si,offset nadpis xor di,di ;Стандартный метод очистки регистра ;Атрибут текста - это цвет текста и цвет фона ;Атрибут занимает 1 байт mov ah,0Ah ;Ярко-зелёный текст на чёрном фоне Metka: lodsb ;Загружаем в регистр al символ or al,al ;Данная операция не меняет содержимого регистра, но устанавливает zf в 0, если al=0 jz Finish ;Если jz=0 (т.е. al=0), закончить печать stosw ;Посылает слово ax (ah-атрибут, al-ASCII-код) в видеопамять jmp Metka Finish: mov ax,4c00h int 21h Endp Main ENDS END Main Вот нашел в интернете как просто вывести текст. А вот как его потом вывести в столбик? Есть тут кто знает ассемблер? |
09.12.2010, 09:41 | #3 (permalink) |
support
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
|
По идее, вам нужно загружать в регистры видеопамяти не все символы сразу, а по 2 -каждый символ текста сопровождать символом конца строки и передавать последовательности в цикле до последнего символа.
После загрузки в регистр al текущего символа вам нужно инициализировать процесс перевода на новую строку.
__________________
Убить всех человеков! |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Опции темы | |
Опции просмотра | |
|
|