|
155 / 25 / 6
Регистрация: 06.06.2009
Сообщений: 262
|
|
Функции IN, OUT не работают17.06.2009, 16:41. Показов 5638. Ответов 15
Метки нет (Все метки)
Изучаю Ассемблер. Сейчас разбираю по примерам учебника Рудакова и Финогенова "Язык Ассемблера: Уроки программирования". Использую компилятор TASM 4.1 и отладчик TD.
Так вот вопрос. При разборе функций IN, OUT они не работают, если можно так сказать. Отладчих их просто проскакивает, ничего не делая. Что может быть. Ради этого в принципе и начал изучать Ассемблер. P.S. Ассемблер начинают разбирать во всех книгах с реального режима. Но я то все эти программки пишу в Винде в блокноте. Хоть и компилирую в FAR'e, но все равно получается защищенный режим. Могут они из-за этого не работать? P.S.S. Там еще была глава про ESC-последовательности - спец функции DOS для вывода символов. Так они тоже не работают. Но для них нужено было в CONFIG.SYS прописать путь к какому-то дивайсу. Я его в папке с Виндой нашел, прописал, но что-то не подействовало. Help, plz. Больше не на кого расчитывать. Уже на третьей книге спотыкаюсь.
0
|
|
| 17.06.2009, 16:41 | |
|
Ответы с готовыми решениями:
15
Не работают функции <math.h> в методе (функции-члене) функции не работают
|
|
1779 / 757 / 153
Регистрация: 03.06.2009
Сообщений: 5,940
|
|
| 17.06.2009, 19:55 | |
|
это скорей всего из-за того, что запускаете отладчик из-под фара. Поскольку Фар - это консольное приложение windows, в нем могут некорректно обрабатываться порты ввода/вывода, прямой доступ к видеопамяти, векторы прерываний и др. для отладки пользуйтесь Volkov commander, NC. Для них windows создает более или менее нормальное окружение ДОС. А еще лучше, загружайтесь с дискеты.
1
|
|
|
155 / 25 / 6
Регистрация: 06.06.2009
Сообщений: 262
|
|
| 18.06.2009, 00:31 [ТС] | |
|
Спасибо. Сегодня попробую.
0
|
|
|
68 / 24 / 2
Регистрация: 16.05.2009
Сообщений: 73
|
|
| 21.06.2009, 06:18 | |
|
если вы работаете "из-под винды", то к многим портам ввода-вывода просто нет доступа. В винде доступ можно получить только с помощью аппаратных драйверов. С таймерами и клавой проблем нет, но LPT, COM и ещё множество других закрыты для прямого использования.
0
|
|
|
Просто прогер
1292 / 1079 / 13
Регистрация: 13.03.2009
Сообщений: 2,502
|
|
| 21.06.2009, 11:45 | |
|
Ну с COM потом можно нормально работать через API и при этом управлять его дополнительными линиями, а вот с LPT надо через драйвер, скажем, inpout32.dll или IO.dll
0
|
|
|
Флудер
195 / 33 / 11
Регистрация: 23.03.2007
Сообщений: 334
|
|
| 21.06.2009, 13:19 | |
|
для прямого доступа к регистрам COM-порта тоже нужен драйвер
а по данной теме есть уже готовые решения, например UserPort(легко находится через поисковик) или OpenPorts (http://gl00my.chat.ru/downloads.html)
0
|
|
|
Просто прогер
1292 / 1079 / 13
Регистрация: 13.03.2009
Сообщений: 2,502
|
|
| 21.06.2009, 15:30 | |
|
0
|
|
|
68 / 24 / 2
Регистрация: 16.05.2009
Сообщений: 73
|
|
| 22.06.2009, 08:33 | |
|
да никто не спорит. У человека ж in и out не работают, а вы ему про API и дрова)))))
0
|
|
|
155 / 25 / 6
Регистрация: 06.06.2009
Сообщений: 262
|
|
| 25.06.2009, 16:15 [ТС] | |
|
В принципе я надеюсь дойти до СОМ, LPT и даже PCI.
![]() Но что-то я поспешил сказав, что они заработали. Использование NC и Volkov Commander'a дали только то, что я смог обращаться непосредственно к видеопамять. (раньше я и туда не мог добраться) Но с функциями IN и OUT дело так и не пошло. Вот первейший пример: отучить маску контроллера прерываний, и установить 1й бит, запретив прерываний от таймера. Время как шло, так и идет. Смотрю в отладчике, он эти функции проскакивает, выполняя следующии (чтобы убедиться перекидывал маску в BL) ;Запрещение прерываний от таймера .586 text segment use16 assume CS:text main proc mov AX, data mov DS, AX in AL, 21h mov BL, AL or BL, 1 out 21h, BL mov AX, 4C00h int 21h main endp text ends end Подскажите что-нибудь, или в самом деле с дискеты грузиться придется. ![]()
0
|
|
|
Айхрень...
306 / 176 / 7
Регистрация: 02.06.2009
Сообщений: 1,077
|
|
| 25.06.2009, 16:38 | |
|
Не уверен, но может VMWare и DOS 6.22 поможет?
0
|
|
|
155 / 25 / 6
Регистрация: 06.06.2009
Сообщений: 262
|
||||||
| 25.06.2009, 16:49 [ТС] | ||||||
Сори, какую-то бракованную прогу показал. Вот нужная. Так отладчик должен эти функции проскакивать?
0
|
||||||
|
68 / 24 / 2
Регистрация: 16.05.2009
Сообщений: 73
|
||||||||||||||||
| 01.07.2009, 18:44 | ||||||||||||||||
|
код странный.....
строкой:
а строкой:
достаточно:
0
|
||||||||||||||||
|
155 / 25 / 6
Регистрация: 06.06.2009
Сообщений: 262
|
|
| 05.07.2009, 11:23 [ТС] | |
|
Я нашел старый ноут Celeron 330Мгц, ОЗУ 98Mbt. Так на нем можно изучать аппарутку? Принцип же тот же.
И 2й вопрос, на этот ноут можно поставить DOS?
0
|
|
|
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
|
|
| 05.07.2009, 19:46 | |
|
Вообще какая разница, на каком компе ставить Дос? В реальном режиме они почти все одинаковы. Единственное, что вам нужно в нем - это флоппик или сидиром, чтоб грузиться в дос с них, если не хотите заниматься мазохизмом ставя его на жесткий диск.
Или даже поставьте вирт. машину (Virtual PC,Virtual Box, DosBox, VMWare и т.д.) и ставте дос в ней. Тогда даже перезагружаться не придется.
0
|
|
|
68 / 24 / 2
Регистрация: 16.05.2009
Сообщений: 73
|
|
| 11.07.2009, 15:08 | |
|
лучше для изучения все-таки отдельная машина. Потом когда начнёте изучать защищенный режим, виртуальные тачки не помогут. При попытке в ДОСе на вирт тачке перейти в защищенный режим, VMWare у меня выпадал с исключением. Остальные проги ждет та же участь (уверен, ведь сама эмуляция вирт. машин - это функционал Винды, а проги - всего лишь оболочки).
Ставьте на ноут DOS (пока пойдет для экспериментов). Но лучше все-таки PC. Я уверен что если покопаться - можно найти по дешёвке старенький..... у мя лежат на эти случаи 600-ник и вообще 486(самое сложное было оперативу для него надыбать). На ноуте особо в железе не потыкаешься..... Может вы захотите свои собственные PCI-устройства мутить (в наше время это не так уж и сложно).
0
|
|
|
1779 / 757 / 153
Регистрация: 03.06.2009
Сообщений: 5,940
|
|
| 11.07.2009, 15:51 | |
|
А еще отличный вариант, это сделать загрузочную флешку. Грузится очень быстро и работает на порядок быстрей, чем с флопиком, да и надежней, наконец.
Для себя сделал как на писано тут все работает отлично!
0
|
|
| 11.07.2009, 15:51 | |
|
Помогаю со студенческими работами здесь
16
Не работают функции
Не работают функции Не работают функции Не работают функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|
|
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению.
На форме документа создается. . .
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|