📄 乘法指令.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0049)http://www.linuxforum.net/books/mhss/arm/mul.html -->
<HTML><HEAD><TITLE>Multiplication instructions</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META http-equiv=Content-Language content=zh-cn>
<META content="MSHTML 6.00.2600.0" name=GENERATOR>
<META content=FrontPage.Editor.Document name=ProgId></HEAD>
<BODY text=#000000 vLink=#002288 link=#0022dd bgColor=#f0f0f0>
<TABLE width="100%" border=0>
<TBODY>
<TR>
<TD align=middle width=100></TD>
<TD>
<H1 align=center><FONT color=#800080>乘法指令</FONT></H1></TD>
<TD align=middle width=100></TD></TR></TBODY></TABLE>
<UL>
<LI><A href="http://www.linuxforum.net/books/mhss/arm/mul.html#mla">MLA</A>
<LI><A href="http://www.linuxforum.net/books/mhss/arm/mul.html#mul">MUL</A>
</LI></UL>
<P><A
href="http://www.linuxforum.net/books/mhss/arm/ARMinstrs.html#Multiplication">指令格式</A></P>
<P>这两个指令与普通<A
href="http://www.linuxforum.net/books/mhss/arm/mov.html">算术</A>指令在对操作数的限制上有所不同:
<OL>
<LI>给出的所有操作数、和目的寄存器必须为简单的寄存器。
<LI>你不能对操作数 2 使用立即值或被移位的寄存器。
<LI>目的寄存器和操作数 1 必须是不同的寄存器。
<LI>最后,你不能指定 R15 为目的寄存器。 </LI></OL><A name=mla></A>
<H2>MLA : 带累加的乘法</H2>
<P>(<FONT color=#0000ff>M</FONT>ultip<FONT color=#0000ff>l</FONT>ication with
<FONT color=#0000ff>A</FONT>ccumulate)</P><PRE> MLA{条件}{S} <dest>, <op 1>, <op 2>, <op 3>
dest = (op_1 * op_2) + op_3
</PRE><CODE>MLA</CODE> 的行为同于 <CODE>MUL</CODE>,但它把操作数 3 的值加到结果上。这在求总和时有用。
<P>
<P><A name=mul></A></P>
<H2>MUL : 乘法</H2>
<P>(<FONT color=#0000ff>Mul</FONT>tiplication)</P><PRE> MUL{条件}{S} <dest>, <op 1>, <op 2>
dest = op_1 * op_2
</PRE><CODE>MUL</CODE> 提供 32 位整数乘法。如果操作数是有符号的,可以假定结果也是有符号的。
<P>
<HR SIZE=3>
<A href="http://www.linuxforum.net/books/mhss/arm/index.html">Return to
assembler index</A>
<HR SIZE=3>
<ADDRESS>Copyright © 1999 Richard Murray </ADDRESS></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -