⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 m68k-moto-syntax.html

📁 gcc手册
💻 HTML
字号:
<html lang="en">

<head>

<title>Using as</title>

<meta http-equiv="Content-Type" content="text/html">

<meta name="description" content="Using as">

<meta name="generator" content="makeinfo 4.3">

<link href="http://www.gnu.org/software/texinfo/" rel="generator-home">

</head>

<body>

<div class="node">

<p>

Node:<a name="M68K-Moto-Syntax">M68K-Moto-Syntax</a>,

Next:<a rel="next" accesskey="n" href="M68K-Float.html#M68K-Float">M68K-Float</a>,

Previous:<a rel="previous" accesskey="p" href="M68K-Syntax.html#M68K-Syntax">M68K-Syntax</a>,

Up:<a rel="up" accesskey="u" href="M68K-Dependent.html#M68K-Dependent">M68K-Dependent</a>

<hr><br>

</div>



<h4 class="section">Motorola Syntax</h4>



   <p>The standard Motorola syntax for this chip differs from the syntax

already discussed (see <a href="M68K-Syntax.html#M68K-Syntax">Syntax</a>).  <code>as</code> can

accept Motorola syntax for operands, even if <small>MIT</small> syntax is used for

other operands in the same instruction.  The two kinds of syntax are

fully compatible.



   <p>In the following table <var>apc</var> stands for any of the address registers

(<code>%a0</code> through <code>%a7</code>), the program counter (<code>%pc</code>), the

zero-address relative to the program counter (<code>%zpc</code>), or a

suppressed address register (<code>%za0</code> through <code>%za7</code>).  The use

of <var>size</var> means one of <code>w</code> or <code>l</code>, and it may always be

omitted along with the leading dot.  The use of <var>scale</var> means one of

<code>1</code>, <code>2</code>, <code>4</code>, or <code>8</code>, and it may always be omitted

along with the leading asterisk.



   <p>The following additional addressing modes are understood:



     <dl>

<dt><dfn>Address Register Indirect</dfn>

     <dd><code>(%a0)</code> through <code>(%a7)</code><br>

<code>%a7</code> is also known as <code>%sp</code>, i.e. the Stack Pointer.  <code>%a6</code>

is also known as <code>%fp</code>, the Frame Pointer.



     <br><dt><dfn>Address Register Postincrement</dfn>

     <dd><code>(%a0)+</code> through <code>(%a7)+</code>



     <br><dt><dfn>Address Register Predecrement</dfn>

     <dd><code>-(%a0)</code> through <code>-(%a7)</code>



     <br><dt><dfn>Indirect Plus Offset</dfn>

     <dd><code></code><var>number</var><code>(</code><var>%a0</var><code>)</code> through <code></code><var>number</var><code>(</code><var>%a7</var><code>)</code>,

or <code></code><var>number</var><code>(</code><var>%pc</var><code>)</code>.



     <p>The <var>number</var> may also appear within the parentheses, as in

<code>(</code><var>number</var><code>,</code><var>%a0</var><code>)</code>.  When used with the <var>pc</var>, the

<var>number</var> may be omitted (with an address register, omitting the

<var>number</var> produces Address Register Indirect mode).



     <br><dt><dfn>Index</dfn>

     <dd><code></code><var>number</var><code>(</code><var>apc</var><code>,</code><var>register</var><code>.</code><var>size</var><code>*</code><var>scale</var><code>)</code>



     <p>The <var>number</var> may be omitted, or it may appear within the

parentheses.  The <var>apc</var> may be omitted.  The <var>register</var> and the

<var>apc</var> may appear in either order.  If both <var>apc</var> and

<var>register</var> are address registers, and the <var>size</var> and <var>scale</var>

are omitted, then the first register is taken as the base register, and

the second as the index register.



     <br><dt><dfn>Postindex</dfn>

     <dd><code>([</code><var>number</var><code>,</code><var>apc</var><code>],</code><var>register</var><code>.</code><var>size</var><code>*</code><var>scale</var><code>,</code><var>onumber</var><code>)</code>



     <p>The <var>onumber</var>, or the <var>register</var>, or both, may be omitted. 

Either the <var>number</var> or the <var>apc</var> may be omitted, but not both.



     <br><dt><dfn>Preindex</dfn>

     <dd><code>([</code><var>number</var><code>,</code><var>apc</var><code>,</code><var>register</var><code>.</code><var>size</var><code>*</code><var>scale</var><code>],</code><var>onumber</var><code>)</code>



     <p>The <var>number</var>, or the <var>apc</var>, or the <var>register</var>, or any two of

them, may be omitted.  The <var>onumber</var> may be omitted.  The

<var>register</var> and the <var>apc</var> may appear in either order.  If both

<var>apc</var> and <var>register</var> are address registers, and the <var>size</var>

and <var>scale</var> are omitted, then the first register is taken as the

base register, and the second as the index register. 

</dl>



   </body></html>



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -