![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
magistr011 |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 2 Регистрация: 4.11.2011 Город: Омск Учебное заведение: ОмГУ Вы: студент ![]() |
-Программа реализуется как ассемблерная вставка в языке высшего уровня (Паскаль, С++ и т.д.).
Заданы два числа <=15. Найти их произведение и с помощью битовых операций записать оба множителя и их произведение одно за другим в ячейку памяти размером в два байта без пропуска битов. Программу написал на Builder C++ (вернее не всю а только запросы переменных и вывод в окно...) Теперь на асме надо сделать следующее... в 2 байта по адресу поместить 3 числа (множитель, множитель, произведение), всё это надо без Небольшая наработка есть, но я запутался ((( mov ebx,[a]; //в еbx множитель shl еbx,10h; //сдвигаю влево на 4 бита mov eax,[b]; //в еax второй множитель or ebx,eax; //в ebx ложу оба множителя mov dword ptr [с],ebx; //сохраняю в ebx по адресу "с" imul [b]; // Умножаю mov word ptr [с+1],ax; // сохраняю произведение по адресу "с+1" хочу, чтобы в окне выводились числа например когда 15*15=225 выводиться должно 1515225 но когда вывожу "с" в отдельное окно, там всякая бредятина получается, но не например 1515225 (если 15*15=225) Подскажите что не так ??? да и это с пропусками битов получится, т.к. я незнаю, адрес конца первого множителя... А если первый множитель = 1, в регистр всёравно положится второеймножитель, но не прямо сразу за первым... Я думаю надо сделать поиск конца числа по адресу и сразу за этим числом по адресу ложить следующее число, попробовать с помощью процедур и меток... Например: процедура нахождения адреса конца введённого числа -> прыг на ввод следующего числа -> опять процедура нахождения адреса конца числа... Подскажите пожалуйста как тут быть, если кто может код написать, прошу, можно без расшифровки кода... Спасибо... |
![]() ![]() |
magistr011 |
![]()
Сообщение
#2
|
Новичок ![]() Группа: Пользователи Сообщений: 2 Регистрация: 4.11.2011 Город: Омск Учебное заведение: ОмГУ Вы: студент ![]() |
Разобрался сам, всем спасибо...
Собственно никому не спасибо )))) |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 25.5.2025, 19:35 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru