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

📄 i386-regs.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="i386-Regs">i386-Regs</a>,

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

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

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

<hr><br>

</div>



<h4 class="section">Register Naming</h4>



   <p>Register operands are always prefixed with <code>%</code>.  The 80386 registers

consist of



     <ul>

<li>the 8 32-bit registers <code>%eax</code> (the accumulator), <code>%ebx</code>,

<code>%ecx</code>, <code>%edx</code>, <code>%edi</code>, <code>%esi</code>, <code>%ebp</code> (the

frame pointer), and <code>%esp</code> (the stack pointer).



     <li>the 8 16-bit low-ends of these: <code>%ax</code>, <code>%bx</code>, <code>%cx</code>,

<code>%dx</code>, <code>%di</code>, <code>%si</code>, <code>%bp</code>, and <code>%sp</code>.



     <li>the 8 8-bit registers: <code>%ah</code>, <code>%al</code>, <code>%bh</code>,

<code>%bl</code>, <code>%ch</code>, <code>%cl</code>, <code>%dh</code>, and <code>%dl</code> (These

are the high-bytes and low-bytes of <code>%ax</code>, <code>%bx</code>,

<code>%cx</code>, and <code>%dx</code>)



     <li>the 6 section registers <code>%cs</code> (code section), <code>%ds</code>

(data section), <code>%ss</code> (stack section), <code>%es</code>, <code>%fs</code>,

and <code>%gs</code>.



     <li>the 3 processor control registers <code>%cr0</code>, <code>%cr2</code>, and

<code>%cr3</code>.



     <li>the 6 debug registers <code>%db0</code>, <code>%db1</code>, <code>%db2</code>,

<code>%db3</code>, <code>%db6</code>, and <code>%db7</code>.



     <li>the 2 test registers <code>%tr6</code> and <code>%tr7</code>.



     <li>the 8 floating point register stack <code>%st</code> or equivalently

<code>%st(0)</code>, <code>%st(1)</code>, <code>%st(2)</code>, <code>%st(3)</code>,

<code>%st(4)</code>, <code>%st(5)</code>, <code>%st(6)</code>, and <code>%st(7)</code>. 

These registers are overloaded by 8 MMX registers <code>%mm0</code>,

<code>%mm1</code>, <code>%mm2</code>, <code>%mm3</code>, <code>%mm4</code>, <code>%mm5</code>,

<code>%mm6</code> and <code>%mm7</code>.



     <li>the 8 SSE registers registers <code>%xmm0</code>, <code>%xmm1</code>, <code>%xmm2</code>,

<code>%xmm3</code>, <code>%xmm4</code>, <code>%xmm5</code>, <code>%xmm6</code> and <code>%xmm7</code>. 

</ul>



   <p>The AMD x86-64 architecture extends the register set by:



     <ul>

<li>enhancing the 8 32-bit registers to 64-bit: <code>%rax</code> (the

accumulator), <code>%rbx</code>, <code>%rcx</code>, <code>%rdx</code>, <code>%rdi</code>,

<code>%rsi</code>, <code>%rbp</code> (the frame pointer), <code>%rsp</code> (the stack

pointer)



     <li>the 8 extended registers <code>%r8</code>-<code>%r15</code>.



     <li>the 8 32-bit low ends of the extended registers: <code>%r8d</code>-<code>%r15d</code>



     <li>the 8 16-bit low ends of the extended registers: <code>%r8w</code>-<code>%r15w</code>



     <li>the 8 8-bit low ends of the extended registers: <code>%r8b</code>-<code>%r15b</code>



     <li>the 4 8-bit registers: <code>%sil</code>, <code>%dil</code>, <code>%bpl</code>, <code>%spl</code>.



     <li>the 8 debug registers: <code>%db8</code>-<code>%db15</code>.



     <li>the 8 SSE registers: <code>%xmm8</code>-<code>%xmm15</code>. 

</ul>



   </body></html>



⌨️ 快捷键说明

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