Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Команда IMUL
Команда IMUL выполняет операцию умножения с учетом знака. 1-ый формат команды (однооперандный): IMUL И где И – источник информации. В качестве источника информации могут использоваться РОН или ячейка памяти. В данном формате команды используются неявные операнды: - если И 8-ми разрядный, то AX=AL*И. Если в результате AH=0 или AH=FF16, то CF=OF=0, иначе CF=OF=1; - если И 16-ти разрядный, то DX:AX=AX*И. Если в результате DX=0 или DX=FFFF16, то CF=OF=0, иначе CF=OF=1; - если И 32-ух разрядный, то EDX:EAX=EAX*И. Если в результате EDX=0 или EDX=FFFF'FFFF16, то CF=OF=0, иначе CF=OF=1.
Значение флагов SF,ZF,AF,PF неопределенно, т.е. стоит считать их значения после выполнение команды случайными.
2-ой формат команды (двухоперандный): IMUL П,И где И – источник информации. В качестве источника информации могут использоваться РОН, константа или значение из памяти; П – приемник информации. В качества приемника может выступать только РОН. Возможные варианты команды IMUL в двухоперандном виде:
1 - 8-ми разрядная константа, перед умножение знакорасширяется до 16-ти разрядов. 2 - 8-ми разрядная константа, перед умножение знакорасширяется до 32-ух разрядов.
3-ий формат команды (трехоперандный): IMUL П,И1,И2 где И1 – первый источник информации. В качестве И1 могут использоваться РОН или значение из памяти; И2 – второй источник информации. В качестве И2 может использоваться только константа; П – приемник информации. В качества приемника может выступать только РОН. Возможные варианты команды IMUL в трехоперандном виде:
1 - 8-ми разрядная константа, перед умножение знакорасширяется до 16-ти разрядов. 2 - 8-ми разрядная константа, перед умножение знакорасширяется до 32-ух разрядов. 3 - 16-ти разрядная константа, перед умножение знакорасширяется до 32-ух разрядов.
Когда используется однооперандная форма команды IMUL, то результат умножения доступен, даже если установлен флаг переполнения, так как РОН результата в два раза больше по размеру, чем множимое и множитель. Этого достаточно, чтобы сохранить любой возможный результат. Для форм с двумя и тремя операндами возможна потеря старших значащих битов результата. Если это происходит, то флаги CF и OF устанавливаются.
Date: 2015-10-19; view: 545; Нарушение авторских прав |