IMUL AX действителен? - PullRequest
       23

IMUL AX действителен?

1 голос
/ 11 мая 2009

Я потратил последний час на поиск в Google, пытаясь выяснить, является ли IMUL AX допустимой командой в ассемблере 80x86. Извините, что не попробовал, у меня просто нет инструментов на ПК, которым я сейчас пользуюсь.

Все, что мне нужно, это просто быстрый ответ да / нет. Спасибо!

jpou

Обновление: Проверено и проверено сегодня. Работает как положено.

-R
AX=0002  BX=0000  CX=20CD  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=0B02  ES=9FFF  SS=0B02  CS=0B02  IP=0102   NV UP EI PL NZ NA PO NC
0B02:0102 F7E0          MUL     A

-X
-T
AX=0004  BX=0000  CX=20CD  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=0B02  ES=9FFF  SS=0B02  CS=0B02  IP=0104   NV UP EI PL NZ NA PO NC
0B02:0104 FE7405        PUSH    [SI+05]                     DS:0005=9A

Ответы [ 2 ]

5 голосов
/ 11 мая 2009

Должно быть действительным:

IMUL - Умножение со знаком

IMUL r / m16
DX: AX ← AX ∗ r / m слово.

Взято из здесь , «Том 2А: ссылка на набор инструкций, A-M».

4 голосов
/ 11 мая 2009

Извините, что не попробовал, у меня просто нет инструментов на ПК, которым я сейчас пользуюсь.

Из командной строки:

Microsoft Windows [Version 6.0.6001]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\Windows\system32>debug
-a
17CC:0100 imul ax
17CC:0102
-u
17CC:0100 F7E8          IMUL    AX
17CC:0102 0000          ADD     [BX+SI],AL
-q

Используя команду отладки, можно проверить, что "imul ax" будет собираться (и поэтому является допустимой командой в ассемблере 80x86).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...