|
Intel
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
Система команд процесорів IntelНижче приводиться алфавітний перелік команд процесорів Intel з коротким описом дії кожної команди і прикладами її використання.
У розділах статей, що починаються з позначення 386+, описуються відмінності дії даної команди в сучасних 32-розрядних процесорах (80386, i486, Pentium). Як правило, ці відмінності полягають в можливості використання не тільки 8- і 16-розрядних, але і 32-розрядних операндів, а також розширених режимів адресації пам'яті. Команди асемблера для Intel: AAA, AAD, AAM, AASКоманда ааа використовується услід за операцією складання add в регістрі AL двох неупакованих двійково-десяткових (BCD) чисел, якщо в АХ знаходиться дворозрядне неупаковане двійково-десяткове число. Команда не має параметрів. Вона перетворить результат складання в неупаковане двійково-десяткове число, молодший десятковий розряд якого знаходиться в AL. Якщо результат перевищує 9, виконується інкремент вмісту регістра АН. Команда впливає на прапори AF і CF. Команди асемблера для Intel: 386+ BSF, 386+ BSR, 486+ BSWAP, 386+ ВТСКоманда bsf сканує слово або подвійне слово у пошуках біта, рівного 1. Сканування виконується від молодшого біта (0) до старшого. Якщо в слові не знайдено встановлених бітів, то встановлюється прапор ZF. Якщо встановлені біти є, то номер першого встановленого біта заноситься у вказаний в команді регістр. За номер біта вважається його позиція в слові, відлічувана від біта 0. Команди асемблера для Intel: 386+ BTR, 386+ BTS, CALL, CBW, 386+ CDQКоманда btr перевіряє певний біт в слові, заданому першим операндом, копіює його значення в прапор CF і скидає. Номер біта виступає як другий операнд. Першим операндом команди btr може служити регістр або елемент пам'яті, другим - регістр або безпосереднє значення. У команді допустиме використання як 16-бітових, так і 32-бітових операндів, але і перший, і другий операнди мають бути одного типу (за винятком випадку, коли другий операнд - константа). Команди асемблера для Intel: CLC, CLD, Cl1, 386р+ CLTS, СМСКоманди асемблера для Intel: СМР, CMPS, CMPSB, CMPSW, 386+ CMPSDЯк перший операнд команди сmр можна указувати регістр (окрім сегментного) або елемент пам'яті, як другий - регістр (окрім сегментного), елемент пам'яті або безпосереднє значення, проте не допускається визначати обидва операнди одночасно, як елементи пам'яті. Операнди можуть бути байтами або словами і представляти числа із знаком або без знаку. Команди асемблера для Intel: 486+ CMPXCHG, Pentium+ Cmpxchg8b, Pentium+ CPUID, CWD, 386+ CWDEКоманда cmpxchg виконує в одній операції порівняння і обмін операндів. Команда вимагає два параметри і неявним чином використовує третій операнд - регістр ЕАХ. Перший операнд (приймач) повинен знаходитися в 16- або 32-бітовому елементу пам'яті, другий операнд (джерело) - в регістрі загального призначення такого ж розміру. Команда виконує порівняння операнда-приймача з вмістом неявного операнда - регістра ЕАХ. Якщо порівнювані значення збігаються, операнд-приймач заміщається операндом-джерелом (тобто вміст регістра записується в пам'ять). Якщо порівнювані значення не збігаються, вміст пам'яті (приймач) поступає в регістр ЕАХ (мал. П1). Команда впливає на прапори OF, SF, ZF, AF, PF і CF. Команди асемблера для Intel: DAA, DAS, DEC, DIV, 386+ ENTER,Команда daa коректує результат складання в регістрі AL двох упакованих двійково-десяткових (BCD) чисел (по одній цифрі в кожному півбайті), щоб отримати пару правильних упакованих двійково-десяткових цифр. Команда використовується услід за операцією складання упакованих двійково-десяткових чисел. Якщо результат складання перевищує 99, виникає перенесення і встановлюється прапор CF. Команда впливає на прапори SF, ZF, AF, PF і CF. Команди асемблера для Intel: HLT, IDIV, IMUL, IN, INCКоманди асемблера для Intel: INS, INSB, INSW, INSDКоманди призначені для введення даних з порту безпосередньо в пам'ять. Адреса порту указується, як і для команди in, в регістрі DX, при цьому завдання адреси порту безпосереднім значенням не допускається. Дані пересилаються за адресою, що знаходиться в парі регістрів Es:edi. Заміна сегменту не допускається. Команда insb переносить з порту 1 байт, команда insw - 1 слово, команда insd - 1 подвійне слово, а команда ins може бути використана для передачі байтів, слів і подвійних слів. загрузка...
|
Сторінки, близькі за змістом ![]() Асемблер (англ. assembler) — загальноприйнята назва транслятора з автокоду. Асемблер переводить початкову програму, написану на автокоді, в переміщувану програму на мові машинній. Оскільки асемблер здійснює трансляцію на мову завантажувача, при завантаженні програми необхідна налаштування умовних адрес, тобто адрес, значення яких залежать від розташування даної програми в пам'яті ЦВМ і від її зв'язків з іншими незалежно трансльованими програмами. |
|
Copyright © 2008—2026 Портал Знань.
При використанні матеріалів посилання, для інтернет-ресурсів — гіперпосилання, на Znannya.org обов'язкове.
Зв'язок
|
НТУУ "КПІ" Інженерія програмного забезпечення КПІ Лабораторія СЕТ |
|