![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 29.11.2013
Сообщений: 9
|
![]()
Всем привет!
есть выражение: (A*X*X+B*X+C)div(D*X+E) в первых скобках X в квадрате задание: нужно выполнить подсчёт выражения в ассемблере вставкой _asm в языке высокого уровня, помогите пожалуйста сделать вычисление в этой вставке , всё остальное сам сделаю, сегодня нужно край сдать, иначе хана мне, есть такие кто скажет "делай сам", полагаюсь что остались люди которые могут еще помочь. |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 05.11.2013
Сообщений: 1,601
|
![]()
Пример для части выражения
Код:
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 29.11.2013
Сообщений: 9
|
![]()
да , спасибо большое только буду писать на C++ , пока только учусь.
|
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 05.11.2013
Сообщений: 1,601
|
![]() |
![]() |
![]() |
![]() |
#5 |
Регистрация: 29.11.2013
Сообщений: 9
|
![]()
выражение на ассемблере: (A*X*X+B*X+C)div(D*X+E)
в первых скобках X в квадрате вычисление должно быть на ассемблере а вывод с помощью с++ вот код выражения, что тут неправильно? mov eax,d imul x add eax,e mov ecx,eax mov eax,x imul x imul x mov ebx,eax mov eax,a imul ebx,eax mov edx,eax mov eax,b imul x add eax,c add edx,eax cdq idiv ecx что тут неправильно , и как записать результат в какой регистр его вывести можно. |
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 05.11.2013
Сообщений: 1,601
|
![]() Код:
![]() Препод, я думаю, не одобрит ![]() Последний раз редактировалось ZX Spectrum-128; 29.11.2013 в 13:31. |
![]() |
![]() |
![]() |
#7 |
Регистрация: 29.11.2013
Сообщений: 9
|
![]()
что это обнуление даёт?
как понимать что это не по ассемблеровски? а по чём это? мне на другом форуме тоже вариант с обнулением предложили, работать же должно правильно? Последний раз редактировалось Stilet; 29.11.2013 в 14:05. |
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 05.11.2013
Сообщений: 1,601
|
![]()
Плохо, что обнуляется. В edx хоанилось x*x*a
Я бы так схитрил ... Mov temp,edx ... // тут умножили и edx обнулился Mov edx,temp Использовать переменные яп при работе в асм - "хитрость" Последний раз редактировалось ZX Spectrum-128; 29.11.2013 в 13:40. |
![]() |
![]() |
![]() |
#9 |
Регистрация: 29.11.2013
Сообщений: 9
|
![]()
что это обнуление даёт в программе ? он полюбому это спросит, а так всё работает, спасибо большое помогли.
|
![]() |
![]() |
![]() |
#10 |
Участник клуба
Регистрация: 05.11.2013
Сообщений: 1,601
|
![]()
Как работает? У меня не работает, потому что edx уходит в 0 и x*x*a теряется. Он (регистр) сам почему-то обнуляется.
![]() Ну раз у вас работает, то и ладушки. Удачи на зачете! |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Написание пакетной утилиты ДОС средствами языка высокого уровня (ЯВУ). | Дарья28066 | Помощь студентам | 0 | 14.10.2013 07:46 |
17. Составить программу логического отрицания и логического умножения двоичных чисел. Программа на языке высокого уровня. | мурад05 | Помощь студентам | 1 | 08.10.2012 16:06 |
лабораторное задание по дисциплине "Программирование на языке высокого уровня" (с++) | Иван Савин | Помощь студентам | 2 | 01.01.2011 18:36 |
Новый конкурс им. Парсифаля. Задача крайне высокого уровня сложности | Парсифаль | Общие вопросы C/C++ | 32 | 09.05.2009 03:43 |