Главная » Просмотр файлов » assembler. Учебник для вузов_Юров В.И_2003 -637с

assembler. Учебник для вузов_Юров В.И_2003 -637с (862834), страница 44

Файл №862834 assembler. Учебник для вузов_Юров В.И_2003 -637с (Юров В.И - Assembler. Учебник для вузов. 2003) 44 страницаassembler. Учебник для вузов_Юров В.И_2003 -637с (862834) страница 442021-12-22СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 44)

Результат формируется в соответствии с основным принципом работы процессоров Intel: младший байт по младшему адресу.ВычитаниеАналогично сложению, при вычитании процессор рассматривает упакованныеBCD-числа как двоичные. Выполним вычитание 67 - 75. Так как процессор выполняет вычитание способом сложения, то и мы последуем этому:67 =01100111+-75 =10110101-8 =00011100 = 28.Как видим, результат равен 28 в десятичной системе счисления, что являетсяабсурдом.

В двоично-десятичном коде результат должен быть равен 0000 1000 (или8 в десятичной системе счисления). При программировании вычитания упакованных BCD-чисел программист, как и при вычитании неупакованных BCD-чисел,должен сам осуществлять контроль за знаком. Это делается с помощью флага CF,который фиксирует заем из старших разрядов. Само вычитание BCD-чисел осуществляется обычной командой вычитания SUB или SBB. Коррекция результата192Глава 8.

Арифметические командывычитания для его представления в десятичном виде осуществляется командойDAS (Decimal Adjust for Substraction).В приложении описан алгоритм, по которому команда DAS преобразует содержимое регистра AL в две упакованные десятичные цифры.ИтогиII Процессор имеет довольно мощные средства для реализации вычислительныхопераций. Для этого у него есть блок целочисленных операций и блок операций с плавающей точкой. Для большинства задач, использующих язык ассемблера, достаточно целочисленной арифметики.Ш Команды целочисленных операций работают с данными двух типов: двоичными и двоично-десятичными числами (BCD-числами).» Двоичные данные могут либо иметь знак, либо не иметь такового. Процессор,на самом деле, не различает числа со знаком и без.

Он лишь помогаетотслеживать изменение состояния некоторых битов операндов и состояние отдельныхфлагов. Операции сложения и вычитания чисел со знаком и без знака проводятся одним устройством и по единым правилам.Ш Контроль за правильностью результатов и их надлежащей интерпретацией полностью лежит на программисте. Он должен контролировать состояние флаговCF и OF регистра EFLAGS во время вычислительного процесса.i! Для операций с числами без знака нужно контролировать флаг CF. Установкаего в 1 сигнализирует о том, что число вышло за разрядную сетку операндов.ж Для чисел со знаком установка флага OF в 1 говорит о том, что в результатесложения чисел одного знака результат выходит за границу допустимых значений чисел со знаком в данном формате, и сам результат меняет знак (пропадаетпорядок).ж По результатам выполнения арифметических операций устанавливаются также флаги PF, ZF и SF.• В отличие от команд сложения и вычитания, команды умножения и деленияпозволяют учитывать знаки операндов.It Арифметические команды очень «капризны» к размерности операндов, поэтому в систему команд процессора включены специальные команды, позволяющие отслеживать эту характеристику.* Хотя диапазон значений двоичных данных довольно велик, для коммерческихприложений его явно недостаточно, поэтому в архитектуру процессора введены средства для работы с так называемыми двоично-десятичными (BCD) данными.ti Двоично-десятичные данные представляются в двух форматах, упакованноми неупакованном.

Наиболее универсальным является неупакованный формат.Глава 9Логические командыи команды сдвигаКраткое описание группы логических командКоманды для выполнения логических операцийКоманды сдвигаОрганизация работы с отдельными битамиНаряду со средствами арифметических вычислений система команд процессораимеет также средства логического преобразования данных. Под логическим понимается такое преобразование данных, в основе которого лежат правила формальной логики.

Формальная логика работает на уровне утверждений истинно илиложно. Для процессора это, как правило, означает 1 или 0 соответственно. Длякомпьютера язык нулей и единиц является родным, но минимальной единицейданных, с которой работают машинные команды, является байт. Однако на системном уровне часто необходимо иметь возможность работать на предельно низком уровне — на уровне битов.К средствам логического преобразования данных в языке ассемблера относятся логические команды и логические операции (рис. 9.1).

Команды рассматриваютсяв этой главе, операции были изучены нами в главе 5. Напомню, что операнд команды ассемблера в общем случае может представлять собой выражение, которое,в свою очередь, является комбинацией операторов и операндов. Среди этих операторов могут быть и операторы, реализующие логические операции над объектамивыражения.Перед знакомством с этими средствами давайте посмотрим, что же представляют собой сами логические данные и какие действия над ними могут производиться.7 Зак. 256194Глава 9. Логические команды и команды сдвигаСредствалогическойобработки данныхОперации I[ Команды]IIлогические-and-ог — хог — not —-test-Jобработкибитовсканирования- l-bsfбитовLbsrпроверки имодификациибитов-Ы-btc-btrLbtsIсдвига Iобычногосдвига-sar-sal-shl-shr-shldchrH-| логические-and-or-xor-not-| сдвигаUhrLshl_| сравнения-eq-ne-It-leциклическогосдвигаl-rcl-gtU-rcrLge\-m\I— rorРис.

9.1. Средства процессора для работы с логическими даннымиЛогические данныеТеоретической базой для логической обработки данных является формальная логика. Существует несколько систем логики. Одна из наиболее известных — этоисчисление высказываний. Высказывание — это любое утверждение, о котором можно сказать, что оно либо истинно, либо ложно. Исчисление высказываний представляет собой совокупность правил определения истинности или ложности некоторой комбинации высказываний.Исчисление высказываний очень гармонично сочетается с принципами работы компьютера и основными методами его программирования. Все аппаратныекомпоненты компьютера построены на логических микросхемах.

Система представления информации в компьютере на самом нижнем уровне основана на понятии бита. Бит, имея всего два состояния — 0 (ложно) и 1 (истинно), естественнымобразом вписывается в систему исчисления высказываний.Согласно теории, над высказываниями (над битами) могут выполняться логические операции.ж Отрицание (логическое НЕ) — логическая операция над одним операндом, результатом которой является величина, обратная значению исходного операнда. Эта операция однозначно характеризуется следующей таблицей истинности1'.1Таблица истинности — таблица результатов логических операций в зависимости от значений исходных операндов.Логические команды195Значение операнда:О1Результат операции:1Ож Логическое сложение (логическое включающее ИЛИ) — логическая операция наддвумя операндами, результатом которой является истина (1), если один илиоба операнда истинны (1), или ложь (0), если оба операнда ложны (0).

Эта операция описывается с помощью следующей таблицы истинности:Значение операнда 1:0011Значение операнда 2:О1О1Результат операции:0111• Логическое умножение (логическое И) — логическая операция над двумя операндами, результатом которой является истина (1) только в том случае, еслиоба операнда истинны (1). Во всех остальных случаях значение операции — ложь(0). Эта операция описывается с помощью следующей таблицы истинности:Значение операнда 1 : 0011Значение операнда 2:О1О1Результат операции:0001^is Логическое исключающее сложение (логическое исключающее ИЛИ) — логическая операция над двумя операндами, результатом которой является истина(1), если только один из двух операндов истинен (1), и ложь (0), если оба операнда либо ложны (0), либо истинны (1).

Эта операция описывается с помощью следующей таблицы истинности:Значение операнда 1 : 0 0 1 1Значение операнда 2:О1О1Результат операции:0110Логические командыСистема команд процессора содержит пять команд, поддерживающих описанныеранее операции. Эти команды выполняют логические операции над битами операндов. Размерность операндов, естественно, должна быть одинакова.

Например,если размерность операндов равна слову (16 битов), то логическая операция выполняется сначала над нулевыми битами операндов, и ее результат записываетсяна место бита 0 результата. Далее команда последовательно повторяет эти действия над всеми битами с первого до пятнадцатого. Возможные варианты размерности операндов для каждой команды можно найти в приложении.Далее перечислены базовые команды процессора, поддерживающие работус логическими данными:Я and операнд_1,операнд_2 — операция логического умножения. Команда выполняет поразрядно логическую операцию И (конъюнкцию) над битами операндовоперанд_1 и операнд_2.

Характеристики

Тип файла
PDF-файл
Размер
14,34 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6549
Авторов
на СтудИзбе
299
Средний доход
с одного платного файла
Обучение Подробнее