<<
>>

Целочисленные арифметические команды

Целочисленные арифметические команды предназначены для работы на тех участ- ках вычислительных алгоритмов, где в качестве исходных данных используются целые числа в памяти в формате слово и короткое слово, имеющие размерность 16 и 32 бита.
При рассмотрении целочисленных арифметических команд обратите внима- ние на большую гибкость задания операндов в этих командах. * FIADD источник — команда складывает значения ST(0) и целочисленного источ- ника, в качестве которого выступает 16- или 32-разрядный операнд в памяти. Результат сложения запоминается в регистре стека сопроцессора ST(0). §* FISUB источник — команда вычитает значение целочисленного источника из ST(0). Результат вычитания запоминается в регистре стека сопроцессора ST(0). В ка- честве источника выступает 16- или 32 -разрядный целочисленный операнд в па- мяти. Ш FIMUL источник — команда умножает значение целочисленного источника на содержимое SТ(О). Результат умножения запоминается в регистре стека сопро- цессора SТ(О). В качестве источника выступает 16- или 32-разрядный целочис- ленный операнд в памяти.
is FIDIV источник — команда делит содержимое SТ(О) на значение целочисленного источника. Результат деления запоминается в регистре стека сопроцессора SТ(О). В качестве источника выступает 16- или 32-разрядный целочисленный операнд в памяти. . Для команд, реализующих арифметические действия деления и вычитания, важен порядок расположения операндов. По этой причине система команд сопро- цессора содержит соответствующие реверсивные команды, повышающие удобство программирования вычислительных алгоритмов. Чтобы отличить эти команды от обычных команд деления и вычитания, их мнемокоды оканчиваются символом R. ш FISUBR источник — команда вычитает значение SТ(О) из целочисленного источ- ника. Результат вычитания запоминается в регистре стека сопроцессора SТ(О).
В качестве источника выступает 16- или 32-разрядный целочисленный операнд в памяти. ш FIDIVR источник — команда делит значение целочисленного источника на содер- жимое SТ(О). Результат деления запоминается в регистре стека сопроцессора SТ(О). В качестве источника выступает 16- или 32-разрядный целочисленный операнд в памяти. Рассмотрим пример программы вычисления значения и (листинг 17.3): X- и „ и -- ------- , если а Ф 0; а и = X + у, если а = 0. Все переменные х, у и а целого типа в формате слова. Результат необходимо сохранить в ячейке памяти в формате десятичного числа. Листинг 17.3. Исследование целочисленных арифметических команд ,586р ' mаsm model usеl6 small .stack 10θh .data ;сегмент данных ; исходный массив а dw О X dw 8 у dw 4 u dt О .code main proc mov ax, @dаtа mov ds, ax finit ;приведение сопроцессора в начальное состояние fild а ;загрузка значение а в st(О) fхаm ;определяем тип а fstsw ах ;сохранение swr в регистре ах sаhf ;запись swr->ах-> регистр флагов . продолжение У Листинг 17.3 (продолжение) j с по_пull jр по_пull ]'пz по_пull. ;вычисление формулы u=х+у: f i Id X fiadd у fbstр u j mр exit по_пull: ;вычисление формулы u=(х-у)/а f ild X fisub у fi di V а fbstр u ехi t: mоv ах, 4сθθh int 21h main endp end main
<< | >>
Источник: В. И. Юров. Assembler. Учебник для вузов. 2-е изд. 2003

Еще по теме Целочисленные арифметические команды:

  1. 3. Равнение на среднее арифметическое.
  2. Определение команды.
  3. § 4.5. Деятельность команд в организации
  4. Признаки команды.
  5. Пример настройки и реабилитации в футбольной команде
  6. Работа с другими командами
  7. Четыре шага по созданию эффективной команды
  8. ШЕСТЬ СТУПЕНЕЙ НА ПУТИ СОЗДАНИЯ КОМАНДЫ.
  9. Кто становится лидером команды
  10. Создание деловой команды «Вероятно, я не лучший советчик в этом вопросе».
  11. Эд САЛЛИВАН. ВРЕМЯ — ДЕНЬГИ Создание команды разработчиков, программного обеспечения, 2001