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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.09.2010, 17:50   #11
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

первый сектор загрузочный, только если он помечен как загрузочный, и только тогда(если изначально дискета загрузочная и эти два байта не изменены, то можно не парится)
Код:
TIMES 510 - ($-$$) db 0			;Ставим нулевые байты до 510го байта
dw 0xaa55					;Ставим сигнатуру, говорим BIOS, что это загрузочный сектор
http://programmersforum.ru/showpost....86&postcount=2
вот пример загрузочного сектора.

дискета загрузочная потому что на ней есть загрузочный сектор, почему сектор загрузочный я пояснил.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 21.09.2010, 18:16   #12
Tronix
Форумчанин
 
Аватар для Tronix
 
Регистрация: 15.06.2010
Сообщений: 740
По умолчанию

Есть мнение, что современные биосы срут на наличие aa55 и уходят на выполнения любого кода с первого сектора. Мой бут-сектор для FAT12 (дискеты) в приложении. Может все версии MS-DOS'а, PC-DOS, DR-DOS ну и мою операционку. Универсальный так сказать.
Вложения
Тип файла: rar LOADER_S.rar (3.9 Кб, 29 просмотров)
Чтобы понять рекурсию, сперва нужно понять рекурсию.
Tronix вне форума Ответить с цитированием
Старый 27.09.2010, 11:44   #13
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию

Всем доброго времени суток, кто-нибудь может мне помочь разобраться с программой?

{ Переход в графич. режим }
mov ax,13h
int 10h

std // установка флага направления DF, а что это даёт? для чего?
push 0a000h // сохранение в стеке, почему имеено такого слова и вообще зачем?
pop es // извлечение из стека
mov bp,4 // ???
m3:
mov di,01067fh //??
mov bx,02dh //??
m2:
mov cx,0140h // число выполнения цикла
m1:
mov ax,bx //??
mul ax //??
mov si,ax //??
mov ax,cx //??
mul ax // умножение беззнакового AL или AX на AX
sub ax,si // вычитание одного из другого
sbb dx,0 // ??
idiv bp // деление ???
and al,1
stosb
loop m1 // переход на m1, dec(m1)
dec bx
jnz m2 // переход на m2, если не 0
inc bp
jnz m3
{ Ожидание нажатия клавиши }
xor ah,ah
int 16
{ Восстановление видеорежима }
mov ax,3
int 10
{ Перезагрузка }
int 19
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли
Marsel737 вне форума Ответить с цитированием
Старый 27.09.2010, 12:08   #14
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию

Кто-нибудь, помгите разобраться, очень нужно
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли
Marsel737 вне форума Ответить с цитированием
Старый 27.09.2010, 16:11   #15
alexcoder
Форумчанин
 
Регистрация: 31.05.2009
Сообщений: 786
По умолчанию

Есть формула окружности x^2+y^2=R^2. Если рисовать по ней, то на экране получатся только концентрические окружности. Сделаем формулу x^2-y^2=R^2. Это даст муаровый эффект, особенно при небольших R, который мы и наблюдаем в программе. Переносим R^2 влево. (x^2-y^2)/R^2=c.
Теперь, если рисовать на экране по очереди точки с координатами x и y и цветом c and 1, то будет рисоваться муаровый эффект. R^2 - просто константа. От нее зависит вид рисунка.
Код:
{ Переход в графич. режим }
mov ax,13h
int 10h

std // установка флага направления DF, а что это даёт? для чего? потому что рисовать будем в обратном направлении от конца экрана к началу
push 0a000h // сохранение в стеке, почему имеено такого слова и вообще зачем?(сегмент видеопамяти для прямого доступа к видеопамяти)
pop es // извлечение из стека
mov bp,4 // ???R^2
m3:
mov di,320*200-1 //послений байт видеопамяти в режиме 13Н
mov bx,200 //??y
m2:
mov cx,320 // x
m1:
mov ax,bx //??
mul ax //y^2
mov si,ax //сохраняем y^2
mov ax,cx //??
mul ax //x^2
sub ax,si // вычитание одного из другого x^2-y^2
sbb dx,0 // ?? коррекция dx для деления 32/16 бит
idiv bp // деление ???(x^2-y^2)/y^2
and al,1 получения цвета, которым рисовать
stosb рисование точки на экране
loop m1 // переход на m1, уменьшение х
dec bx уменьшение y
jnz m2 // переход на m2, если не 0
inc bp увеличение R^2
jnz m3
{ Ожидание нажатия клавиши }
xor ah,ah
int 16
{ Восстановление видеорежима }
mov ax,3
int 10
{ Перезагрузка }
int 19
Помощь с программами:
vk.com/alexcoder1
e-mail: informatik101@mail.ru

Последний раз редактировалось alexcoder; 27.09.2010 в 16:14.
alexcoder вне форума Ответить с цитированием
Старый 27.09.2010, 16:45   #16
BVOG
Python,C++,ASM,Php
Пользователь
 
Аватар для BVOG
 
Регистрация: 29.08.2010
Сообщений: 58
По умолчанию

Для окружности можно использовать fsin, fcos.
Хакер - это не ламер с завышенным самомнением, а программист с заниженной зарплатой.
Нелегка и неказиста жизнь простого программиста.
BVOG вне форума Ответить с цитированием
Старый 27.09.2010, 16:57   #17
Tronix
Форумчанин
 
Аватар для Tronix
 
Регистрация: 15.06.2010
Сообщений: 740
По умолчанию

Цитата:
Сообщение от BVOG Посмотреть сообщение
Для окружности можно использовать fsin, fcos.
fsin,fcos - те еще тормоза, даже по современным меркам. Поэтому и никто их и не юзал для хоть сколько-нибудь сложных (массивных - нужно быстро и много молотить синусов или косинусов) вычислений. Все юзали таблички. Хотя сейчас уже конечно все равно. Никто не заморачивается.
Но, в любом случае, никто круги даже сейчас не рисует синусами и косинусами. Не скажу за все программы, но в основном юзают по старинке брезенхема и производные от него.
Чтобы понять рекурсию, сперва нужно понять рекурсию.
Tronix вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Cоздание загрузочной дискеты Foken Помощь студентам 0 30.05.2010 20:59
пример создания окна для ActiveX(OLE) компонента(по типу WebBrowser или Flash) Пепел Феникса Win Api 4 25.12.2009 09:08
Программа для создания загрузочной винды из простого офф образа. kakawkin Операционные системы общие вопросы 1 09.11.2009 19:26
Создания алгоритма для программы на паскале Brunik Помощь студентам 0 09.04.2009 12:17
Программы для создания сайтов VaDuXa Софт 17 16.11.2007 21:37