Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Ассемблер? Это просто! Учимся программировать


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler (Ассемблер)

Выпуск № 716
от 07.04.2007, 20:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 368, Экспертов: 39
В номере:Вопросов: 4, Ответов: 5


Вопрос № 80613: Программа: 32-х канальный осциллограф для отображения данных получаемых с LPT порта. Переключение скорости развертки осуществляется кнопками (все работает), но стоит нажать любую из них, блокируется клавиатура и становится невозможно использовать для...
Вопрос № 80620: Подскажите, пожалуйста, где можно найти пособие, где достаточно подробно освещается работа на MASM32 в среде Windows? В частности, управление control-кнопками и клавиаутурой одновременно; корректное распределение задачи на потоки; как организовать и ...
Вопрос № 80647: Здравствуйте, уважаемые эксперты ! У меня возник такой вопрос,в Dos существует функция 4Eh - 21 прерывания, для поиска файла. Так вот, ведь до её появления каким-то образом какой-то дядя Bill её написал, стало быть она существует в ас...
Вопрос № 80713: Ув эксперты! Занимаюсь по Юрову (TASM 3.1),по ходу нужно выводить на экран результаты вычислений.Юров показывает только как вывести на экран символ,введенный с клавы,а,если нужно вывести просто число 12345678h или другого размера? Я по п...

Вопрос № 80.613
Программа: 32-х канальный осциллограф для отображения данных получаемых с LPT порта. Переключение скорости развертки осуществляется кнопками (все работает), но стоит нажать любую из них, блокируется клавиатура и становится невозможно использовать для управления клавиши. Понимаю, что это ненормально, но не могу понять, что именно? Пытался вставить WM_KEYDOWN (UP) в цикл обработки сообщений; пробовал использовать поток (Thread), а также SetWindowLong - ничего не получается. Может, кто-нить сталкивался с подобной проблемой? Подскажите, пожалуйста.
Отправлен: 01.04.2007, 21:45
Вопрос задал: Тариэлл Алесандрович Родионов (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 3)

Отвечает: Koshich
Здравствуйте, Тариэлл Алесандрович Родионов!
Попробуйте проверить в отладчике состояние флага IF после нажатия клавиши, может какая-либо подпрограмма его изменяет, и есть смысл использовать команду STI.
---------
Когда ничего не получается - читай инструкцию!
Ответ отправил: Koshich (статус: 1-ый класс)
Ответ отправлен: 02.04.2007, 00:14
Оценка за ответ: 3
Комментарий оценки:
Уважаемый эксперт Koshich, с флагами IF - порядок, а вот за STI спасибо, попробую. Признаться, запрещать/разрешать прерывания в Win-среде в голову не приходило.
RTA


Вопрос № 80.620
Подскажите, пожалуйста, где можно найти пособие, где достаточно подробно освещается работа на MASM32 в среде Windows? В частности, управление control-кнопками и клавиаутурой одновременно; корректное распределение задачи на потоки; как организовать и использовать прерывание LPT порта при его нештатном подключении?; как грамотно организовать асинхронный ввод/вывод на LPT порт? Заранее благодарю за помощь!
Отправлен: 01.04.2007, 22:04
Вопрос задал: Тариэлл Алесандрович Родионов (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Тариэлл Алесандрович Родионов!

Для работы с принтером на прямую используются регистры контролера паралельного порта.
В приложении:
-адреса с учебниками(обратите внимание на работу с портами вводавывода),
-описание регистров контролера.
http://www.joysticks.ru/ -тут есть описание подключения нестандартных устройств к РС.
Удачи!

Приложение:

---------
И только наступив на грабли мы преобретаем драгоценный опыт!

Ответ отправил: Зенченко Константин Николаевич (статус: 8-ой класс)
Ответ отправлен: 02.04.2007, 13:56
Оценка за ответ: 4
Комментарий оценки:
Уважаемый Константин Николаевич! Благодарю за потраченное на меня время. Проблем с регистрами паралельного порта у меня нет. Например, программно реализован протокол SPI для связи c чипом памяти ATMEL. Если интересно, дайте знать на rta111@pochta.ru. Хочу понять, как инициировать и использовать прерывание LPT порта при работе (подключении) нештатного устройства. Вопрос не по теме: копирую данный текст в Aditor (KOI8) вижу его нормально, возвращаю в окно комментария - билиберда. В Интернете я новичок.


Вопрос № 80.647
Здравствуйте, уважаемые эксперты !
У меня возник такой вопрос,в Dos существует функция 4Eh - 21
прерывания, для поиска файла. Так вот, ведь до её появления каким-то
образом какой-то дядя Bill её написал, стало быть она существует
в ассемблерном виде, без использования прерываний. Если у кого-то
есть пример поиска файлов без использования функций Dos, или ссылки
на такие источники, прошу помочь.
Отправлен: 02.04.2007, 08:13
Вопрос задал: CrancV (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Стас
Здравствуйте, CrancV!
Тебе прийдется изучить форматы файловых систем.
Например для FAT:
1)считать "master boot" сектор, boot сектор, опросить систему чтобы определить геометрию диска, местоположение партиции, параметры FAT.
2)считать корневой DIR
3) найти в нем нужный каталог, считать нужное место в FAT чтобы прочитать следующий подкаталог(повторить N раз пока не найдем нужный каталог)
4) найти в каталоге имя файла (или имена файлов) соотвествующие маске.
(я как-то писал поиск по маске (не в каталоге, а в списке) по моему достаточно интересно и удачно получилось)

Примерно так.
Ответ отправил: Стас (статус: Специалист)
Ответ отправлен: 02.04.2007, 11:18
Оценка за ответ: 4
Комментарий оценки:
Алгоритм прост и понятен, гораздо сложнее с его реализацией...
Примерчик со своей работой дай пожалуйста подсмотреть.

Отвечает: Зенченко Константин Николаевич
Здравствуйте, CrancV!

Алгоритм Вам уже дали.
Нужно будет использовать прерывание 13h BIOS
Удачи!
---------
И только наступив на грабли мы преобретаем драгоценный опыт!
Ответ отправил: Зенченко Константин Николаевич (статус: 8-ой класс)
Ответ отправлен: 02.04.2007, 12:22
Оценка за ответ: 2
Комментарий оценки:
К сожалению ответ не по теме, 13h - ни что иное как прерывание Bios,
а ведь его тоже кто-то написал, в моём случае Phoenix...


Вопрос № 80.713
Ув эксперты!

Занимаюсь по Юрову (TASM 3.1),по ходу нужно выводить на экран результаты вычислений.Юров показывает только как вывести на экран символ,введенный с клавы,а,если нужно вывести просто число 12345678h или другого размера?
Я по простоте состряпал макрос (см ниже),но он,естественно не фурычит,мало знаний.
Подскажите,плз,как выйти из положения.
Спасибо.

Приложение:

Отправлен: 02.04.2007, 14:33
Вопрос задал: Жлукто Александр/Jeff (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Жлукто Александр/Jeff!

В приложении подпрограмма которая выводит содержимое AX или AL в 16-виде
Удачи!

Приложение:

---------
И только наступив на грабли мы преобретаем драгоценный опыт!

Ответ отправил: Зенченко Константин Николаевич (статус: 8-ой класс)
Ответ отправлен: 02.04.2007, 14:53


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.47 от 06.04.2007
Яндекс Rambler's Top100

В избранное