Что делают команды на языке ассемблера «set_w» и «set_sw»?

#assembly #x86 #intel #68000

#сборка #x86 #intel #68000

Вопрос:

Я полагаю, что следующая последовательность кода на языке ассемблера основана на Intel x86, но я не уверен.

 JMPC
SET_W
SET_SW
SET_W
  

Что делают SET_W и SET_SW do?

Комментарии:

1. Они не похожи на язык ассемблера Intel x86 (по крайней мере, не в синтаксисе любого ассемблера, с которым я знаком). У вас есть пример, который использует эти инструкции в каком-либо коде?

2. Мне нужно будет получить дополнительную информацию от человека, который отправил мне вопрос. Но она работает в Intel, поэтому я просто сделал это предположение 🙂 Однако я знаю, что она работает с людьми за пределами Intel, которые могут не использовать Intel x86, так что, возможно, это от одного из них. Похоже, что ljkyser, возможно, что-то задумал.

3. Это определенно не x86, если только это не определенные где-то макросы. Единственной set мнемоникой в x86 является setcc , например, setg al or setnz cl . у x86 также нет jmpc .

Ответ №1:

Прошло несколько лет с тех пор, как я делал какую-либо сборку (колледж, Motorola 68k тоже), но похоже, что SET_W может быть псевдонимом для SETW, который является подпрограммой режима цикла для записи значения слова (‘W’ часть SET_W) для всех компонентов блока. SET_SW может означать короткое слово или байт? Я пытаюсь разобраться в последней части. Вот ссылка, которую я нашел: Синтаксис RTF / 68k

Ответ №2:

Если у вас когда-нибудь возникнут вопросы по поводу инструкции Intel, вам следует в первую очередь обратиться к их свободно доступным mamauls для разработчиков, в частности к томам 2a и 2b. Если инструкции там нет, это либо не x86 / х86 / simd и т.д., Либо это недокументированный псевдоним. Что касается этих инструкций, они могут быть частью семейства безразветвлений SETcc , однако я никогда не видел их раньше, и intel не использует подчеркивания в именах кодов операций, это, скорее всего, сборка SPARC или MIPS.