Лабораторная работа: Выполнение арифметических операций над числами с фиксированной запятой
;-----------ОПРЕДЕЛЕНИЕ ЗНАКА ЧАСТНОГО
QUIT: MOV AH, SX[2]
MOV AL, SY[2]
;-----------ВЫЯСНЕНИЕ ЗНАКА ДЕЛИМОГО
CMP AH, '-'
JE SX_
JMP N_SX_
;-----------ДЕЛИМОЕ - ОТРИЦАТЕЛЬНОЕ
SX_: CMP AH, AL ;СРАВНЕНИЕ ЗНАКА ДЕЛИМОГО И ДЕЛИТЕЯ
JE OUTP ;НА ВЫВОД ОСТАТКА
;-----------ДЕЛИТЕЛЬ - ПОЛОЖИТЕЛЬНЫЙ
;===========УДАЛЕНИЕ ВЕДУЩИХ НУЛЕЙ В ЧАСТНОМ
SY_: MOV BX, 0
SRCH: CMP SZ[BX], '0'
JE DALEE
JMP STOP
DALEE: INC BX
JMP SRCH
;-----------ЗАПИСЬ МИНУСА ПЕРЕД СТАРШИМ РАЗРЯДОМ ЧАСТНОГО
STOP: DEC BX
MOV SZ[BX], '-'
JMP OUTP ;НА ВЫВОД ОСТАТКА
;-----------ДЕЛИМОЕ ПОЛОЖИТЕЛЬНОЕ
N_SX_: CMP AL, '-' ;ДЕЛИТЕЛЬ ОТРИЦАТЕЛЬНЫЙ?
JE SY_ ;ЧАСТНОЕ ОТРИЦАТЕЛЬНОЕ
;-----------ВЫВОД ЧАСТНОГО
;===========ВЫВОД ОСТАТКА
;-----------ВЫВОД СТРОКИ "ОСТАТОК:"
OUTP: LEA DX, S6