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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.05.2013, 19:13   #1
androdrev
Форумчанин
 
Аватар для androdrev
 
Регистрация: 19.03.2013
Сообщений: 135
Восклицание Ос на ассемблере

Здравствуйте, программисты! Я щас занимаюсь разработкой ОС на FASM, ну че-то получается, правда пока это не ос, просто загружается отдельно от винды и пишет "Privet, chelovek", но могу изменить на другое, но смысл ос-то не в этом! Смысл ос - поддержка файловой системы, управление ей, создание/открытие/удаление/переименование/изменение файлов. Помогите мне! Можете дать ссылки на полезные статьи, можете принять участие в разработке, буду благодарен, можете просто внести какие-то изменения в этот код, тупо выводящий сообщение "Privet":

Код:
org 07C00h
main:
jmp far 00:entry1
; это необходимо для того, чтобы точно знать, что
; мы находимся на 0000:07C00h

entry1: 
cli 
; запрещаем прерывания

mov ax,cs
mov ds,ax
; устанавливаем сегмент данных

sti
; разрешаем прерывания

mov ah,14
; в ah - номер процедуры (вывод знаков в режиме
; телетайпа
xor bl,bl

mov bx,tex 
; в bx, адрес выводимой строки
; 14-я функция требует чтобы адрес был в формате 0000:xxxx 
; а у нас он в формате 07c0:xxxx
; по этому к адресу надо добавить 7C00h

strt:
mov al,[bx]

test al,al
jz exit_
; если al=0 (конец строки) то выход

inc bx
int 10h
jmp strt

exit_:
cli
jmp $
; завешиваем компьютер ($ заменяется на адрес текущей команды
; следовательно эта команда будет повторятся бесконечно). 


tex db 'Privet',0Dh,0

times 510-($-main) db 0
; эта директива заставляет компилятор заполнить оставшееся (до 512-и байт) место нулями

db 0xAA, 0x55 
; а эти два байта нужны чтобы биос определил что это действительно 
; бут сектор

Заранее спасибо!
androdrev вне форума Ответить с цитированием
Старый 22.05.2013, 19:24   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

есть же тема...
http://programmersforum.ru/showthread.php?t=25012
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 22.05.2013, 20:42   #3
androdrev
Форумчанин
 
Аватар для androdrev
 
Регистрация: 19.03.2013
Сообщений: 135
Печаль

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
Я между прочим про FASM говорю... NASM у меня не работает.
androdrev вне форума Ответить с цитированием
Старый 23.05.2013, 00:28   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от androdrev Посмотреть сообщение
Я между прочим про FASM говорю... NASM у меня не работает.
а команды там другие чтоль?(лично переписывал на фасм).

далее в теме есть сорцы и на фасме.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 23.05.2013, 05:04   #5
vadimych
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 325
По умолчанию

androdrev, это Вы откуда код скопипастили? Отсюда? Осеписец. На вранье далеко не уедешь.
vadimych вне форума Ответить с цитированием
Старый 23.05.2013, 05:20   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

солидарен, да и нет там еще ничего для ОС, ибо это лишь загрузочный сектор, но не загрузчик.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 23.05.2013, 07:37   #7
androdrev
Форумчанин
 
Аватар для androdrev
 
Регистрация: 19.03.2013
Сообщений: 135
По умолчанию

Цитата:
Сообщение от vadimych Посмотреть сообщение
androdrev, это Вы откуда код скопипастили? Отсюда? Осеписец. На вранье далеко не уедешь.
Нет. Я этого сайта вообще не знаю. Мне код дал знакомый, а откуда уж он взял - не знаю. Мы вместе с ним ОС делаем, щас он уехал, я пытаюсь что-то сделать сам. Учу ассемблер. А тот код для НАСМА я пробовал в ФАСМЕ, не работает.

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
солидарен, да и нет там еще ничего для ОС, ибо это лишь загрузочный сектор, но не загрузчик.
О чем я собственно и говорил в первом сообщении. Собираюсь дорабатывать. Чтоб хотябы файлами управляла.

Критиковать - каждый мастер

Короче разобрался я сам. уже

Последний раз редактировалось Stilet; 23.05.2013 в 07:52.
androdrev вне форума Ответить с цитированием
Старый 23.05.2013, 12:43   #8
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

ТС, не парьтесь, но нужно идти вперед.
и не с файлами сначала надо работать, а с устройствами.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Графика а Ассемблере MISHAIL Помощь студентам 1 02.02.2011 08:13
Векторы в ассемблере unlike777 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 26.01.2011 18:41
Вычисления в ассемблере Razzer Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 26.12.2010 15:07