Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Команди операцій з двійковими ланцюжкамиСодержание книги
Поиск на нашем сайте В мікропроцесорі i486 введено дві підгрупи ефективних команд для роботи з двійковими ланцюжками (bit string). Ці типи даних широко використовуються в комп’ютерній графіці, для табличного подання секторів дискового простору і т.п. Команда перевірки біта bt (bit test) вибирає певний біт у двійковому ланцюжку і передає його в прапорець перенесення cf. Подібні до неї команди перевірки та інвертування біта btc (bit test and complement), перевірки й установлення біта в 1 bts (bit test and set), перевірки й установлення біта в нуль btr (bit test and reset). Тому надалі говоритимемо про узагальнену команду btX dst, index, де btX reg/mem16, reg16, btX reg/mem16, imm8, btX reg/mem32, reg32, btX reg/mem32, imm8. Отже, dst визначає слово або подвійне слово в регістрі або в комірці оперативної пам’яті, а значення index знаходиться в регістрі або задається як безпосередній операнд. Діапазон для imm8 від 0 до 15 або 31 (тобто безпосереднє значення тільки восьми бітове і береться за модулем 16 або 32 в залежності від вибраного типу сегмента use16 або use32). Якщо ланцюжок знаходиться в регістрі, то виконання команди зводиться до вибору відповідного біта з регістра, запису його значення в прапорець cf і, якщо це команда: bt – завершити її виконання; btc – знайдений біт інвертувати та завершити її виконання; bts – знайдений біт установити в 1 та завершити її виконання; btr – знайдений біт установити в 0 та завершити її виконання. Якщо ланцюжок знаходиться в оперативній пам’яті, то нумерація бітів здійснюється відносно біта з номером 0 (нуль) – наймолодший біт байта з ефективною адресою EA (визначається операндом mem16 або mem32) команди btX. Старші біти мають додатні номери, а молодші – від’ємні. Номер шуканого біта (значення index в регістрі reg16 або reg32) вважається знаковим цілим числом, яке змінюється від EA+(2*(BitOffset DIV 16), або до чотирьох байтів (use32) відповідно за адресою EA+(4*(BitOffset DIV 32), де EA (ефективна адреса ланцюжка) – визначається операндом dst (mem16 або mem32); BitOffset – значення операнда index (тобто вміст регістра reg16 або reg32); DIV – операція ділення (a DIV b – ціла частина від ділення a на b із заокругленням до
Якщо ж
Тут
|
||
|
Последнее изменение этой страницы: 2017-01-27; просмотров: 360; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.20 (0.009 с.) |