;
; 2. Нахождение разности порядков
; Примечание. Из большего порядка вычитается меньший,
; чтобы разность порядков была неотрицательной
;
; 2.1. Порядок X не меньше порядка Y (Px ³ Py) (CH)³(DH).ah,ch ; Нахождение разности порядков или другимиah,dh ; словами кол-ва сдвигов меньшей мантиссыP,ch ; Занесение в P большего порядкаal,dl ; \bl,[di] ; В AX,BX заносится меньшее числоbh,[di+1] ;/SIGL,al ; Сохранение знака меньшего числаdl,[si] ; В CX,DX заносится большее числоdh,[si+1] ; (по модулю)SIGN,cl ; Сохранение знака результата@L2
;
; 2.2. Порядок X меньше порядка Y (Px < Py) (CH) < (DH).
@L1:ah,dh ; Нахождение разности порядков или другимиah,ch ; словами кол-ва сдвигов меньшей мантиссы.P,dh ; Занесение в P большего порядкаal,cl ;\bl,[si] ; В AX,BX заносится меньшее числоbh,[si+1] ;/SIGL,al ; Сохранение знака меньшего числаcl,dl ; \dl,[di] ; В CX,DX заносится большее числоdh,[di+1] ;/ (по модулю)SIGN,cl ; Сохранение знака результата
;
; 3. Преобразование мантисс слагаемых в дополнительный код.
;
; 3.1. Перевод трех байт мантиссы меньшего числа (al,bx)
; из прямого кода в дополнительный
@L2:al,1 ; бит (C) ¬ (регистр al) ¬ 0@L3 ; Переход к метке @L3, если (C) = 0, т.е.
; число в регистрах (al,bx) - неотрицательноеal,1 ; Возврат "1" из бита (C) в старший бит (al).bx ; \al ; Перевод в ДКbx,1 ; отрицательного числа в регистрах (al,bx)al,0 ;/@L4
@L3:al,1 ; Возврат "0" из бита (C) в старший бит (al).al,80H ; Принудительная установка старшего бита
; регистра (al) в "1" (его вес = 1/2)
;
; 3.2. Перевод трех байт мантиссы большего числа (cl,dx)
; из прямого кода в дополнительный
@L4:cl,1 ; бит (C) ¬ (регистр cl) ¬ 0@L5 ; Переход к метке @L5, если (C) = 0, т.е.
; число в регистрах (cl,dx) - неотрицательноеcl,1 ; Возврат "1" из бита (C) в старший бит (cl)dx ;\cl ; Перевод в ДКdx,1 ; отрицательного числа в регистрах (cl,dx)cl,0 ;/@L6
@L5:cl,1 ; Возврат "0" из бита (C) в старший бит (cl)cl,80H ; Принудительная установка старшего бита
; регистра (al) в "1" (его вес = 1/2)
;
; 4. Значение полученной разности используется как количество
; сдвигов вправо мантиссы числа с меньшим порядком
@L6:ah,0@L7ch,SIGL ;\ch,1 ; Сдвиг вправоal,1 ; меньшего числаbx,1 ;/ah ; Уменьшение на 1 значения счетчика сдвигов@L6
;
; 5. Сложение мантисс по правилам сложения чисел с фиксиро-
; ванной запятой
@L7:bx,dx ; Сложениеal,cl ; мантисс
; 6. Преобразование мантиссы результата в прямой код
@L8:cl,SIGN ; Дублированиеcl,1 ; знака результатаcl,1 ; Проверка знака результата (числа с большим
; порядком)@L9 ; Переход к метке @L9, если (C) = 0, т.е.
; если мантисса суммы неотрицательнаbx,1 ;\al,0 ; Перевод отрицательной мантиссы суммы вbx ; (al,bx) из дополнительного кода в прямойal ;/
;
; 7. Нормализация мантиссы результата и при необходимости
; коррекция значения его порядка
@L9:bx,1al,1@L10ah,1@L9
;
; 8. Получение порядка и окончательного результата
@L10:ah,P
;cl,1 ; бит (C) ¬ 0, (регистр al)¬ 0ax,1bx,1
;[si],bl ;\[si+1],bh ; Пересылка результата[si+2],al ; в память[si+3],ah ;/
Читайте также
Монтаж и регулировка шестиканальной цветомузыкальной приставки
Основным направлением развития радиоэлектронной
промышленности является создание высокотехнологической радиоэлектронной
аппаратуры на основе четкой организации производства, использован ...
Модернизация охранной сигнализации университета
Безопасность собственного имущества издревле была одной из
главных забот человека. Для защиты от несанкционированного вторжения в жилище,
хищения вещей и пожара человечество придумало не ...
Приемник многоканальной линии связи
Любое радиоприемное устройство включает в себя приемную антенну,
радиоприемник и оконечное устройство, служащее для воспроизведения сигналов.
Существует классификация радиоприемник ...