Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Кто может, помогите написать програму  (Прочитано 8231 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Xander7
Гость
« : 06-11-2005 10:52 » 

Люди, помогите бедному студенту с его тупым вопросом и ламерной програмой. У чего-то не пашет
Сама програма в Debuger под 8086...
Все, что ввожу в debuger
a cs:0100
mov cx, 03
lea dx,[0250]
call 018d
mov ah,o1
int 21
mov [024d],al
lea dx [0280]
call 018d
mov dl,[024d]
mov ah,02
int 21
lea dx,[02b0]
call 018d
mov al,[0242]
imul byte ptr[0240]
mov [0244],al
imul byte ptr[0244]
mov [0245],ax
mov al,[0241]
imul byte ptr[0243]
mov [o247],al
imul byte ptr[0247]
mov [0248],ax
mov al,[0241]
imul byte ptr[0242]
mov [024a],al
imul byte ptr[024a]
idiv word ptr[0245]
add ax,0009
mov bx,ax
mov al,[024d]
and al,0F
cbw
add bx,ax
mov [024b],bx
mov dl,[024b]
add dl,30
mov ah,02
int 21
mov al,[024b]
cmp al,05
jz 0195
js 019E
lea dx,[02e0]
call 018d
mov ah,07
int 21
loop 103
mov ah,4c
int 21
mov ah,09
int 21
ret
lea dx,[02c0]
call 018d
jmp 0186
lea dx,[02d0]
jmp 0199

програма сичтает
х =(-(bd)(bd) + (bc)(bc))/(ac)(ac) + 9 + k
где
ds:0250 0d 0a "vvedite celoe chicloot 0 do 6$"
ds:0280 0d 0a " выводит уравнение$"
ds:02b0 '=$'
ds:02c0 0d 0a 'результат=5$'
ds:02d0 0d 0a 'результат<5$'
ds:02e0 0d 0a 'результат>5$'
и ещё цикл на 3 раза. Ошибка у меня высвечивается когда набираю loop 103 и не пойму почему.(на эту прогу весь день убил) В принципе, тут ошибок наверное больше чем правильного.Я просто в ассемблере не разбираюсь,так что не злитесь Помогите если сможете, просто переписывая в программу правильные коды где  надо.Мне в среду уже сдать надо.И еще.Кто - то знает, как исправлять ошибки в Debuger, а то я по 10 раз прогу переписывал, пока без ошибок не вышло.  Так больше нельзя... Жаль Отлично
« Последнее редактирование: 19-12-2007 19:13 от Алексей1153++ » Записан
Xander7
Гость
« Ответ #1 : 14-11-2005 12:40 » 

Ну спасибо люди, так помогли...Правда я сам тут столько ошибок понапихивал. С loop 103 разобрался dec cx jmp 103 из-за этого все адреса сбились...Но высвечивается новая ошибка-переполнение деления...Но я уж сам попытаюсь, всё равно уже сдать не успел. Жаль :? Молчу
Записан
Mouse
Молодой специалист

ru
Offline Offline

« Ответ #2 : 14-11-2005 13:51 » 

Xander7, твой пост читал уже в среду, подумал что помощь уже не нужна. К тому же пойми, здесь все с работы на форуме сидят, а разбор ассемблерной проги с кодом на страницу - задача не на 5 минут. Ты задавай конкретные вопросы, так глядишь сразу ответы появяться Ага
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #3 : 14-11-2005 14:07 » 

Xander7 , гляну ночью, но ничего не обещаю Улыбаюсь
Записан

Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #4 : 15-11-2005 05:19 » 

Xander7 , а тебя никто не учил пользоваться метками? Разобраться трудно без них Улыбаюсь

ты их расставь - и сам влёт всё порешишь - 95%
Записан

Xander7
Гость
« Ответ #5 : 16-11-2005 13:37 » 

Програма уже решилась.Но всё равно спасибо.Теперь осталась одна маленькая проблемка с тем, что прога после 3-х прерываний не заканчивается, но я уже знаю решение,осталось на компе проверить. Но если ещё вопросы будут-обязательно спрошу. Ага Отлично Бррр
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines