Форум программистов, компьютерный форум, киберфорум
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.99/81: Рейтинг темы: голосов - 81, средняя оценка - 4.99
Пробующий
 Аватар для galileopro
185 / 98 / 10
Регистрация: 28.04.2009
Сообщений: 1,101

Не работают прерывания

25.09.2009, 21:32. Показов 16149. Ответов 31
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот такой код прекрасно компилится МАСМом, но при запуске екзешника выдает ошибку(Windows Side Bar). Причем такое происходит и с преріванием int 10h тоже. Может DOS переустановить? Виндовс у меня Windows XP SP3 - лицензионный. Монитор TFT 19 дюймов, вроде поддерживает все нужные цветовые режимы и глубину цвета, режим 256 цветный тоже. Видеокарта GeForce 9600GT.
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
.386
 .model flat,stdcall
option casemap:none
 
includelib      C:\masm32\lib\kernel32.lib
 
SetConsoleTitleA PROTO :DWORD
GetStdHandle     PROTO :DWORD
WriteConsoleA    PROTO :DWORD,:DWORD,:DWORD,:DWORD,:DWORD
ExitProcess      PROTO :DWORD
Sleep            PROTO :DWORD
 
 .const
NAMPRMP     DB   'Имя покупателя?','$'
 
 .code
Main PROC
 
 MOV  AH,09          ;Запрос вывода на экран
 LEA  DX,NAMPRMP     ;Загрузка адреса сообщ.
 INT  21H            ;Вызов DOS
 
invoke Sleep,4000
invoke ExitProcess, 0
 
Main ENDP
end Main
В чем здесь дело?
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.09.2009, 21:32
Ответы с готовыми решениями:

Как работают функции прерывания
Добрый день! Я никак не могу понять, как работают функции прерываний в ассемблере (MASM). Вот, допустим, имеется функция 02H прерывания...

[Вопрос] Перехват прерывания прямым доступом к вектору прерывания
Всех приветствую! В данный момент разбираюсь с обработкой аппаратного прерывания (прерывание таймера 08h и 1Ch, -//- клавиатуры 09h). ...

Обработчик прерывания int 21h (по книге Калашникова)
Доброе время суток, я чтиаю книгу Калашникова-Ассемблер и уже втрой день не могу понять почему обработчик не перехватывает прерывания и не...

31
Пробующий
 Аватар для galileopro
185 / 98 / 10
Регистрация: 28.04.2009
Сообщений: 1,101
26.09.2009, 02:19  [ТС]
Студворк — интернет-сервис помощи студентам
Вот я сделал obj MASM - ом. Запустил Вашу прогу из папки bin, указал там объектный файл
myproga.obj.
Потом Run File - MyFirst.exe
List File - MyFirst.map
Libraries - что сюда писать честно не знаю, но написал kerne32.lib
Definition File - MyFirst.dfp.
Все. Наконец откріваю папку lib и вижу, что екзешника там нет, а файл MyFirst.map - 4 байта занимает(т. е. его он не создал). Что не так делаю? Какие ему библиетеки нужны, системные?
0
 Аватар для Goodwin98
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
26.09.2009, 12:12
набирайте : doslnk myproga.obj
а на все остальное ничего не пишите, т.е. просто ентер нажмите у всех.
1
Пробующий
 Аватар для galileopro
185 / 98 / 10
Регистрация: 28.04.2009
Сообщений: 1,101
26.09.2009, 13:13  [ТС]
Цитата Сообщение от Goodwin98 Посмотреть сообщение
набирайте : doslnk myproga.obj
а на все остальное ничего не пишите, т.е. просто ентер нажмите у всех.
Нет. Нету екзешника в этой папке. Может он куда его сохраняет в другое место?
0
 Аватар для Goodwin98
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
26.09.2009, 14:12
Он его должен сохранять в ту же папку в которой компилируете. Вот записал видео, как я компилил этот примерчик.
Вложения
Тип файла: rar compil.rar (40.1 Кб, 677 просмотров)
1
Пробующий
 Аватар для galileopro
185 / 98 / 10
Регистрация: 28.04.2009
Сообщений: 1,101
26.09.2009, 14:49  [ТС]
Все получилось. Ура.
0
 Аватар для Liss29
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
05.11.2013, 21:27
Что-то ничего не получается. Ввожу команду ml /c ....asm выходит,что файл с расширением .obj создался,а при вводе doslnk /t xxxx.asm пишет "doslnk" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Что это за ерунда?
0
Клюг
 Аватар для Charles Kludge
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
05.11.2013, 23:17
Цитата Сообщение от Liss29 Посмотреть сообщение
Что это за ерунда?
А вы его поищите - он скорее всего есть, просто путь до каталога, где он лежит, не указан в переменной окружения PATH.
0
 Аватар для Liss29
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
05.11.2013, 23:37
DOSLNL.EXE или что,если DOSLNK.EXE,то этот файл есть. В PATH у меня указано ;C:\masm32\bin вроде так и должно быть. Или всё же нет.
Я уже тему создал,так что будем ждать ответов))) .com файл создал такиа вот .exeчто-то не хотит,хотя в ком.строке вроде операция прошла успешно,но в папке bin есть файлы asm,obj,com,а exe нет. Вот такие пироги)
0
Клюг
 Аватар для Charles Kludge
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
05.11.2013, 23:46
Цитата Сообщение от Liss29 Посмотреть сообщение
есть файлы asm,obj,com,а exe нет.
Если у вас в исходнике есть строчка org 100h, то .exe вы не получите.
0
 Аватар для Liss29
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
05.11.2013, 23:57
Цитата Сообщение от Charles Kludge Посмотреть сообщение
Если у вас в исходнике есть строчка org 100h, то .exe вы не получите.
То есть в этом всё дело,понятно,ну на данный момент мне именно com и нужен. Спасибо,а то я тут парюсь))) Если не трудно,то подскажите,как RadAsm правельно настроить,то что-то парюсь,похоже пути не так прописал или установил не туда,он у меня в корне диска С: вроде так и должно быть.
0
Клюг
 Аватар для Charles Kludge
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
06.11.2013, 00:00
Цитата Сообщение от Liss29 Посмотреть сообщение
как RadAsm правельно настроить
Я не пользую это поделие - мне хватает FAR'a.
0
 Аватар для Liss29
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,638
06.11.2013, 03:35
Цитата Сообщение от Charles Kludge Посмотреть сообщение
Я не пользую это поделие - мне хватает FAR'a.
Я вот Far-ом не пользуюсь Что ж,буду ждать,может кто поможет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.11.2013, 03:35

Вычислить адрес вектора прерывания по номеру прерывания.
17. По заданному номеру прерывания (13 h) вычислите логические адреса хранения исходных адресов обработчиков прерывания в таблице векторов....

Не работают внеш. прерывания
Не работаю внеш. прерывания. Ставлю брекпойнты в EXTI0_IRQHomdler и EXTI1_IRQHomdler не попадаю. Ножки работаю 100 %. Проверяю через...

Не работают прерывания по таймеру ATtiny13a
Добрый день, уже замучился, что только не пробовал: менял компиляторы(WinAVR, AtmelStudio4,7), менял операционные системы. Прерывания по...

Не работают прерывания ADC на STM32f030f4p6
Здравствуйте, такая проблема - не получается включить прерывания по завершению преобразования ADC. Пишу в uVision. Ножка PB1 как аналоговый...

Прерывания STM32F050 не работают, если не дёргаешь этот порт
Прерывания заведены от ног порта B0 и B2 чтобы различать их было можно! Ноги B9, B10, B11 - включены на выход. До тех пор, пока не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
32
Ответ Создать тему
Новые блоги и статьи
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг. Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует. В процессе разработки. . .
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации: 1. Вернуть возможность использования знаков | 1 l I;. . .
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С. Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию? Фраза «Любая достаточно развитая технология неотличима от магии». . .
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль? Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология. «Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru