|
21 / 21 / 20
Регистрация: 05.12.2017
Сообщений: 124
|
||||||
Прекращение работы после закрытия окна с результатами (уравнение)13.05.2018, 17:36. Показов 1591. Ответов 3
Метки нет (Все метки)
Дали задание: решить уравнение разными 4-мя способами. Этот способ самый трудный - использование стека + взятие его значений с помощью EBP + обращение к переменным по адресам.
Проблема в том, что после закрытия окна с результатами появляется системная ошибка "Прекращение работы программы". Как ее исправить? Использую MASM.
0
|
||||||
| 13.05.2018, 17:36 | |
|
Ответы с готовыми решениями:
3
Прекращение работы Проводника после обновления ОС Timer и прекращение его работы после первого тика Уничтожение окна после закрытия |
|
Модератор
|
|
| 13.05.2018, 17:52 | |
|
Сначала определить на какой инструкции происходит ошибка. Для этого выполнить по шагам в отладчике x64dbg или ollydbg.
Добавлено через 9 минут А что за бред в программе? 1. строки 54-65. Начало программы. Какое-то заполнение переменных. Ладно, корректно 2. 67-72. Какие-то push и манипуляции с ebp. Но по всей остальной программе не вижу ни одного ответного pop или sub esp. Т.е. небаланс стека.3. до строки 108 сложение-умножение 4. 110-117 вывод результата 5. 118 - ret откуда? зачем?У вас целиком неправильная структура программы. Тут нечего исправлять - только переписывать. Почитайте методичку, примеры к masm32, примеры на форуме.
2
|
|
|
21 / 21 / 20
Регистрация: 05.12.2017
Сообщений: 124
|
||||||
| 13.05.2018, 19:55 [ТС] | ||||||
|
Спасибо за анализ. Нам сказано делать все по примеру. По этом жалкому примеру и таким вот образом.
Кликните здесь для просмотра всего текста
Вставка ret решила ошибку во всех программах, кроме этой. В общем, вставил invoke ExitProcess, 0 вместо ret и ошибка исправилась. Павел, спасибо, что уделяете мне время! У меня впереди еще массивы и модульность.
0
|
||||||
|
Модератор
|
|
| 13.05.2018, 20:19 | |
Сообщение было отмечено TheDmytrius как решение
Решение
Т.е. вы предлагаете встречный план - мне изучить на основе данного примера структуру программ на ассемблере.
Нет. Я настаиваю на том, чтобы именно вы посмотрели примеры консольных программ на masm (из пакета masm32) и разобрались с ошибкой в структуре. Примеры в нескольких папках в пакете masm32. Примеры здесь на форуме во множестве тем. В общем виде - структура программы на ассемблере мало отличается от таковой на C/C++/Pascal/Delphi: основная программа, процедуры, глобальные переменные. То, что вы приводите в качестве образца некорректная структура - ищите опечатки или пропуски в методичке. Почему вы самонадеянно пропускаете обучающие программы HelloWorld? При написании начинает проглядывать структура. Потом только добавляете - процедуры, константы, неинициализированные данные и прочее. У вас оба кода - бред. Через стек передаются параметры В ПРОЦЕДУРУ. А у вас - main через стек передаёт параметры в main. Наращивайте функциональность постепенно. 1. программа с расчётом 2. изменение - вычисление в процедуре, передача параметров через глобальные переменные 3. изменение - вычисление в процедуре, передача параметров через стек. можете поначалу воспользоваться автоматизацией от Microsoft - усложнённым синтаксисом proc, а потом и перейти на "рукопашный" стиль.
0
|
|
| 13.05.2018, 20:19 | |
|
Помогаю со студенческими работами здесь
4
Сохранение данных после закрытия окна Глюк скролла после закрытия модального окна Вылетает программа после закрытия диалогового окна Сбросить форму после закрытия popup окна Сохранение изменений в таблице после закрытия окна Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2.
Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
|
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2.
Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом.
В. . .
|
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2.
Задача: отобразить спецтехнику, которая на данный момент находится в ремонте.
Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
|
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
|
|
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|