|
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 40
|
||||||
Запрос ввода строки с клавиатуры28.08.2013, 14:38. Показов 5553. Ответов 24
Метки нет (Все метки)
Есть блок кода ассемблера (работает без ОС, из загрузочного сектора).
0
|
||||||
| 28.08.2013, 14:38 | |
|
Ответы с готовыми решениями:
24
Составить программу для ввода строки символов с клавиатуры в буфер и вывод этой строки на экран Ввести с клавиатуры строку символов.Признак окончания ввода строки - нажатие клавиши 'ввод'.Программа должна определить длину введенной строки L Ввода строки в массив строк с клавиатуры |
|
217 / 53 / 4
Регистрация: 03.08.2013
Сообщений: 278
|
|
| 28.08.2013, 16:00 | |
|
мне тоже интересно
на сколько помню, нужно перехватить прерывание клавиатуры. вроде у клавиши "f12" скан-код "0xD8"
0
|
|
|
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 40
|
|||||||||||
| 28.08.2013, 17:28 [ТС] | |||||||||||
|
Нашел пример:
0
|
|||||||||||
|
202 / 168 / 11
Регистрация: 30.05.2012
Сообщений: 703
|
||
| 28.08.2013, 18:52 | ||
|
В защищенном нужно создать таблицу дескрипторов прерываний защищенного режима,настроить IDTR (Interrupt Descriptor Table Register), разблокировать прерывания. Читать об IDT здесь: http://subscribe.ru/catalog/comp.soft.prog.intelpm А вообще, в защищенном режиме единственный способ работать с клавой - перехватывать Int 9h, считывать сканкод из порта 60h и анализировать.
0
|
||
|
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 40
|
|
| 28.08.2013, 19:02 [ТС] | |
|
А если работать в реальном режиме, то как с клавой работать?
0
|
|
|
217 / 53 / 4
Регистрация: 03.08.2013
Сообщений: 278
|
||
| 28.08.2013, 19:12 | ||
|
а можно поинтересоваться, на сколько серьезен этот проект? если не баловство на пару месяцев, то могу предложить взаимопомощь
0
|
||
|
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 40
|
|
| 28.08.2013, 20:00 [ТС] | |
|
Проект серьезен, сейчас учусь работать в ассемблере без ОС (про функции БИОС кстать читал уже, ща пытаюсь делать). Про то что учусь я говорю к тому что мало что знаю, парень я далеко не глупый, просто все время самоучка, спросить не у кого, пытаюсь разбираться сам, так что у меня сейчас стараний много, а результаты двигаються медленно.
План развития такой - написать небольшую ОС на Ассемблере и Си (текстовой режим, небольшое подобие графического интерфейса, презентационная версия короч), потом презентовать ее на конференции программеров (в Киеве живу, такие конференции часто проходят). Во время презентации попытаться найти людей в команду разработки. Ну и по немногу разрабатывать, а там посмотрим - можно позиционировать как ОС для узких задач, для встроенных систем или просто пользовательскую ОС (ну это уже очень много людей и времени над). В любом случае это большой опыт в низкоуровневом программировании. Ну эт планы обобщенные, если интерестно могу точнее в личку написать. Кстати, про серьезность проекта, мой прошлый проект я довел до релиза, и отзывы положительные (гугли Nata Player). По теме БИОС - я ту справку нашел? http://www.ctyme.com/intr/int-16.htm
0
|
|
|
217 / 53 / 4
Регистрация: 03.08.2013
Сообщений: 278
|
|
| 28.08.2013, 20:32 | |
|
NataPl, да, мне будет интересно.
Что касается плана развития. Не рекомендую писать ОС в реальном режиме. Ограничение в на ОЗУ в 1 мегабайт, сегмент на 64 кб и возможности процессора урезаны до исторического 8086 (если не ошибаюсь). А тем более, если там будет код на языке Си, то тормоза неизбежны. Еще один минус реального режима, как стоит отметить, это чувствительность к сбоям, т.е при ошибке в прикладном приложении может вылететь сама ОС. Справка вроде как та, но в будущем все равно придется столкнуться с таблицами дескрипторов и прочим садомазохизмом.
0
|
|
|
Клюг
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
||
| 28.08.2013, 21:29 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 40
|
|
| 28.08.2013, 22:37 [ТС] | |
|
а что посоветуете почитать про работу с клавиатурой из защищенного режима?
0
|
|
|
Клюг
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
|
| 28.08.2013, 23:10 | |
|
Дык, варианта два - вываливаться в риалмоду и работать через биос или слепить свой обработчик в протмоде.
Protected mode BIOS calls Award Bios source code - отсюда можно выдрать исходники обработчика int9. Sanos Operating System Kernel - с исходниками на си/асме.
0
|
|
|
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 40
|
|
| 29.08.2013, 09:20 [ТС] | |
|
Ок, подскажите, а как подгрузить в память и передать управление на второй бинарник? Вроде команда int 13h но не могу понять как указать адрес ко второму бинарнику, для подгрузки его в память.
0
|
|
|
Клюг
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
|
|
| 29.08.2013, 11:16 | |
|
Почитайте этот флейм - здравые мысли(не от ТСа) там есть.
0
|
|
|
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 40
|
||||||
| 29.08.2013, 23:23 [ТС] | ||||||
|
Работаю в защищенном режиме, все еще пытаюсь считывать символы с клавиатуры. Сейчас пытаюсь делать это так:
и посоветуйте плиз литературу или статьи про прерывания процессора в защищенном режиме
0
|
||||||
|
Ушел с форума
16373 / 7685 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
|
||
| 30.08.2013, 02:56 | ||
1
|
||
|
435 / 246 / 43
Регистрация: 05.08.2013
Сообщений: 1,670
|
|
| 30.08.2013, 09:10 | |
|
Руслан Аблязов. там есть готовый код работы с клавиатурой в PM
1
|
|
|
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 40
|
||||||
| 30.08.2013, 09:44 [ТС] | ||||||
|
спасибо большое
![]() Добавлено через 15 минут А подскажите еще, как в защищенной режиме перевести текст на новую строку? в реальном режиме делал с помощью кода
0
|
||||||
|
Ушел с форума
16373 / 7685 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
|
|
| 30.08.2013, 10:05 | |
|
NataPl,
а какой видеорежим установлен?
0
|
|
|
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 40
|
||||||
| 30.08.2013, 10:29 [ТС] | ||||||
|
0x3
устанавливаю так:
0
|
||||||
|
Ушел с форума
16373 / 7685 / 1080
Регистрация: 11.11.2010
Сообщений: 13,759
|
|
| 30.08.2013, 10:33 | |
|
NataPl,
80 символов в строке, реально - четные символы, нечетные атрибуты, di + 160 - 2*(длина строки) и произойдет перевод на следующую строку без символов 0хА и 0хD
0
|
|
| 30.08.2013, 10:33 | |
|
Помогаю со студенческими работами здесь
20
Какую функцию ввода строки с клавиатуры использовать?
Теряется запрос ввода строки, содержащийся в функции класса После ввода с клавиатуры произвольного строки определить и вывести на экран количество латинских букв в нем После ввода с клавиатуры произвольного строки определить и вывести на экран строку символов только с четными н Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|