![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
![]()
Надо нарисовать квадратик через режим 0A000H функцию 13h
Допустим, нам нужен квадрат 100х100. Регистр al отвечает за цвет, регистр bx за смещение. Код:
Явно есть какой-то способ всё сделать это в лучшем виде |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 31.05.2009
Сообщений: 786
|
![]()
лучше подойдет команда stosb
Код:
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
![]()
эмм, а пояснить? откуда здесь di взялся и dx, что даёт stosb
|
![]() |
![]() |
![]() |
#4 | |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]() Цитата:
Код:
Последний раз редактировалось Mikl___; 05.10.2010 в 05:13. |
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
![]()
Cпасибо, только что же всё таки делает rep stosb (поконкретнее)?
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 20.09.2010
Сообщений: 38
|
![]()
Что делает rep stosb?
stosb выгружает al по адресу es : di. После этого меняет значение di в зависимости от флага направления и размера операнда. В данном случае на di+1. rep - префикс повторения. Повторяет команду и уменьшает содержимое cx, пока он не станет равным 0. CX тут типа счетчика цикла. Как же вы программируете без справочника команд? ![]() |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
![]()
Вот ещё вопросик задам, чтобы тему новую не начинать.
0A000h - это что за режим? Просто поточечно выводит через функции? Тогда 0B800h это прямое использование видеобуфера, и является более предпочтительным? |
![]() |
![]() |
![]() |
#8 | |
Пользователь
Регистрация: 20.09.2010
Сообщений: 38
|
![]() Цитата:
В других режимах он может быть, как вы написали, 0B800H. Можете почитать про видеорежимы и видеофункции подробнее: http://www.xserver.ru/computer/computer/video/2/ |
|
![]() |
![]() |
![]() |
#9 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]()
SwiP
Программу тебе написали, по-моему, самое время сесть за учебник и самостоятельно узнать как это всё работает |
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 18.03.2009
Сообщений: 101
|
![]()
А почему не хочет работать с режимом 12h? (640x480x16). Просто тупо какие-то белые точки, или там по другому надо всё делать?
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Латинский квадрат | innaa639 | Помощь студентам | 1 | 22.11.2009 22:40 |
ХИ квадрат | Vito89 | Помощь студентам | 3 | 25.10.2009 16:35 |
Черный квадрат | Дініс | Свободное общение | 9 | 07.09.2009 21:43 |
нарисовать квадрат с длиной стороны 100 пикселей, используя процедуру linerel(x,y:integer) | Кася_ | Помощь студентам | 6 | 23.02.2009 19:13 |
Магический квадрат | Anarx | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 18.12.2008 13:07 |