|
Команди асемблера для Intel: 386р+ LTR, MOV, 386р+ MOV
ADO в Delphi AJAX Android C++ CakePHP CMS COM CSS Delphi Flash Flex HTML Internet Java JavaScript MySQL PHP RIA SCORM Silverlight SQL UML XML Бази даних Веб-розробка Генетичні алгоритми ГІС Гітара Дизайн Економіка Інтелектуальні СДН Колір Масаж Математика Медицина Музика Нечітка логіка ООП Патерни Подання знань Розкрутка сайту, SEO САПР Сесії в PHP Системне програмування Системний аналіз Тестологія Тестування ПЗ Фреймворки Штучний інтелект
|
Команди асемблера для Intel: 386р+ LTR, MOV, 386р+ MOV
386р+ LTR Завантаження регістра завдання TRКоманда Itr завантажує регістр завдання TR селектором сегменту стану завдання TSS з другого операнда, як який можна використовувати 16- або 32-розрядний регістр загального призначення або 16- або 32-бітове поле пам'яті. Команда використовується в захищеному режимі, якщо програмний комплекс виконаний у вигляді декількох самостійних завдань, і перемикання між ними здійснюються з використанням включених в процесор апаратних засобів підтримки багатозадачності. MOV Пересилка данихКоманда mov заміщає перший операнд (приймач) другим (джерелом). При цьому початкове значення першого операнда втрачається. Другий операнд не змінюється. Залежно від опису операндів, пересилається слово або байт. Якщо операнди описані по-різному або режим адресації не дозволяє однозначно визначити розмір операнда, для уточнення розміру передаваних даних в команду слід включити один з атрибутних операторів byte ptr або word ptr. Команда не впливає на прапори процесора. Залежно від використовуваних режимів адресації, команда mov може здійснювати пересилки наступних видів:
Заборонені пересилки з елементу пам'яті в елемент пам'яті (для цього передбачена команда movs), а також завантаження сегментного регістра безпосереднім значенням, яке, таким чином, доводиться завантажувати через регістр загального призначення: mov Ax,seg mem ;Сегментный адреса осередку mem mov Ds,ax ;Загрузка його в регістр DS Не можна також безпосередньо переслати вміст одного сегментного регістра в іншій. Такого роду операції зручно виконувати з використанням стека: push DS pop ES ; DS копіюється в ES Приклади ;У полях даних: memb db 5,6 memd dd 0 ;Двухсловная осередок ;У програмному сегменті: mov Dx,ax ;Из регістра в регістр mov Al,memb ;Из пам'яті в регістр mov Ax,0b800h ;Непосредственное значення в ;регістр mov Es,ax ;Из регістра в сегментний ;регістр mov word ptr memd+2,es ;Из сегментного ;регістра в пам'ять mov word ptr memd, 2000;Непосредственное ;значення в пам'ять mov Bx,word ptr memb ;Слово з пам'яті в ;регістр (число 0605) mov Di,word ptr memd ;Слово з пам'яті в ;регістр mov Es,word ptr memd+2;Слово з пам'яті в ;сегментний регістр
Приклад 1 mov Eax,esi Приклад 2 ; У полях даних mem dd 0 ;В програмному сегменті mov mem,ebp 386р+ MOV Пересилка в\із спеціальних регістрівЦей варіант команди mov (з тією ж мнемонікою, але іншими кодами операцій) використовується в захищеному режимі і призначений для обміну даними із спеціальними регістрами процесора: керівниками CRO...CR3, тестування Tr6 і Tr7, а також регістрами відладки DRO...DR7. Одін з операндів команди mov має бути 32-розрядним регістром загального призначення, іншим - один із спеціальних регістрів процесора. Зверніть увагу на додаткові посиланняГоловний розділСторінки, близькі за змістомзагрузка...
|
Сторінки, близькі за змістом ![]() Асемблер (англ. assembler) — загальноприйнята назва транслятора з автокоду. Асемблер переводить початкову програму, написану на автокоді, в переміщувану програму на мові машинній. Оскільки асемблер здійснює трансляцію на мову завантажувача, при завантаженні програми необхідна налаштування умовних адрес, тобто адрес, значення яких залежать від розташування даної програми в пам'яті ЦВМ і від її зв'язків з іншими незалежно трансльованими програмами. |
|
Copyright © 2008—2026 Портал Знань.
При використанні матеріалів посилання, для інтернет-ресурсів — гіперпосилання, на Znannya.org обов'язкове.
Зв'язок
|
НТУУ "КПІ" Інженерія програмного забезпечення КПІ Лабораторія СЕТ |
|