МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів
Контакти
Тлумачний словник Авто Автоматизація Архітектура Астрономія Аудит Біологія Будівництво Бухгалтерія Винахідництво Виробництво Військова справа Генетика Географія Геологія Господарство Держава Дім Екологія Економетрика Економіка Електроніка Журналістика та ЗМІ Зв'язок Іноземні мови Інформатика Історія Комп'ютери Креслення Кулінарія Культура Лексикологія Література Логіка Маркетинг Математика Машинобудування Медицина Менеджмент Метали і Зварювання Механіка Мистецтво Музика Населення Освіта Охорона безпеки життя Охорона Праці Педагогіка Політика Право Програмування Промисловість Психологія Радіо Регилия Соціологія Спорт Стандартизація Технології Торгівля Туризм Фізика Фізіологія Філософія Фінанси Хімія Юриспунденкция |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Визначення змінних програми.Розробка алгоритму рішення|розв'язання|.
Алгоритм розв’язання задачі – лінійний. Для розв’язання завдання нам знадобиться змінна для представлення цілого беззнакового числа 486. Мінімальна комірка пам’яті, в якої може розміститися число 486 – 2 байти. Для представлення результату, нам знадобиться комірка пам’яті розміром 4 байта (486*486=236196). За допомогою директив визначення даних в сегменті даних зарезервуємо область пам'яті відповідної довжини для розміщення значень змінних: digit word 486,0 Додаткове подвійне слово резервуємо для наглядності. Оскільки|тому що| після виконання команди множення, результат буде збережений в двох регістрах|реєстрах| (AX - молодша частина|частка| числа, в DX - старша частина|частка| числа), для збереження результата в ОП необхідно|треба| виділити комірку розміром 4 байти. Причому, необхідно|треба| потурбуватися|поклопотатися| про доступ до старшої і|та| молодшої частинам|часткам| числа. Причина того, що результат 16-розрядного множення зберігається в парі DX:AX|, а не в 32-розрядному регістрі, заключається в забезпечені сумісністі з|із| попередніми 16-розрядними процесорами, у|біля| яких не було 32-розрядних регістрів|реєстрів|.
include irvine32.inc .data digit word 486,0 result label dword result_l word ? result_h word ? .code main PROC mov eax,0 mov ax,digit ; AX = 486 mul ax ; AX * AX -> DX:AX mov result_l,ax mov result_h,dx mov ecx,result exit main endp end main
Вміст регістра|реєстру| AX після виконання команди mov ax,digit
Вміст регістра|реєстру| AX , DX і ECX після виконання команди множення :
Приклад 4. Обчислити|обчисляти| діаметр по радіусу, збереженому в 8-бітовій змінній. include irvine32.inc .data radius byte 25,0 diameter word ? .code main PROC mov al,2 ; AL = 2 mul radius ; AX = radius * 2 mov diameterl,ax ; diameter <- AX exit main endp end main Множення двійкових чисел із|із| знаком imul| операнд_1|[,операнд_2,операнд_3|] Коли вказаний один операнд, IMUL| аналогічна MUL. Можливі варіанти IMUL|: 1. imul операнд_1,операнд_2 операнд_1 = операнд_1 * операнд_2 операнд_1 - завжди регістр. Приклади|зразки|: imul| edx,ecx| ;EDX = EDX| * ECX| imul| ebx,var| ;умножає 32-розрядну змінну var| на ЕВХ imul| есх,6| ; ЕСХ = ЕСХ * 6
2. imul| операнд_1, операнд_2, операнд_3| операнд_1| = операнд_2| * операнд_3 | де операнд_1 - регістр. операнд_3 - тільки безпосередній операнд.
Приклади|зразки|: imul| edx,ecx,7| ; EDX| = ECX| * 7 imul ebx,var,9 ; var * 9,результат в EBX imul| ecx,edx,ll| ;ЕСХ = EDX| * 11 Команди ділення Ділення|поділ| цілих чисел — це операція цілочисельна, тому в результаті утворюються два значення: частне і залишок|остача|. мнемокод дільник |поділи| Ділення|поділ| двійкових чисел без знаку Читайте також:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|