|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
15.03.2011, 09:55 | #1 |
Регистрация: 14.01.2010
Сообщений: 8
|
Все без DOS!? Реально ли?
У меня такой вопрос:
Как на чистом асме без int всяких без дос, хотябы считать символ? Т.е. как реализовать на чистом асме что-то типа: КОД: mov ah,01h int 21h Конец кода, а помечаю так потому, что не работает эта пометка кода! Я слышал что Windows XP,NT написаны без использования Дос вообще. Так как реализовываются эти стандартные Досовские прерывания? |
15.03.2011, 10:22 | #2 | |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,162
|
sad101010
Можно использовать чтение буфера клавиатуры по адресам 0040:001Ah указатель на логическое начало буфера 0040:001Ch указатель на логический конец буфера 0040:001Eh память для хранения ASCII/скан-кодов начало 0040:003Eh конец буфера 0040:0080h указатель на физическое начало буфера 0040:0082h указатель на физический конец буфера Для вывода на экран можно обращаться напрямую в память видео-адаптера Очень многое можно сделать через порты ввода/вывода Вопрос -- только зачем тебе этот геморрой? И не путай теплое и мягкое ДОС и Виндовс это разные операционные системы, поэтому Цитата:
Последний раз редактировалось Mikl___; 15.03.2011 в 10:36. |
|
15.03.2011, 14:08 | #3 |
Форумчанин
Регистрация: 23.04.2009
Сообщений: 346
|
Да работают в НТ дос программы, только почти никакие и считай что никогда. Там же эмуляция доса-виртуальная машина, делающая вид, что она имеет реальные железяки и прочее. То есть никакие эти ваши инты на процессоре под НТ не выполняются. Другое дело системы на основе доса всякие эти 95е и прочие 98е окна, они-надстройка над досом. Вообщем читайте книжки и все вы поймете почему сейчас совсем не то, что 10 лет назад
Нет, ну правда..
|
15.03.2011, 21:25 | #4 |
Регистрация: 14.01.2010
Сообщений: 8
|
Про чистый асм я в книге прочитал. А без дос хочу написать прогу, чтобы мозги загудели и им как дельфи после паскаль по маслу шёл...
|
16.03.2011, 08:34 | #5 | ||
Старожил
Регистрация: 15.02.2010
Сообщений: 15,695
|
Цитата:
Цитата:
П.С, если уж так хочтся можно посмотреть осдев форумы |
||
16.03.2011, 08:46 | #6 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
Помню на каком-то форуме кто-то рассказывал что он сделал курсовик по ассемблеру. Прога переводила процессор в защищённый режим и что-то ещё делала (это уже не важно). Так вот его проподаватель всё время утверждал что такая программа никогда не заработает, мол там есть несуществующие команды и регистры (аля ldgt, mov cr0, ххх) и вообще используемая в программе модель памяти просто-напросто абсурдна. Какое было изумление этого "профессора" когда он увидел что программа работает.
Вывод: выкидывайте свои книжки 80-90х годов. Больше всего удивляет когда такие "профессоры" и студенты начитавшиеся таких книжек парят про оптимизацию программ - типа если мы применим вот эту инструкцию вместо этой мы выиграем два такта процессора. Они даже не знают что некоторые приёмы на современных процессорах просто-напросто бестолковые, они не знают что например, за счёт спаривания инструкций, некоторые команды выполняются одновременно. Последний раз редактировалось rpy3uH; 16.03.2011 в 08:53. |
16.03.2011, 09:05 | #7 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,162
|
rpy3uH
Беда не в том, что студенты читают книжки 80-90х годов. Беда в том, что они вообще ничего не читают, а только требуют готовые решения Как пример топик redwhite деление чисел или топик Renat21 Сложение двух чисел вводимых с клавиатуры Последний раз редактировалось Mikl___; 16.03.2011 в 09:14. |
16.03.2011, 09:34 | #8 | |
Пользователь
Регистрация: 07.05.2010
Сообщений: 34
|
Грузин. Ты говоришь что некоторые команды выполняются одновременно:
Цитата:
Если бы все люди были идеальны, то любого человека можно было бы заменить любым другим...
|
|
16.03.2011, 09:39 | #9 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
http://www.enlight.ru/faq3d/articles/61.htm самый первый пункт
Основной приём это правильно располагать команды в программе. |
17.03.2011, 05:04 | #10 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,162
|
rpy3uH
Спасибо за ссылку! |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как скопировать все данные с листа без формул? | PashaNastya | Microsoft Office Excel | 4 | 21.08.2010 14:00 |
Регулярные выражения. Выбрать все начиная с 1 и заканчивая 2, но без 3 | vvzone | PHP | 9 | 02.04.2010 16:21 |
OC без СД, и все сложно... | oLeo | Операционные системы общие вопросы | 8 | 26.12.2009 19:44 |
Процедуры без Bios и без Dos,бывают? | codeok | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 3 | 31.10.2008 03:17 |