toolchain/share/doc/as.html/AVR_002dRegs.html

66 lines
3.0 KiB
HTML
Raw Permalink Normal View History

2024-01-10 05:24:32 +00:00
<html lang="en">
<head>
<title>AVR-Regs - Using as</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Using as">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="AVR-Syntax.html#AVR-Syntax" title="AVR Syntax">
<link rel="prev" href="AVR_002dChars.html#AVR_002dChars" title="AVR-Chars">
<link rel="next" href="AVR_002dModifiers.html#AVR_002dModifiers" title="AVR-Modifiers">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU Assembler "as".
Copyright (C) 1991-2019 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts. A copy of the license is included in the
section entitled ``GNU Free Documentation License''.
-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
pre.display { font-family:inherit }
pre.format { font-family:inherit }
pre.smalldisplay { font-family:inherit; font-size:smaller }
pre.smallformat { font-family:inherit; font-size:smaller }
pre.smallexample { font-size:smaller }
pre.smalllisp { font-size:smaller }
span.sc { font-variant:small-caps }
span.roman { font-family:serif; font-weight:normal; }
span.sansserif { font-family:sans-serif; font-weight:normal; }
--></style>
</head>
<body>
<div class="node">
<a name="AVR-Regs"></a>
<a name="AVR_002dRegs"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="AVR_002dModifiers.html#AVR_002dModifiers">AVR-Modifiers</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="AVR_002dChars.html#AVR_002dChars">AVR-Chars</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="AVR-Syntax.html#AVR-Syntax">AVR Syntax</a>
<hr>
</div>
<h5 class="subsubsection">9.5.2.2 Register Names</h5>
<p><a name="index-AVR-register-names-834"></a><a name="index-register-names_002c-AVR-835"></a>
The AVR has 32 x 8-bit general purpose working registers &lsquo;<samp><span class="samp">r0</span></samp>&rsquo;,
&lsquo;<samp><span class="samp">r1</span></samp>&rsquo;, ... &lsquo;<samp><span class="samp">r31</span></samp>&rsquo;.
Six of the 32 registers can be used as three 16-bit indirect address
register pointers for Data Space addressing. One of the these address
pointers can also be used as an address pointer for look up tables in
Flash program memory. These added function registers are the 16-bit
&lsquo;<samp><span class="samp">X</span></samp>&rsquo;, &lsquo;<samp><span class="samp">Y</span></samp>&rsquo; and &lsquo;<samp><span class="samp">Z</span></samp>&rsquo; - registers.
<pre class="smallexample"> X = <span class="roman">r26:r27</span>
Y = <span class="roman">r28:r29</span>
Z = <span class="roman">r30:r31</span>
</pre>
</body></html>