Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Графика 
V
    Опции темы
toxx
Дата 21.5.2011, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 653
Регистрация: 4.3.2009
Где: НН

Репутация: нет
Всего: 13



Есть программа резедентные часы. Часы выводяться пока символами, нужно сделать чтобы цифры выводились в графике
типа чтобы ноль был символами выведен и тд.

как мне это сделать лучше?уже голову сломал не могу приделать графику.

Это сообщение отредактировал(а) toxx - 21.5.2011, 21:20
PM MAIL   Вверх
S3nsitive
Дата 21.5.2011, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 18.3.2011
Где: Уфа

Репутация: нет
Всего: нет



Вот пример:
Код

;Установка видеорежима:
        push 0a000h                   ;-В сегментный регистр es записывается 0a000h -
        pop es                             ;/ - адрес сегмента видеопамяти.
        mov ax,12h                      ;-Установка видеорежима 640x480 с 16 цветами.
        int 10h                             ;/
;Непосредственно рисование:
        mov ah,0ch                      ;Функция для вывода будущей точки.
        mov al,9                           ;Цвет будущей точки.
        mov cx,0                          ;Координата x будущей точки.
        mov dx,0                          ;Координата y будущей точки.
        int 10h                             ;Вывод точки.

Дальше сам. smile

Это сообщение отредактировал(а) S3nsitive - 21.5.2011, 21:29
PM WWW ICQ Skype   Вверх
toxx
Дата 21.5.2011, 21:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 653
Регистрация: 4.3.2009
Где: НН

Репутация: нет
Всего: 13



Это все ясно, если попытаться вывести как я в 119-123 строках то выдает
relative jump out of range by .....(без этих строк все работает)
помогите поправить
Код проги:
Код




компилятор tasm


Это сообщение отредактировал(а) toxx - 27.5.2011, 22:12
PM MAIL   Вверх
S3nsitive
Дата 21.5.2011, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 18.3.2011
Где: Уфа

Репутация: нет
Всего: нет



К сожалению, тут я не помощник, потому что знаком с Ассемблером всего несколько дней. :(
PM WWW ICQ Skype   Вверх
toxx
Дата 21.5.2011, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 653
Регистрация: 4.3.2009
Где: НН

Репутация: нет
Всего: 13



S3nsitive 
обидно, буду ждать может кто поможет)
спасибо за участие!
PM MAIL   Вверх
500mhz
Дата 22.5.2011, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: 1
Всего: 14



.186 заменить на .386
а то у тебя компилиться под 8086 процессор у которого только short jmp


--------------------

PM MAIL ICQ   Вверх
toxx
Дата 22.5.2011, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 653
Регистрация: 4.3.2009
Где: НН

Репутация: нет
Всего: 13



Цитата

.186 заменить на .386
а то у тебя компилиться под 8086 процессор у которого только short jmp 

а это не приведет к тому что придется использовать регистры eax ... и тд?

Это сообщение отредактировал(а) toxx - 22.5.2011, 18:32
PM MAIL   Вверх
500mhz
Дата 22.5.2011, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: 1
Всего: 14



нет 


--------------------

PM MAIL ICQ   Вверх
toxx
Дата 22.5.2011, 19:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 653
Регистрация: 4.3.2009
Где: НН

Репутация: нет
Всего: 13



500mhz 
скачал tasm32,tlink32 запускаю так

tasm32 /t resclock.asm
tlink32 /t resclock.obj
/x не помогает
выводит
fatal:16bit segment not supported ...
PM MAIL   Вверх
500mhz
Дата 22.5.2011, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


шайтан
***


Профиль
Группа: Завсегдатай
Сообщений: 1017
Регистрация: 5.5.2008
Где: Киев / Italy

Репутация: 1
Всего: 14



хз я в тасме не спец перепиши под фасм да и все


--------------------

PM MAIL ICQ   Вверх
toxx
Дата 26.5.2011, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 653
Регистрация: 4.3.2009
Где: НН

Репутация: нет
Всего: 13



Можно узнать почему так происходит хочу вывести символ через видобуфер делаю так
вывод 1 символа

Код
SetChar macro x,y  
    mov    SI, offset mes    
    Mov    DI,    80*2*x+37*y    
    movsb
endm


вывод символа в другом макросе 
Код
OutStrG macro
push    CS            
pop    DS                
pusha
mov    AX,    0B800h        
mov    ES,    AX        

        SetChar 1,1

popa
endm


почему, если писать setchar 1,1 один раз то tasm компилирует и линкует нормально.
Еслиже написать так как ниже, то уже ошибка relative jump out of range by

Код
OutStrG macro
push    CS            
pop    DS                
pusha
mov    AX,    0B800h        
mov    ES,    AX         
        SetChar 1,1  
        SetChar 1,2  
        SetChar 1,3
        SetChar 2,1
        SetChar 2,3
        SetChar 3,1 
        SetChar 3,2
        SetChar 3,3
popa
endm

почему получается что все разбросано по экрану, если выводить цифры часов графикой?
Подсказали как сделать, 
[bp]  где bp это наша позиция цифры
а в итоге все разбросано по эрану.

Код
Out0 macro
push    CS            
pop    DS                
pusha
     mov DI,    80*2*5+ 2*5*[bp]    ; ????????? ???????? ?? ??????     
     cld
     SetChar '0'                                              
     SetChar '0'
     SetChar '0'  
     mov DI,    80*2*6 +2*5*[bp]
     SetChar '0'
     SetChar ' '
     SetChar '0'  
     mov DI,    80*2*7 +2*5*[bp]
     SetChar '0'
     SetChar '0'
     SetChar '0'
popa

endm     
Out1 macro 
push    CS            
pop    DS                
pusha
     mov DI,    80*2*5 + 2*5*[bp]    ; ????????? ???????? ?? ??????     
     cld
     SetChar '1'                                              
     SetChar '1'
     SetChar '1'  
     mov DI,    80*2*6 + 2*5*[bp]
     SetChar ' '
     SetChar ' '
     SetChar '1'  
     mov DI,    80*2*7  + 2*5*[bp]
     SetChar ' '
     SetChar ' '
     SetChar '1'
popa

endm

вопрос решен

Это сообщение отредактировал(а) toxx - 27.5.2011, 22:13
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.0734 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.