Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Логічні операції





Турбо Асемблер підтримує повний набір інструкцій для виконання логічних операцій, включно інструкцій для виконання логічних операцій, включно інструкції AND (і), OR (чи), XOR (виключне чи) та NOT (ні). Ці інструкції можуть виявитися дуже корисними при роботі з окремими бітами слова чи байта, а також для виконування операцій булевої алгебри.

Результати виконання логічних операцій показані у таблиці. Логічна інструкція виконує порозрядні операції над бітами вихідних операндів. Наприклад, інструкція:

 

and ax,dx

 

виконує логічну операцію AND з бітом 0 регістра AX ті бітом 0 регістра DX, потім ту ж саму операцію з бітами 1, 2 і т.п. до біта 15.

 

Виконання логічних інструкцій процесора 8086 AND, OR та XOR наведено в табл. 3.1

 

Таблиця 3.1 – Виконання логічних інструкцій процесора 8086 AND, OR та XOR

Вихідний біт А Вихідний біт В A AND B A OR B A XOR B
         
         
         
         

 

Інструкція AND комбінує два операнди у відповідності з правилами, які показані у таблиці, встановлює кожний біт результату (операнда-приймача) в 1 тільки у тому випадку, якщо обидва біта операнда-джерела дорівнюють 1. Інструкція AND дозволяє нам виділити окремий біт чи примусово встановити його у значення 0. Наприклад, інструкції:

 

mov dx,3dah

in al,dx

and al,1

 

виділяють біт 0 байта стану кольорового графічного адаптеру (CGA). Ці інструкції залишають регістр AL встановлений у значення 1, якщо відеопам’ять адаптера CGA можна змінити, не викликаючи перешкод на екрані (“сніг”), та встановлює його у нульове значення у противному разі.

Інструкція OR теж комбінує два операнди у відповідності з правилами, які приведені у таблиці, встановлює кожний біт операнда-приймача у значення 1, якщо будь-який з відповідних бітів операнда-джерела дорівнює 1. Інструкція OR дозволяє вам примусово встановити окремі біти у значення 1. Наприклад, інструкції:

mov ax,40h

mov ds,ax

mov bx,10h

or WORD PTR [bx],0030h

 

встановлює біти 5 та 4 слова флагів апаратури базової системи вводу-виводу BIOS у значення 1. При цьому BIOS буде підтримувати монохромний дисплейний адаптер.

Інструкція XOR також комбінує два операнди у відповідності з правилами, які приведені у таблиці, встановлюючи кожний біт операнда-приймача у значення 1, тільки у тому випадку якщо один з відповідних бітів операнда-джерела дорівнює 0, та у значення 1 у протилежному випадку. Інструкція XOR дозволяє нам “перемикати” значення окремих бітів у байті. Наприклад, інструкції:

 

mov al,01010101b

xor al,11110000b

 

встановлюють регістр AL у значення 10100100b чи A5h. Коли для регістра AL виконується операція XOR зі значенням 11110000b (0F0h), біти зі значенням 0 залишають відповідні біти AL незмінними.

До речі інструкція XOR дає зручний спосіб обнуління змісту регістру. Наприклад, наступна інструкція встановлює зміст регістра AX у значення 0:

 

xor ax,ax

 

Нарешті, інструкція NOT просто змінює значення кожного біту операнда на протилежне (як якщо б над початковим операндом була виконана операція XOR зі значенням 0FFh). Наприклад:

 

mov bl,10110001b

not bl; переключити BL у 01001110b

xor bl,0ffh; переключити BL зворотно у значення

; 10110001b







Дата добавления: 2015-04-16; просмотров: 520. Нарушение авторских прав; Мы поможем в написании вашей работы!




Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

Этические проблемы проведения экспериментов на человеке и животных В настоящее время четко определены новые подходы и требования к биомедицинским исследованиям...

Классификация потерь населения в очагах поражения в военное время Ядерное, химическое и бактериологическое (биологическое) оружие является оружием массового поражения...

Факторы, влияющие на степень электролитической диссоциации Степень диссоциации зависит от природы электролита и растворителя, концентрации раствора, температуры, присутствия одноименного иона и других факторов...

Что такое пропорции? Это соотношение частей целого между собой. Что может являться частями в образе или в луке...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Studopedia.info - Студопедия - 2014-2025 год . (0.013 сек.) русская версия | украинская версия