Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.01.2010, 15:44   #1
Dj_SheLL
Форумчанин
 
Аватар для Dj_SheLL
 
Регистрация: 14.10.2009
Сообщений: 128
По умолчанию Рисование ромба TASM

Добрый день.
Нарисовал в TASM 5.0 равнобедренный треугольник.
Задался задачей сделать на имеющемся исходнике ромб (по сути два таких треугольника,только один перевёрнутый).
Но не получается,не могу понять в чём причина-постоянно заливает весь экран в основной цвет линий.
Прощу помочь.Буду очень благодарен!
Вот код равнобедренного треугольника

Код:
.model small
.stack 100h

VGA_mode equ 13h 
color equ 1     ;цвет
x_sise equ 50    ;ширина х в пикселях
y_sise equ 50    ;ширина y в пикселях
x_pos equ 240   ;положение нижнего левого угла
y_pos equ 10    ;позиция у
.code
start:

set_mode: 
mov ah,00h         ; вызов нулевой функции BIOS
mov al,VGA_mode   ; и инициализация графического режима
int             10h

set_proc:
mov ah,0Ch      ; настройка параметров для вызова функции 0Ch
mov al,color
mov cx,x_pos
mov dx,y_pos


line_1:                         ;линия которая идёт от вершина к правому углу
int 10h
inc cx
inc             dx
cmp cx,x_pos
cmp             dx,(y_pos + y_sise)
jne line_1

line_2:                  ;линия которая идёт от правого угла до левого
int 10h
dec cx
cmp cx,(x_pos - x_sise)
jne line_2

line_3:          ;линия которая идёт от левого угла до вершины
int 10h
inc             cx
dec             dx
cmp             cx,x_pos
cmp dx,y_pos
jne line_3

anykey:                   ;выход по нажатию любой клавиши
mov ah,1      
int 16h     
jz anykey  
int 21h

end start
Прикладываю в архиве саму прогу.
Вложения
Тип файла: rar Прога.rar (1.0 Кб, 23 просмотров)
Dj_SheLL вне форума Ответить с цитированием
Старый 21.01.2010, 00:42   #2
Ulex
Непрофессионал
Участник клуба
 
Аватар для Ulex
 
Регистрация: 01.01.2008
Сообщений: 1,405
По умолчанию

Код:
.model small
.stack 100h

VGA_mode equ 13h 
color equ 1     ;цвет
sizeRomb equ 50    ;половина ширины х и высоты y в пикселях
;y_sise equ 100    ;высота y в пикселях - не имеет смысла

x_pos equ 100   ;положение центра ромба x
y_pos equ 100    ;положение центра ромба y
.code
start:

set_mode: 
mov ah,00h         ; вызов нулевой функции BIOS
mov al,VGA_mode   ; и инициализация графического режима
int             10h

set_proc:
mov ah,0Ch      ; настройка параметров для вызова функции 0Ch
mov al,color
mov cx, x_pos
mov dx, y_pos-sizeRomb

line_1:
int 10h
inc cx
inc dx
cmp cx, x_pos+sizeRomb
jne line_1

line_2:
int 10h
inc dx
dec cx
cmp cx,x_pos
jne line_2

line_3:
int 10h
dec cx
dec dx
cmp cx,x_pos-sizeRomb
jne line_3

line_4:
int 10h
inc cx
dec dx
cmp cx,x_pos
jne line_4

anykey:                   ;выход по нажатию любой клавиши
mov ah,1      
int 16h     
jz anykey  
int 21h

mov ah,04Ch 	
mov al,0h 	
int 21h 	

end start
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------
Страничка с моими программками http://ulex-masm.ru
Ulex вне форума Ответить с цитированием
Старый 24.10.2010, 14:38   #3
Angelochoka
Новичок
Джуниор
 
Регистрация: 24.10.2010
Сообщений: 2
По умолчанию

а можна нарисовать такой же триугольник, только что бы он был залитый цветом и цвет менялся через каждых 10 сикунд?
Angelochoka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TASM дело тонкое!:) (Где в TASM IDE?) 3.14oner Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 9 15.11.2011 16:20
TASM romale Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 16.12.2009 23:03
Определение ромба soldm Помощь студентам 9 06.10.2008 22:17