﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-c++初学者-随笔分类-汇编语言</title><link>http://www.cppblog.com/tgh621/category/8149.html</link><description>专注技术开发</description><language>zh-cn</language><lastBuildDate>Sat, 21 Aug 2010 10:16:19 GMT</lastBuildDate><pubDate>Sat, 21 Aug 2010 10:16:19 GMT</pubDate><ttl>60</ttl><item><title>sse2指令集</title><link>http://www.cppblog.com/tgh621/archive/2010/08/20/124113.html</link><dc:creator>大海</dc:creator><author>大海</author><pubDate>Fri, 20 Aug 2010 09:53:00 GMT</pubDate><guid>http://www.cppblog.com/tgh621/archive/2010/08/20/124113.html</guid><wfw:comment>http://www.cppblog.com/tgh621/comments/124113.html</wfw:comment><comments>http://www.cppblog.com/tgh621/archive/2010/08/20/124113.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/tgh621/comments/commentRss/124113.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/tgh621/services/trackbacks/124113.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;1移动指令:1.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Movapsmovaps XMM,XMM/m128 movaps XMM/128,XMM把源存储器内容值送入目的寄存器,当有m128时,必须对齐内存16字节,也就是内存地址低4位为0.2.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Movupsmovups...&nbsp;&nbsp;<a href='http://www.cppblog.com/tgh621/archive/2010/08/20/124113.html'>阅读全文</a><img src ="http://www.cppblog.com/tgh621/aggbug/124113.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/tgh621/" target="_blank">大海</a> 2010-08-20 17:53 <a href="http://www.cppblog.com/tgh621/archive/2010/08/20/124113.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常用寄存器</title><link>http://www.cppblog.com/tgh621/archive/2008/09/03/60791.html</link><dc:creator>大海</dc:creator><author>大海</author><pubDate>Wed, 03 Sep 2008 01:41:00 GMT</pubDate><guid>http://www.cppblog.com/tgh621/archive/2008/09/03/60791.html</guid><wfw:comment>http://www.cppblog.com/tgh621/comments/60791.html</wfw:comment><comments>http://www.cppblog.com/tgh621/archive/2008/09/03/60791.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/tgh621/comments/commentRss/60791.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/tgh621/services/trackbacks/60791.html</trackback:ping><description><![CDATA[<p><a name=数据寄存器><font color=#ff00ff size=3>1、数据寄存器</font></a></p>
<p style="TEXT-INDENT: 21.25pt">数据寄存器主要用来保存操作数和运算结果等信息，从而节省读取操作数所需占用总线和访问存储器的时间。</p>
<p style="TEXT-INDENT: 21.25pt">32位<font color=#ff0000>CPU</font>有4个32位的通用寄存器<font color=#ff0000>EAX</font>、<font color=#ff0000>EBX</font>、<font color=#ff0000>ECX</font>和<font color=#ff0000>EDX</font>。对低16位数据的存取，不会影响高16位的数据。这些低16位寄存器分别命名为：<font color=#ff0000>AX</font>、<font color=#ff0000>BX</font>、<font color=#ff0000>CX</font>和<font color=#ff0000>DX</font>，它和先前的<font color=#ff0000>CPU</font>中的寄存器相一致。</p>
<p style="TEXT-INDENT: 21.25pt">4个16位寄存器又可分割成8个独立的8位寄存器(<font color=#ff0000>AX</font>：<font color=#ff0000>AH</font>-<font face=Arial color=#ff0000>AL</font>、<font color=#ff0000>BX</font>：<font face=Arial color=#ff0000>BH</font>-<font face=Arial color=#ff0000>BL</font>、<font color=#ff0000>CX</font>：<font face=Arial color=#ff0000>CH</font>-<font face=Arial color=#ff0000>CL</font>、<font color=#ff0000>DX</font>：<font face=Arial color=#ff0000>DH</font>-<font color=#ff0000>DL</font>)，每个寄存器都有自己的名称，可独立存取。程序员可利用数据寄存器的这种&#8220;可分可合&#8221;的特性，灵活地处理字/字节的信息。
<table cellSpacing=0 cellPadding=3 width="95%" border=0>
    <tbody>
        <tr>
            <td vAlign=top width="6%">
            <p align=right><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/Ball3.gif" width=12 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/Ball3.gif"></p>
            </td>
            <td vAlign=bottom width="94%">寄存器<font color=#ff0000>AX</font>和<font color=#ff0000>AL</font>通常称为累加器(Accumulator)，用累加器进行的操作可能需要更少时间。累加器可用于乘、除、输入/输出等操作，它们的使用频率很高；</td>
        </tr>
        <tr>
            <td vAlign=top align=right width="6%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/Ball3.gif" width=12 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/Ball3.gif"></td>
            <td width="94%">寄存器<font color=#ff0000>BX</font>称为基地址寄存器(Base Register)。它可作为存储器指针来使用； </td>
        </tr>
        <tr>
            <td vAlign=top align=right width="6%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/Ball3.gif" width=12 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/Ball3.gif"></td>
            <td width="94%">寄存器<font color=#ff0000>CX</font>称为计数寄存器(Count Register)。在循环和字符串操作时，要用它来控制循环次数；在位操作中，当移多位时，要用<font color=#ff0000>CL</font>来指明移位的位数；</td>
        </tr>
        <tr>
            <td vAlign=top align=right width="6%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/Ball3.gif" width=12 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/Ball3.gif"></td>
            <td width="94%">寄存器<font color=#ff0000>DX</font>称为数据寄存器(Data Register)。在进行乘、除运算时，它可作为默认的操作数参与运算，也可用于存放<font color=#ff0000>I/O</font>的端口地址。</td>
        </tr>
    </tbody>
</table>
<p style="TEXT-INDENT: 21.25pt">在16位<font color=#ff0000>CPU</font>中，<font color=#ff0000>AX</font>、<font color=#ff0000>BX</font>、<font color=#ff0000>CX</font>和<font color=#ff0000>DX</font>不能作为基址和变址寄存器来存放存储单元的地址，但在32位<font color=#ff0000>CPU</font>中，其32位寄存器<font color=#ff0000>EAX</font>、<font color=#ff0000>EBX</font>、<font color=#ff0000>ECX</font>和<font color=#ff0000>EDX</font>不仅可传送数据、暂存数据保存算术逻辑运算结果，而且也可作为指针寄存器，所以，这些32位寄存器更具有通用性。详细内容请见第3.8节——32位地址的寻址方式。</p>
<p><a name=变址寄存器>2<font color=#ff00ff size=3>、变址寄存器</font></a></p>
<p style="TEXT-INDENT: 21.25pt">32位<font color=#ff0000>CPU</font>有2个32位通用寄存器<font face=Arial color=#ff0000>ESI</font>和<font face=Arial color=#ff0000>EDI</font>。其低16位对应先前<font face=Arial color=#ff0000>CPU</font>中的<font face=Arial color=#ff0000>SI</font>和<font face=Arial color=#ff0000>DI</font>，对低16位数据的存取，不影响高16位的数据。</p>
<p style="TEXT-INDENT: 21.25pt">寄存器<font color=#ff0000>ESI</font>、<font color=#ff0000>EDI</font>、<font color=#ff0000>SI</font>和<font color=#ff0000>DI</font>称为变址寄存器(Index Register)，它们主要用于存放存储单元在段内的偏移量，用它们可实现多种存储器操作数的寻址方式(在第3章有详细介绍)，为以不同的地址形式访问存储单元提供方便。</p>
<p style="TEXT-INDENT: 21.25pt">变址寄存器不可分割成8位寄存器。作为通用寄存器，也可存储算术逻辑运算的操作数和运算结果。</p>
<p style="TEXT-INDENT: 21.25pt">它们可作一般的存储器指针使用。在字符串操作指令的执行过程中，对它们有特定的要求，而且还具有特殊的功能。具体描述请见第5.2.11节。</p>
<p><a name=指针寄存器>3<font color=#ff00ff size=3>、指针寄存器</font></a></p>
<p style="TEXT-INDENT: 21.25pt">32位<font color=#ff0000>CPU</font>有2个32位通用寄存器<font color=#ff0000>EBP</font>和<font color=#ff0000>ESP</font>。其低16位对应先前<font color=#ff0000>CPU</font>中的<font color=#ff0000>SBP</font>和<font color=#ff0000>SP</font>，对低16位数据的存取，不影响高16位的数据。</p>
<p style="TEXT-INDENT: 21.25pt">寄存器<font color=#ff0000>EBP</font>、<font color=#ff0000>ESP</font>、<font color=#ff0000>BP</font>和<font color=#ff0000>SP</font>称为指针寄存器(Pointer Register)，主要用于存放堆栈内存储单元的偏移量，用它们可实现多种存储器操作数的寻址方式(在第3章有详细介绍)，为以不同的地址形式访问存储单元提供方便。</p>
<p style="TEXT-INDENT: 21.25pt">指针寄存器不可分割成8位寄存器。作为通用寄存器，也可存储算术逻辑运算的操作数和运算结果。</p>
<table cellSpacing=0 cellPadding=2 width="100%" border=0>
    <tbody>
        <tr>
            <td width="100%" colSpan=2>
            <p style="TEXT-INDENT: 21.25pt">它们主要用于访问堆栈内的存储单元，并且规定：</p>
            </td>
        </tr>
        <tr>
            <td align=right width="7%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/redpoint.gif" width=20 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/redpoint.gif"></td>
            <td width="93%">BP为基指针(Base Pointer)寄存器，用它可直接存取堆栈中的数据；</td>
        </tr>
        <tr>
            <td align=right width="7%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/redpoint.gif" width=20 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/redpoint.gif"></td>
            <td width="93%">SP为堆栈指针(Stack Pointer)寄存器，用它只可访问栈顶。</td>
        </tr>
    </tbody>
</table>
<p><a name=段寄存器>4<font color=#ff00ff size=3>、段寄存器</font></a></p>
<p style="TEXT-INDENT: 21.25pt">段寄存器是根据内存分段的管理模式而设置的。内存单元的物理地址由段寄存器的值和一个偏移量组合而成的，这样可用两个较少位数的值组合成一个可访问较大物理空间的内存地址。</p>
<table cellPadding=0 width="100%" border=0>
    <tbody>
        <tr>
            <td width="100%" colSpan=2>
            <p style="TEXT-INDENT: 21.25pt">CPU内部的段寄存器：</p>
            </td>
        </tr>
        <tr>
            <td align=right width="6%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/ball.gif" width=12 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/ball.gif"></td>
            <td width="94%">CS——代码段寄存器(Code Segment Register)，其值为代码段的段值；</td>
        </tr>
        <tr>
            <td align=right width="6%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/ball.gif" width=12 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/ball.gif"></td>
            <td width="94%">DS——数据段寄存器(Data Segment Register)，其值为数据段的段值；</td>
        </tr>
        <tr>
            <td align=right width="6%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/ball.gif" width=12 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/ball.gif"></td>
            <td width="94%">ES——附加段寄存器(Extra Segment Register)，其值为附加数据段的段值；</td>
        </tr>
        <tr>
            <td align=right width="6%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/ball.gif" width=12 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/ball.gif"></td>
            <td width="94%">SS——堆栈段寄存器(Stack Segment Register)，其值为堆栈段的段值；</td>
        </tr>
        <tr>
            <td align=right width="6%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/redball.gif" width=17 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/redball.gif"></td>
            <td width="94%">FS——附加段寄存器(Extra Segment Register)，其值为附加数据段的段值；</td>
        </tr>
        <tr>
            <td align=right width="6%"><img src="http://www.jdxt.net/huibianyuyan/TextBookIMG/redball.gif" width=17 border=0 tppabs="http://www.mdjx.net/course/hep/huibianyuyan/TextBookIMG/redball.gif"></td>
            <td width="94%">GS——附加段寄存器(Extra Segment Register)，其值为附加数据段的段值。</td>
        </tr>
    </tbody>
</table>
<p style="TEXT-INDENT: 21.25pt">在16位<font color=#ff0000>CPU</font>系统中，它只有4个段寄存器，所以，程序在任何时刻至多有4个正在使用的段可直接访问；在32位微机系统中，它有6个段寄存器，所以，在此环境下开发的程序最多可同时访问6个段。</p>
<p style="TEXT-INDENT: 21.25pt">32位<font color=#ff0000>CPU</font>有两个不同的工作方式：实方式和保护方式。在每种方式下，段寄存器的作用是不同的。有关规定简单描述如下：</p>
<table cellSpacing=0 cellPadding=3 width="100%" border=0>
    <tbody>
        <tr>
            <td vAlign=top align=right width="13%">实方式：</td>
            <td width="87%">前4个段寄存器<font color=#ff0000>CS</font>、<font color=#ff0000>DS</font>、<font color=#ff0000>ES</font>和<font color=#ff0000>SS</font>与先前<font color=#ff0000>CPU</font>中的所对应的段寄存器的含义完全一致，内存单元的逻辑地址仍为&#8220;段值：偏移量&#8221;的形式。为访问某内存段内的数据，必须使用该段寄存器和存储单元的偏移量。</td>
        </tr>
        <tr>
            <td vAlign=top align=right width="13%">保护方式：</td>
            <td width="87%">在此方式下，情况要复杂得多，装入段寄存器的不再是段值，而是称为&#8220;选择子&#8221;(Selector)的某个值。段寄存器的具体作用在此不作进一步介绍了，有兴趣的读者可参阅其它科技资料。</td>
        </tr>
    </tbody>
</table>
<p><a name=指令指针寄存器>5<font color=#ff00ff size=3>、指令指针寄存器</font></a></p>
<p style="TEXT-INDENT: 21.25pt">32位<font face=Arial color=#ff0000>CPU</font>把指令指针扩展到32位，并记作<font face=Arial color=#ff0000>EIP</font>，<font face=Arial color=#ff0000>EIP</font>的低16位与先前<font face=Arial color=#ff0000>CPU</font>中的<font face=Arial color=#ff0000>IP</font>作用相同。</p>
<p style="TEXT-INDENT: 21.25pt">指令指针<font face=Arial color=#ff0000>EIP</font>、<font color=#ff0000>IP</font>(Instruction Pointer)是存放下次将要执行的指令在代码段的偏移量。在具有预取指令功能的系统中，下次要执行的指令通常已被预取到指令队列中，除非发生转移情况。所以，在理解它们的功能时，不考虑存在指令队列的情况。</p>
<p style="TEXT-INDENT: 21.25pt">在实方式下，由于每个段的最大范围为64K，所以，<font color=#ff0000>EIP</font>中的高16位肯定都为0，此时，相当于只用其低16位的<font color=#ff0000>IP</font>来反映程序中指令的执行次序。<br></p>
<p><font color=#ff00ff size=3>16位标志寄存器</font><font size=3>——</font>共用了<font color=#ff0000>9</font>个标志位，它们主要用来反映<font color=#ff0000>CPU</font>的状态和运算结果的特征。标志位的分布如下表所示。</p>
<p style="TEXT-INDENT: 21.25pt">
<table cellSpacing=0 cellPadding=0 width="100%" border=0>
    <tbody>
        <tr>
            <td width="40%"></td>
            <td width="60%">
            <table cellSpacing=0 width=496 border=0>
                <tbody>
                    <tr>
                        <td align=middle width=30>15</td>
                        <td align=middle width=30>14</td>
                        <td align=middle width=30>13</td>
                        <td align=middle width=30>12</td>
                        <td align=middle width=30>11</td>
                        <td align=middle width=30>10</td>
                        <td align=middle width=30>9</td>
                        <td align=middle width=30>8</td>
                        <td align=middle width=30>7</td>
                        <td align=middle width=30>6</td>
                        <td align=middle width=30>5</td>
                        <td align=middle width=30>4</td>
                        <td align=middle width=30>3</td>
                        <td align=middle width=30>2</td>
                        <td align=middle width=30>1</td>
                        <td align=middle width=30>0</td>
                    </tr>
                </tbody>
            </table>
            <div align=right>
            <table cellSpacing=0 cellPadding=0 width=496 border=1>
                <tbody>
                    <tr>
                        <td align=middle width=30>&nbsp; </td>
                        <td align=middle width=30>&nbsp; </td>
                        <td align=middle width=30>&nbsp; </td>
                        <td align=middle width=30>&nbsp; </td>
                        <td align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#OF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#OF"><font color=#0000ff><u>OF</u></font></a></td>
                        <td align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#DF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#DF"><font color=#0000ff><u>DF</u></font></a></td>
                        <td align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#IF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#IF"><font color=#0000ff><u>IF</u></font></a></td>
                        <td align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#TF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#TF"><font color=#0000ff><u>TF</u></font></a></td>
                        <td align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#SF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#SF"><font color=#0000ff><u>SF</u></font></a></td>
                        <td align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#ZF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#ZF"><u><font color=#0000ff>ZF</font></u></a></td>
                        <td align=middle width=30>&nbsp; </td>
                        <td align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#AF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#AF"><u><font color=#0000ff>AF</font></u></a></td>
                        <td align=middle width=30>&nbsp; </td>
                        <td align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#PF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#PF"><u><font color=#0000ff>PF</font></u></a></td>
                        <td align=middle width=30>&nbsp; </td>
                        <td align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm"><u><font color=#0000ff>CF</font></u></a></td>
                    </tr>
                </tbody>
            </table>
            </div>
            </td>
        </tr>
    </tbody>
</table>
</p>
<p style="MARGIN-LEFT: 117pt; TEXT-INDENT: -117pt"><font color=#ff00ff size=3>32位标志寄存器</font><font size=3>——</font><font color=#ff0000>32</font>位<font color=#ff0000>CPU</font>也把标志寄存器扩展到<font color=#ff0000>32</font>位，记为<font color=#ff0000>EFLAGS</font>。它新增加了四个控制标志位，它们是：<font color=#ff0000>IOPL</font>、<font color=#ff0000>NT</font>、<font color=#ff0000>RF</font>和<font color=#ff0000>VM</font>，这些标志位在实方式下不起作用。其它标志位的位置和作用与先前的完全相同。<br>其主要标志位的分布如下表所示。</p>
<p style="TEXT-INDENT: 21.25pt">
<table cellSpacing=0 width="100%" border=0>
    <tbody>
        <tr>
            <td align=middle width=30>31</td>
            <td align=middle width=185>&#8230;</td>
            <td align=middle width=30>17</td>
            <td align=middle width=30>16</td>
            <td align=middle width=30>15</td>
            <td align=middle width=30>14</td>
            <td align=middle width=30>13</td>
            <td align=middle width=30>12</td>
            <td align=middle width=30>11</td>
            <td align=middle width=30>10</td>
            <td align=middle width=30>9</td>
            <td align=middle width=30>8</td>
            <td align=middle width=30>7</td>
            <td align=middle width=30>6</td>
            <td align=middle width=30>5</td>
            <td align=middle width=30>4</td>
            <td align=middle width=30>3</td>
            <td align=middle width=30>2</td>
            <td align=middle width=30>1</td>
            <td align=middle width=30>0</td>
        </tr>
    </tbody>
</table>
</p>
<div align=right>
<table cellSpacing=0 cellPadding=0 width="100%" border=1>
    <tbody>
        <tr>
            <td vAlign=center align=middle width=30>&#8230;</td>
            <td vAlign=center align=middle width=185>&#8230;</td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#VM" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#VM"><font color=#0000ff><u>VM</u></font></a></td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#RF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#RF"><u><font color=#0000ff>RF</font></u></a></td>
            <td vAlign=center align=middle width=30>&nbsp;</td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#NT" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#NT"><font color=#0000ff><u>NT</u></font></a></td>
            <td vAlign=center align=middle width=60><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#IOPL" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#IOPL"><font color=#0000ff><u>IOPL</u></font></a></td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#OF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#OF"><font color=#0000ff><u>OF</u></font></a></td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#DF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#DF"><font color=#0000ff><u>DF</u></font></a></td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#IF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#IF"><font color=#0000ff><u>IF</u></font></a></td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#TF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#TF"><font color=#0000ff><u>TF</u></font></a></td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#SF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#SF"><font color=#0000ff><u>SF</u></font></a></td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#ZF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#ZF"><u><font color=#0000ff>ZF</font></u></a></td>
            <td vAlign=center align=middle width=30>&nbsp; </td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#AF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#AF"><u><font color=#0000ff>AF</font></u></a></td>
            <td vAlign=center align=middle width=30>&nbsp; </td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm#PF" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm#PF"><u><font color=#0000ff>PF</font></u></a></td>
            <td vAlign=center align=middle width=30>&nbsp; </td>
            <td vAlign=center align=middle width=30><a href="http://www.jdxt.net/huibianyuyan/flags2.htm" target=bottom tppabs="http://www.mdjx.net/course/hep/huibianyuyan/flags2.htm"><u><font color=#0000ff>CF</font></u></a></td>
        </tr>
    </tbody>
</table>
</div>
<h2>一、运算结果标志位</h2>
<h3>1、进位标志CF(Carry Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">进位标志CF主要用来反映运算是否产生进位或借位。如果运算结果的最高位产生了一个进位或借位，那么，其值为1，否则其值为0。</p>
<p style="TEXT-INDENT: 21.25pt">使用该标志位的情况有：多字(字节)数的加减运算，无符号数的大小比较运算，移位操作，字(字节)之间移位，专门改变CF值的指令等。</p>
<h3>2、<a name=PF>奇偶标志</a>PF(Parity Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">奇偶标志PF用于反映运算结果中&#8220;1&#8221;的个数的奇偶性。如果&#8220;1&#8221;的个数为偶数，则PF的值为1，否则其值为0。</p>
<p style="TEXT-INDENT: 21.25pt">利用PF可进行奇偶校验检查，或产生奇偶校验位。在数据传送过程中，为了提供传送的可靠性，如果采用奇偶校验的方法，就可使用该标志位。</p>
<h3>3、<a name=AF>辅助进位标志</a>AF(Auxiliary Carry Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">在发生下列情况时，辅助进位标志AF的值被置为1，否则其值为0：</p>
<p style="MARGIN-LEFT: 40pt">(1)、在字操作时，发生低字节向高字节进位或借位时；<br>(2)、在字节操作时，发生低4位向高4位进位或借位时。</p>
<p style="TEXT-INDENT: 21.25pt">对以上6个运算结果标志位，在一般编程情况下，标志位CF、ZF、SF和OF的使用频率较高，而标志位PF和AF的使用频率较低。</p>
<h3>4、<a name=ZF>零标志</a>ZF(Zero Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">零标志ZF用来反映运算结果是否为0。如果运算结果为0，则其值为1，否则其值为0。在判断运算结果是否为0时，可使用此标志位。</p>
<h3>5、<a name=SF>符号标志</a>SF(Sign Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">符号标志SF用来反映运算结果的符号位，它与运算结果的最高位相同。在微机系统中，有符号数采用补码表示法，所以，SF也就反映运算结果的正负号。运算结果为正数时，SF的值为0，否则其值为1。</p>
<h3>6、<a name=OF>溢出标志</a>OF(Overflow Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">溢出标志OF用于反映有符号数加减运算所得结果是否溢出。如果运算结果超过当前运算位数所能表示的范围，则称为溢出，OF的值被置为1，否则，OF的值被清为0。</p>
<p style="TEXT-INDENT: 21.25pt">&#8220;溢出&#8221;和&#8220;进位&#8221;是两个不同含义的概念，不要混淆。如果不太清楚的话，请查阅《计算机组成原理》课程中的有关章节。</p>
<h2><a name=TF>二、状态控制标志位</a></h2>
<p style="TEXT-INDENT: 21.25pt">状态控制标志位是用来控制CPU操作的，它们要通过专门的指令才能使之发生改变。</p>
<h3>1、追踪标志TF(Trap Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">当追踪标志TF被置为1时，CPU进入单步执行方式，即每执行一条指令，产生一个单步中断请求。这种方式主要用于程序的调试。</p>
<p style="TEXT-INDENT: 21.25pt">指令系统中没有专门的指令来改变标志位TF的值，但程序员可用其它办法来改变其值。</p>
<h3>2、<a name=IF>中断允许标志</a>IF(Interrupt-enable Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">中断允许标志IF是用来决定CPU是否响应CPU外部的可屏蔽中断发出的中断请求。但不管该标志为何值，CPU都必须响应CPU外部的不可屏蔽中断所发出的中断请求，以及CPU内部产生的中断请求。具体规定如下：</p>
<p style="TEXT-INDENT: 21.25pt">(1)、当IF=1时，CPU可以响应CPU外部的可屏蔽中断发出的中断请求；</p>
<p style="TEXT-INDENT: 21.25pt">(2)、当IF=0时，CPU不响应CPU外部的可屏蔽中断发出的中断请求。</p>
<p style="TEXT-INDENT: 21.25pt">CPU的指令系统中也有专门的指令来改变标志位IF的值。</p>
<h3>3、<a name=DF>方向标志</a>DF(Direction Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">方向标志DF用来决定在串操作指令执行时有关指针寄存器发生调整的方向。具体规定在第5.2.11节——字符串操作指令——中给出。在微机的指令系统中，还提供了专门的指令来改变标志位DF的值。</p>
<h2><a name=IOPL>三</a>、32位标志寄存器增加的标志位</h2>
<h3>1、I/O特权标志IOPL(I/O Privilege Level)</h3>
<p style="TEXT-INDENT: 21.25pt">I/O特权标志用两位二进制位来表示，也称为I/O特权级字段。该字段指定了要求执行I/O指令的特权级。如果当前的特权级别在数值上小于等于IOPL的值，那么，该I/O指令可执行，否则将发生一个保护异常。</p>
<h3>2、<a name=NT>嵌套任务标志</a>NT(Nested Task)</h3>
<p style="TEXT-INDENT: 21.25pt">嵌套任务标志NT用来控制中断返回指令IRET的执行。具体规定如下：</p>
<p style="TEXT-INDENT: 21.25pt">(1)、当NT=0，用堆栈中保存的值恢复EFLAGS、CS和EIP，执行常规的中断返回操作；</p>
<p style="TEXT-INDENT: 21.25pt">(2)、当NT=1，通过任务转换实现中断返回。</p>
<h3>3、<a name=RF>重启动标志</a>RF(Restart Flag)</h3>
<p style="TEXT-INDENT: 21.25pt">重启动标志RF用来控制是否接受调试故障。规定：RF=0时，表示&#8220;接受&#8221;调试故障，否则拒绝之。在成功执行完一条指令后，处理机把RF置为0，当接受到一个非调试故障时，处理机就把它置为1。</p>
<h3><a name=VM>4</a>、虚拟8086方式标志VM(Virtual 8086 Mode)</h3>
<p style="TEXT-INDENT: 21.25pt">如果该标志的值为1，则表示处理机处于虚拟的8086方式下的工作状态，否则，处理机处于一般保护方式下的工作状态。</p>
<img src ="http://www.cppblog.com/tgh621/aggbug/60791.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/tgh621/" target="_blank">大海</a> 2008-09-03 09:41 <a href="http://www.cppblog.com/tgh621/archive/2008/09/03/60791.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>简单介绍SSE指令的功能</title><link>http://www.cppblog.com/tgh621/archive/2008/09/02/60727.html</link><dc:creator>大海</dc:creator><author>大海</author><pubDate>Tue, 02 Sep 2008 10:17:00 GMT</pubDate><guid>http://www.cppblog.com/tgh621/archive/2008/09/02/60727.html</guid><wfw:comment>http://www.cppblog.com/tgh621/comments/60727.html</wfw:comment><comments>http://www.cppblog.com/tgh621/archive/2008/09/02/60727.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/tgh621/comments/commentRss/60727.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/tgh621/services/trackbacks/60727.html</trackback:ping><description><![CDATA[ADDPS<br><br>格式：ADDPS xmm1, xmm2/m128<br><br>功能：两组单精度数相加<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = DEST[31-0]&nbsp;&nbsp; + SRC/m128[31-0]&nbsp; ;<br>DEST[63-32]&nbsp; = DEST[63-32]&nbsp; + SRC/m128[63-32] ;<br>DEST[95-64]&nbsp; = DEST[95-64]&nbsp; + SRC/m128[95-64] ;<br>DEST[127-96] = DEST[127-96] + SRC/m128[127-96];<br><br>ADDSS<br><br>格式：ADDSS xmm1, xmm2/m32<br><br>功能：低位单精度数相加<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = DEST[31-0] + SRC/m32[31-0];<br>DEST[63-32]&nbsp; = DEST[63-32] ;<br>DEST[95-64]&nbsp; = DEST[95-64] ;<br>DEST[127-96] = DEST[127-96]; <br>&nbsp;&nbsp;&nbsp; <br>ANDNPS<br><br>格式：ANDNPS xmm1, xmm2/m128<br><br>功能：xmm1&#8220;取反&#8221;再和 xmm2/m128 求&#8220;与&#8221;运算<br><br>算法：<br><br>DEST[127-0] = NOT (DEST[127-0]) AND SRC/m128[127-0];<br><br>ANDPS<br><br>格式：ANDPS xmm1, xmm2/m128<br><br>功能：进行两个寄存器的逻辑&#8220;与&#8221;操作<br><br>算法：<br><br>DEST[127-0] AND= SRC/m128[127-0];<br><br>CMPPS<br><br>格式：CMPPS xmm1, xmm2/m128, imm8<br><br>功能：比较两个寄存器的数值，根据imm8的不同数值采用不同的比较方法<br><br>imm8 == 0, ==; imm8 == 1,&nbsp; &lt;; imm8 == 2,&nbsp; &lt;=; imm8 == 3,&nbsp; ?;<br>imm8 == 4, !=; imm8 == 5, !&lt;; imm8 == 6, !&lt;=; imm8 == 7, !?;<br><br>算法：<br><br>IF&nbsp;&nbsp;&nbsp;&nbsp; (imm8 = 0) THEN<br>&nbsp;&nbsp;&nbsp; OP = "EQ";<br>ELSEIF (imm8 = 1) THEN<br>&nbsp;&nbsp;&nbsp; OP = "LT";<br>ELSEIF (imm8 = 2) THEN<br>&nbsp;&nbsp;&nbsp; OP = "LE";<br>ELSEIF (imm8 = 3) THEN<br>&nbsp;&nbsp;&nbsp; OP = "UNORD";<br>ELSEIF (imm8 = 4) THEN<br>&nbsp;&nbsp;&nbsp; OP = "NE";<br>ELSEIF (imm8 = 5) THEN<br>&nbsp;&nbsp;&nbsp; OP = "NLT";<br>ELSEIF (imm8 = 6) THEN<br>&nbsp;&nbsp;&nbsp; OP = "NLE";<br>ELSEIF (imm8 = 7) THEN<br>&nbsp;&nbsp;&nbsp; OP = "ORD";<br>FI<br><br>CMP0 = DEST[31-0]&nbsp;&nbsp; OP SRC/m128[31-0];<br>CMP1 = DEST[63-32]&nbsp; OP SRC/m128[63-32];<br>CMP2 = DEST [95-64] OP SRC/m128[95-64];<br>CMP3 = DEST[127-96] OP SRC/m128[127-96];<br><br>IF (CMP0 = TRUE) THEN<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = 0XFFFFFFFF;<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = 0X00000000;<br>FI<br>IF (CMP1 = TRUE) THEN<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = 0XFFFFFFFF;<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = 0X00000000;<br>FI<br>IF (CMP2 = TRUE) THEN<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = 0XFFFFFFFF;<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = 0X00000000;<br>FI<br>IF (CMP3 = TRUE) THEN<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = 0XFFFFFFFF;<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = 0X00000000;<br>FI<br><br>其它：你可以使用下面的可读性良好的指令<br><br>指令&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 实现<br>CMPEQPS&nbsp;&nbsp;&nbsp; xmm1, xmm2；&nbsp;&nbsp;&nbsp;&nbsp; CMPPS xmm1,xmm2, 0<br>CMPLTPS&nbsp;&nbsp;&nbsp; xmm1, xmm2；&nbsp;&nbsp;&nbsp;&nbsp; CMPPS xmm1,xmm2, 1<br>CMPLEPS&nbsp;&nbsp;&nbsp; xmm1, xmm2；&nbsp;&nbsp;&nbsp;&nbsp; CMPPS xmm1,xmm2, 2<br>CMPUNORDPS xmm1, xmm2；&nbsp;&nbsp;&nbsp;&nbsp; CMPPS xmm1,xmm2, 3<br>CMPNEQPS&nbsp;&nbsp; xmm1, xmm2；&nbsp;&nbsp;&nbsp;&nbsp; CMPPS xmm1,xmm2, 4<br>CMPNLTPS&nbsp;&nbsp; xmm1, xmm2；&nbsp;&nbsp;&nbsp;&nbsp; CMPPS xmm1,xmm2, 5<br>CMPNLEPS&nbsp;&nbsp; xmm1, xmm2；&nbsp;&nbsp;&nbsp;&nbsp; CMPPS xmm1,xmm2, 6<br>CMPORDPS&nbsp;&nbsp; xmm1, xmm2；&nbsp;&nbsp;&nbsp;&nbsp; CMPPS xmm1,xmm2, 7<br><br>CMPSS<br><br>格式：CMPSS xmm1, xmm2/m32, imm8<br><br>功能：低位单精度数做比较<br><br>算法：算法同CMPPS相似，只不过只是针对DEST[31-0]进行操作。<br><br>同样也可以利用可读性更好的指令<br><br>指令&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 实现<br>CMPEQSS&nbsp;&nbsp;&nbsp; xmm1, xmm2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMPSS xmm1,xmm2, 0<br>CMPLTSS&nbsp;&nbsp;&nbsp; xmm1, xmm2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMPSS xmm1,xmm2, 1<br>CMPLESS&nbsp;&nbsp;&nbsp; xmm1, xmm2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMPSS xmm1,xmm2, 2<br>CMPUNORDSS xmm1, xmm2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMPSS xmm1,xmm2, 3<br>CMPNEQSS&nbsp;&nbsp; xmm1, xmm2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMPSS xmm1,xmm2, 4<br>CMPNLTSS&nbsp;&nbsp; xmm1, xmm2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMPSS xmm1,xmm2, 5<br>CMPNLESS&nbsp;&nbsp; xmm1, xmm2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMPSS xmm1,xmm2, 6<br>CMPORDSS&nbsp;&nbsp; xmm1, xmm2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CMPSS xmm1,xmm2, 7<br><br>COMISS<br><br>格式：COMISS xmm1, xmm2/m32<br><br>功能：比较低位数并且设置标识位<br><br>算法：<br><br>OF = 0;<br>SF = 0;<br>AF = 0;<br>IF&nbsp;&nbsp;&nbsp;&nbsp; ((DEST[31-0] UNORD SRC/m32[31-0]) = TRUE) THEN<br>&nbsp;&nbsp;&nbsp; ZF = 1;<br>&nbsp;&nbsp;&nbsp; PF = 1;<br>&nbsp;&nbsp;&nbsp; CF = 1;<br>ELSEIF ((DEST[31-0] GTRTHAN SRC/m32[31-0]) = TRUE)THEN<br>&nbsp;&nbsp;&nbsp; ZF = 0;<br>&nbsp;&nbsp;&nbsp; PF = 0;<br>&nbsp;&nbsp;&nbsp; CF = 0;<br>ELSEIF ((DEST[31-0] LESSTHAN SRC/m32[31-0]) = TRUE THEN<br>&nbsp;&nbsp;&nbsp; ZF = 0;<br>&nbsp;&nbsp;&nbsp; PF = 0;<br>&nbsp;&nbsp;&nbsp; CF = 1;<br>ELSE<br>&nbsp;&nbsp;&nbsp; ZF = 1;<br>&nbsp;&nbsp;&nbsp; PF = 0;<br>&nbsp;&nbsp;&nbsp; CF = 0;<br>FI<br><br>CVTPI2PS<br><br>格式：CVTPI2PS xmm, mm/m64<br><br>功能：32位整数转变为浮点数<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = (float) (SRC/m64[31-0]) ;<br>DEST[63-32]&nbsp; = (float) (SRC/m64[63-32]);<br>DEST[95-64]&nbsp; = DEST[95-64] ;<br>DEST[127-96] = DEST[127-96]; <br>CVTPS2PI<br><br>格式：CVTPS2PI mm, xmm/m64<br><br>功能：低位的两个浮点数转变为整数<br><br>算法：<br><br>DEST[31-0] = (int) (SRC/m64[31-0]);<br>DEST[63-32]= (int) (SRC/m64[63-32]);<br><br>CVTSI2SS<br><br>格式：CVTSI2SS xmm, r/m32<br><br>功能：32位整数转变为浮点数，存入低位<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = (float) (R/m32);<br>DEST[63-32]&nbsp; = DEST[63-32] ;<br>DEST[95-64]&nbsp; = DEST[95-64] ;<br>DEST[127-96] = DEST[127-96];<br><br>CVTSS2SI<br><br>格式：CVTSS2SI r32, xmm/m32<br><br>功能：低位的浮点数转变为32位整数<br><br>算法：<br><br>r32 = (int) (SRC/m32[31-0]);<br><br>CVTTPS2PI<br><br>格式：CVTTPS2PI mm, xmm/m64<br><br>功能：低位的两个浮点数转变为整数，并且舍位<br><br>算法：<br><br>DEST[31-0]&nbsp; = (int) (SRC/m64[31-0]) ;<br>DEST[63-32] = (int) (SRC/m64[63-32]);<br><br>CVTTSS2SI<br><br>格式：CVTTSS2SI r32, xmm/ m32<br><br>功能：将最低位浮点数转换为整数，并舍位。<br><br>算法：<br><br>r32 = (INT) (SRC/m32[31-0]);<br><br>DIVPS<br><br>格式：DIVPS xmm1, xmm2/m128<br><br>功能：单精度数除法运算<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = DEST[31-0]&nbsp;&nbsp; / (SRC/m128[31-0])&nbsp; ;<br>DEST[63-32]&nbsp; = DEST[63-32]&nbsp; / (SRC/m128[63-32]) ;<br>DEST[95-64]&nbsp; = DEST[95-64]&nbsp; / (SRC/m128[95-64]) ;<br>DEST[127-96] = DEST[127-96] / (SRC/m128[127-96]);<br><br>DIVSS<br><br>格式：DIVSS xmm1, xmm2/m32<br><br>功能：低位单精度数除法<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = DEST[31-0] / (SRC/m32[31-0]);<br>DEST[63-32]&nbsp; = DEST[63-32] ;<br>DEST[95-64]&nbsp; = DEST[95-64] ;<br>DEST[127-96] = DEST[127-96];<br><br>EMMS<br><br>格式：EMMS<br><br>功能：将浮点标识字置空<br><br>算法：<br><br>FPUTagWord &lt;- FFFF<br><br>FXRSTOR<br><br>格式：FXRSTOR m512byte<br><br>功能：从m512byte中装入FP，MMX，以及SSE的状态<br><br>算法：<br><br>FP and MMX state and Streaming SIMD Extension state = m512byte;<br><br>FXSAVE<br><br>格式：FXSAVE m512byte<br><br>功能：向m512byte中存入FP，MMX，以及SSE的状态<br><br>算法：<br><br>m512byte = FP and MMX state and Streaming SIMD Extension state;<br><br>LDMXCSR<br><br>格式：LDMXCSR m32<br><br>功能：装入SSE的状态控制字<br><br>算法：<br><br>MXCSR = m32;<br><br>MAXPS<br><br>格式：MAXPS xmm1, xmm2/m128<br><br>功能：返回最大值<br><br>算法：<br><br>IF (DEST[31-0]=NaN) THEN<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = SRC[31-0];<br>ELSEIF (SRC[31-0] = NaN) THEN<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = SRC[31-0];<br>ELSEIF (DEST[31-0] &gt; SRC/m128[31-0]) THEN<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = DEST[31-0];<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = SRC/m128[31-0];<br>FI<br>IF (DEST[63-32]=NaN) THEN<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = SRC[63-32];<br>ELSEIF (SRC[63-32] = NaN) THEN<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = SRC[63-32];<br>ELSEIF (DEST[63-32] &gt; SRC/m128[63-32]) THEN<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = DEST[63-32];<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = SRC/m128[63-32];<br>FI<br>IF (DEST[95-64]=NaN) THEN<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = SRC[95-64];<br>ELSEIF (SRC[95-64] = NaN) THEN<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = SRC[95-64];<br>ELSEIF (DEST[95-64] &gt; SRC/m128[95-64]) THEN<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = DEST[95-64];<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = SRC/m128[95-64];<br>FI<br>IF (DEST[127-96]=NaN) THEN<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = SRC[127-96];<br>ELSEIF (SRC[127-96] = NaN) THEN<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = SRC[127-96];<br>ELSEIF (DEST[127-96] &gt; SRC/m128[127-96]) THEN<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = DEST[127-96];<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = SRC/m128[127-96];<br>FI<br><br>MAXSS<br><br>格式：MAXSS xmm1, xmm2/m32<br><br>功能：返回低位最大值<br><br>算法：同上面类似，区别在于只对DEST[31-0]进行操作<br><br>MINPS<br><br>格式：MINPS xmm1, xmm2/m128<br><br>功能：返回最小值<br><br>算法：略<br><br>MINSS<br><br>格式：MINSS xmm1, xmm2/m32<br><br>功能：返回低位最小值<br><br>算法：略<br><br>MOVAPS<br><br>格式：MOVAPS xmm1, xmm2/m128 或 MOVAPS xmm2/m128, xmm1<br><br>功能：对齐的数据传输指令<br><br>算法：<br><br>IF (destination = DEST) THEN<br>&nbsp;&nbsp;&nbsp; IF (SRC = m128)THEN (* load instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST[127-0] = m128;<br>&nbsp;&nbsp;&nbsp; ELSE(* move instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST[127=0] = SRC[127-0];<br>&nbsp;&nbsp;&nbsp; FI;<br>ELSE<br>&nbsp;&nbsp;&nbsp; IF (destination = m128)THEN (* store instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m128 = SRC[127-0];<br>&nbsp;&nbsp;&nbsp; ELSE(* move instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST[127-0] = SRC[127-0];<br>&nbsp;&nbsp;&nbsp; FI;<br>FI; <br>&nbsp;&nbsp;&nbsp; <br>MOVHLPS<br><br>格式：MOVHLPS xmm1, xmm2<br><br>功能：高位的两个数传向低位<br><br>算法：<br><br>DEST[127-64] = DEST[127-64];<br>DEST[63-0]&nbsp;&nbsp; = SRC[127-64] ;<br><br>MOVHPS<br><br>格式：MOVHPS xmm, m64 或 MOVHPS m64, xmm<br><br>功能：高位数据传输指令<br><br>算法：<br><br>IF (destination = DEST) THEN(* load instruction *)<br>&nbsp;&nbsp;&nbsp; DEST[127-64] = m64;<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = DEST[31-0];<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = DEST[63-32];<br>&nbsp;&nbsp;&nbsp; ELSE (* store instruction *)<br>&nbsp;&nbsp;&nbsp; m64 = SRC[127-64];<br>FI; <br>&nbsp;&nbsp;&nbsp; <br>MOVLPS<br><br>格式：MOVLPS xmm, m64 或 MOVLPS m64, xmm<br><br>功能：低位数据传输指令<br><br>算法：<br><br>IF (destination = DEST) THEN(* load instruction *)<br>&nbsp;&nbsp;&nbsp; DEST[63-0] = m64;<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = DEST[95-64];<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = DEST[127-96];<br>ELSE(* store instruction *)<br>&nbsp;&nbsp;&nbsp; m64 = DEST[63-0];<br>FI <br>&nbsp;&nbsp;&nbsp; <br>MOVLHPS<br><br>格式：MOVLHPS xmm1, xmm2<br><br>功能：低位的两个数传向高位<br><br>算法：<br><br>DEST[127-64] = SRC[63-0];<br>DEST[63-0]&nbsp;&nbsp; = DEST[63-0];<br><br>MOVMSKPS<br><br>格式：MOVMSKPS r32, xmm<br><br>功能：掩码移入32位寄存器<br><br>算法：<br><br>r32[0]&nbsp;&nbsp;&nbsp;&nbsp; = SRC[31] ;<br>r32[1]&nbsp;&nbsp;&nbsp;&nbsp; = SRC[63] ;<br>r32[2]&nbsp;&nbsp;&nbsp;&nbsp; = SRC[95] ;<br>r32[3]&nbsp;&nbsp;&nbsp;&nbsp; = SRC[127];<br>r32[7-4]&nbsp;&nbsp; = 0X0&nbsp;&nbsp;&nbsp;&nbsp; ;<br>r32[15-8]&nbsp; = 0X00&nbsp;&nbsp;&nbsp; ;<br>r32[31-16] = 0X0000&nbsp; ;<br><br>MOVNTPS<br><br>格式：MOVNTPS m128, xmm<br><br>功能：将数据直接存入内存，减小对缓存的压力<br><br>算法：<br><br>m128 = SRC;<br><br>MOVSS<br><br>格式：MOVSS xmm1, xmm2/m32 或 MOVSS xmm2/m32, xmm1<br><br>功能：最低位数据的传输指令<br><br>算法：<br><br>IF (destination = DEST) THEN<br>&nbsp;&nbsp;&nbsp; IF (SRC == m32) THEN(* load instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST[31-0] = m32;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [63-32] = 0X00000000;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [95-64] = 0X00000000;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [127-96] = 0X00000000;<br>&nbsp;&nbsp;&nbsp; ELSE(* move instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [31-0] = SRC[31-0];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [63-32] = DEST [63-32];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [95-64] = DEST [95-64];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [127-96] = DEST [127-96];<br>&nbsp;&nbsp;&nbsp; FI<br>ELSE<br>&nbsp;&nbsp;&nbsp; IF (destination = m32) THEN(* store instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m32 = SRC[31-0];<br>&nbsp;&nbsp;&nbsp; ELSE (* move instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [31-0] = SRC[31-0]<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [63-32] = DEST[63-32];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [95-64] = DEST [95-64];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST [127-96] = DEST [127-96];<br>&nbsp;&nbsp;&nbsp; FI<br>FI<br><br>MOVUPS<br><br>格式：MOVUPS xmm1, xmm2/m128 或 MOVUPS xmm2/m128, xmm1<br><br>功能：非对齐数据的传输指令<br><br>算法：<br><br>IF (destination = xmm) THEN<br>&nbsp;&nbsp;&nbsp; IF (SRC = m128)THEN(* load instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST[127-0] = m128;<br>&nbsp;&nbsp;&nbsp; ELSE (* move instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST[127-0] = SRC[127-0];<br>&nbsp;&nbsp;&nbsp; FI<br>ELSE<br>&nbsp;&nbsp;&nbsp; IF (destination = m128) THEN(* store instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m128 = SRC[127-0];<br>&nbsp;&nbsp;&nbsp; ELSE (* move instruction *)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DEST[127-0] = SRC[127-0];<br>&nbsp;&nbsp;&nbsp; FI<br>FI<br><br>MULPS<br><br>格式：MULPS xmm1, xmm2/m128<br><br>功能：单精度数相乘<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = DEST[31-0]&nbsp;&nbsp; * SRC/m128[31-0]&nbsp; ;<br>DEST[63-32]&nbsp; = DEST[63-32]&nbsp; * SRC/m128[63-32] ;<br>DEST[95-64]&nbsp; = DEST[95-64]&nbsp; * SRC/m128[95-64] ;<br>DEST[127-96] = DEST[127-96] * SRC/m128[127-96];<br><br>MULSS<br><br>格式：MULSS xmm1, xmm2/m32<br><br>功能：最低位的单精度数相乘<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = DEST[31-0] * SRC/m32[31-0];<br>DEST[63-32]&nbsp; = DEST[63-32] ;<br>DEST[95-64]&nbsp; = DEST[95-64] ;<br>DEST[127-96] = DEST[127-96];<br><br>ORPS<br><br>格式：ORPS xmm1, xmm2/m128<br><br>功能：求或运算<br><br>算法：<br><br>DEST[127-0] |= SRC/m128[127-0]; <br>RCPPS<br><br>格式：RCPPS xmm1, xmm2/m128<br><br>功能：求倒数的近似值<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = APPROX (1.0/(SRC/m128[31-0]))&nbsp; ;<br>DEST[63-32]&nbsp; = APPROX (1.0/(SRC/m128[63-32])) ;<br>DEST[95-64]&nbsp; = APPROX (1.0/(SRC/m128[95-64])) ;<br>DEST[127-96] = APPROX (1.0/(SRC/m128[127-96]));<br><br>RCPSS<br><br>格式：RCPSS xmm1, xmm2/m32<br><br>功能：求最低位的倒数的近似值<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = APPROX (1.0/(SRC/m32[31-0]));<br>DEST[63-32]&nbsp; = DEST[63-32] ;<br>DEST[95-64]&nbsp; = DEST[95-64] ;<br>DEST[127-96] = DEST[127-96];<br><br>RSQRTPS<br><br>格式：RSQRTPS xmm1, xmm2/m128<br><br>功能：求倒数平方根的近似值<br><br>算法：<br><br>DEST[31-0] = APPROX (1.0/SQRT(SRC/m128[31-0]))&nbsp;&nbsp;&nbsp; ;<br>DEST[63-32] = APPROX (1.0/SQRT(SRC/m128[63-32]))&nbsp; ;<br>DEST[95-64] = APPROX (1.0/SQRT(SRC/m128[95-64]))&nbsp; ;<br>DEST[127-96] = APPROX (1.0/SQRT(SRC/m128[127-96]));<br><br>RSQRTSS<br><br>格式：RSQRTSS xmm1, xmm2/m32<br><br>功能：求最低位倒数平方根的近似值<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = APPROX (1.0/SQRT(SRC/m32[31-0]));<br>DEST[63-32]&nbsp; = DEST[63-32] ;<br>DEST[95-64]&nbsp; = DEST[95-64] ;<br>DEST[127-96] = DEST[127-96];<br><br>SHUFPS<br><br>格式：SHUFPS xmm1, xmm2/m128, imm8<br><br>功能：打乱顺序<br><br>算法：<br><br>FP_SELECT = (imm8 &gt;&gt; 0) AND 0X3;<br>IF (FP_SELECT = 0) THEN<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = DEST[31-0];<br>ELSEIF (FP_SELECT = 1) THEN<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = DEST[63-32];<br>ELSEIF (FP_SELECT = 2) THEN<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = DEST[95-64];<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[31-0] = DEST[127-96];<br>FI<br><br>FP_SELECT = (imm8 &gt;&gt; 2) AND 0X3;<br>IF (FP_SELECT = 0) THEN<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = DEST[31-0];<br>ELSEIF (FP_SELECT = 1) THEN<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = DEST[63-32];<br>ELSEIF (FP_SELECT = 2) THEN<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = DEST[95-64];<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[63-32] = DEST[127-96];<br>FI<br><br>FP_SELECT = (imm8 &gt;&gt; 4) AND 0X3;<br>IF (FP_SELECT = 0) THEN<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = SRC/m128[31-0];<br>ELSEIF (FP_SELECT = 1) THEN<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = SRC/m128 [63-32];<br>ELSEIF (FP_SELECT = 2) THEN<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = SRC/m128 [95-64];<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[95-64] = SRC/m128 [127-96];<br>FI<br><br>FP_SELECT = (imm8 &gt;&gt; 6) AND 0X3;<br>IF (FP_SELECT = 0) THEN<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = SRC/m128 [31-0];<br>ELSEIF (FP_SELECT = 1) THEN<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = SRC/m128 [63-32];<br>ELSEIF (FP_SELECT = 2) THEN<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = SRC/m128 [95-64];<br>ELSE<br>&nbsp;&nbsp;&nbsp; DEST[127-96] = SRC/m128 [127-96];<br>FI<br><br>SQRTPS<br><br>格式：SQRTPS xmm1, xmm2/m128<br><br>功能：求平方根<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = SQRT (SRC/m128[31-0] );<br>DEST[63-32]&nbsp; = SQRT (SRC/m128[63-32]);<br>DEST[95-64]&nbsp; = SQRT (SRC/m128[95-64]);<br>DEST[127-96] = SQRT (SRC/m128[127-96]);<br><br>SQRTSS<br><br>格式：SQRTSS xmm1, xmm2/m32<br><br>功能：最低位数求平方根<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = SQRT (SRC/m32[31-0]);<br>DEST[63-32]&nbsp; = DEST[63-32];<br>DEST[95-64]&nbsp; = DEST[95-64];<br>DEST[127-96] = DEST[127-96];<br><br>STMXCSR<br><br>格式：STMXCSR m32<br><br>功能：存储SSE控制字<br><br>算法：<br><br>m32 = MXCSR;<br><br>SUBPS<br><br>格式：SUBPS xmm1, xmm2/m128<br><br>功能：单精度数的减法运算<br><br>算法：<br><br>DEST[31-0]&nbsp;&nbsp; = DEST[31-0]&nbsp;&nbsp; - SRC/m128[31-0] ;<br>DEST[63-32]&nbsp; = DEST[63-32]&nbsp; - SRC/m128[63-32];<br>DEST[95-64]&nbsp; = DEST[95-64]&nbsp; - SRC/m128[95-64];<br>DEST[127-96] = DEST[127-96] - SRC/m128[127-96];<br><br>SUBSS<br><br>格式：SUBSS xmm1, xmm2/m32<br><br>功能：最低位数相减<br><br>算法：<br><br>DEST[31-0] = DEST[31-0] - SRC/m32[31-0];<br>DEST[63-32] = DEST[63-32];<br>DEST[95-64] = DEST[95-64];<br>DEST[127-96] = DEST[127-96];<br><br>UCOMISS<br><br>格式：UCOMISS xmm1, xmm2/m32<br><br>功能：比较低位数并且设置标志位<br><br>算法：<br><br>OF = 0;<br>SF = 0;<br>AF = 0;<br>IF ((DEST[31-0] UNORD SRC/m32[31-0]) = TRUE) THEN<br>&nbsp;&nbsp;&nbsp; ZF = 1;<br>&nbsp;&nbsp;&nbsp; PF = 1;<br>&nbsp;&nbsp;&nbsp; CF = 1;<br>ELSEIF ((DEST[31-0] GTRTHAN SRC/m32[31-0]) = TRUE)THEN<br>&nbsp;&nbsp;&nbsp; ZF = 0;<br>&nbsp;&nbsp;&nbsp; PF = 0;<br>&nbsp;&nbsp;&nbsp; CF = 0;<br>ELSEIF ((DEST[31-0] LESSTHAN SRC/m32[31-0]) = TRUE THEN<br>&nbsp;&nbsp;&nbsp; ZF = 0;<br>&nbsp;&nbsp;&nbsp; PF = 0;<br>&nbsp;&nbsp;&nbsp; CF = 1;<br>ELSE<br>&nbsp;&nbsp;&nbsp; ZF = 1;<br>&nbsp;&nbsp;&nbsp; PF = 0;<br>&nbsp;&nbsp;&nbsp; CF = 0;<br>FI<br><br>UNPCKHPS<br><br>格式：UNPCKHPS xmm1, xmm2/m128<br><br>功能：高位两数交替传输<br><br>算法：<br><br>DEST[31-0] = DEST[95-64];<br>DEST[63-32] = SRC/m128[95-64];<br>DEST[95-64] = DEST[127-96];<br>DEST[127-96] = SRC/m128[127-96];<br><br>UNPCKLPS<br><br>格式：UNPCKLPS xmm1, xmm2/m128<br><br>功能：低位两数交替传输<br><br>算法：<br><br>DEST[31-0] = DEST[31-0];<br>DEST[63-32] = SRC/m128[31-0];<br>DEST[95-64] = DEST[63-32];<br>DEST[127-96] = SRC/m128[63-32];<br><br>XORPS<br><br>格式：XORPS xmm1, xmm2/m128<br><br>功能：异或运算<br><br>算法：<br><br>DEST[127-0] = DEST/m128[127-0] XOR SRC/m128[127-0]<br>
<img src ="http://www.cppblog.com/tgh621/aggbug/60727.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/tgh621/" target="_blank">大海</a> 2008-09-02 18:17 <a href="http://www.cppblog.com/tgh621/archive/2008/09/02/60727.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>CMOV开头的汇编指令</title><link>http://www.cppblog.com/tgh621/archive/2008/09/02/60721.html</link><dc:creator>大海</dc:creator><author>大海</author><pubDate>Tue, 02 Sep 2008 09:59:00 GMT</pubDate><guid>http://www.cppblog.com/tgh621/archive/2008/09/02/60721.html</guid><wfw:comment>http://www.cppblog.com/tgh621/comments/60721.html</wfw:comment><comments>http://www.cppblog.com/tgh621/archive/2008/09/02/60721.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/tgh621/comments/commentRss/60721.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/tgh621/services/trackbacks/60721.html</trackback:ping><description><![CDATA[<table style="BORDER-COLLAPSE: collapse" borderColor=#808080 cellSpacing=1 border=1>
    <tbody>
        <tr>
            <th noWrap>名称&nbsp;</th>
            <th noWrap>&nbsp;功能&nbsp;</th>
            <th noWrap>操作数</th>
            <th noWrap>操作码</th>
            <th noWrap>模数</th>
            <th noWrap>寄存器1</th>
            <th noWrap>寄存器2<br>或内存</th>
            <th noWrap>位移量</th>
            <th noWrap>立即数</th>
            <th noWrap>符号</th>
            <th noWrap>方向</th>
            <th noWrap>芯片<br>型号</th>
            <th noWrap>16位</th>
            <th noWrap>32位</th>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄16&lt;=寄16</td>
            <td>$0F40</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄32&lt;=寄32</td>
            <td>$0F40</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄16&lt;=[寄16]</td>
            <td>$0F40</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄16&lt;=[寄32]</td>
            <td>$0F40</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄32&lt;=[寄16]</td>
            <td>$0F40</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄32&lt;=[寄32]</td>
            <td>$0F40</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄16&lt;=[寄16+位移8]</td>
            <td>$0F40</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄16&lt;=[寄32+位移8]</td>
            <td>$0F40</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄32&lt;=[寄16+位移8]</td>
            <td>$0F40</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄32&lt;=[寄32+位移8]</td>
            <td>$0F40</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄16&lt;=[寄16+位移16]</td>
            <td>$0F40</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄16&lt;=[寄32+位移32]</td>
            <td>$0F40</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄32&lt;=[寄16+位移16]</td>
            <td>$0F40</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVO</td>
            <td>溢出传送</td>
            <td>寄32&lt;=[寄32+位移32]</td>
            <td>$0F40</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td noWrap>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄16&lt;=寄16</td>
            <td>$0F41</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄32&lt;=寄32</td>
            <td>$0F41</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄16&lt;=[寄16]</td>
            <td>$0F41</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄16&lt;=[寄32]</td>
            <td>$0F41</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄32&lt;=[寄16]</td>
            <td>$0F41</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄32&lt;=[寄32]</td>
            <td>$0F41</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄16&lt;=[寄16+位移8]</td>
            <td>$0F41</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄16&lt;=[寄32+位移8]</td>
            <td>$0F41</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄32&lt;=[寄16+位移8]</td>
            <td>$0F41</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄32&lt;=[寄32+位移8]</td>
            <td>$0F41</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄16&lt;=[寄16+位移16]</td>
            <td>$0F41</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄16&lt;=[寄32+位移32]</td>
            <td>$0F41</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄32&lt;=[寄16+位移16]</td>
            <td>$0F41</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNO</td>
            <td>不溢出传送</td>
            <td>寄32&lt;=[寄32+位移32]</td>
            <td>$0F41</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄16&lt;=寄16</td>
            <td>$0F42</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄32&lt;=寄32</td>
            <td>$0F42</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄16&lt;=[寄16]</td>
            <td>$0F42</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄16&lt;=[寄32]</td>
            <td>$0F42</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄32&lt;=[寄16]</td>
            <td>$0F42</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄32&lt;=[寄32]</td>
            <td>$0F42</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄16&lt;=[寄16+位移8]</td>
            <td>$0F42</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄16&lt;=[寄32+位移8]</td>
            <td>$0F42</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄32&lt;=[寄16+位移8]</td>
            <td>$0F42</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄32&lt;=[寄32+位移8]</td>
            <td>$0F42</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄16&lt;=[寄16+位移16]</td>
            <td>$0F42</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄16&lt;=[寄32+位移32]</td>
            <td>$0F42</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄32&lt;=[寄16+位移16]</td>
            <td>$0F42</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVB</td>
            <td>低于传送</td>
            <td>寄32&lt;=[寄32+位移32]</td>
            <td>$0F42</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄16&lt;=寄16</td>
            <td>$0F43</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄32&lt;=寄32</td>
            <td>$0F43</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄16&lt;=[寄16]</td>
            <td>$0F43</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄16&lt;=[寄32]</td>
            <td>$0F43</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄32&lt;=[寄16]</td>
            <td>$0F43</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄32&lt;=[寄32]</td>
            <td>$0F43</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄16&lt;=[寄16+位移8]</td>
            <td>$0F43</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄16&lt;=[寄32+位移8]</td>
            <td>$0F43</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄32&lt;=[寄16+位移8]</td>
            <td>$0F43</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄32&lt;=[寄32+位移8]</td>
            <td>$0F43</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄16&lt;=[寄16+位移16]</td>
            <td>$0F43</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄16&lt;=[寄32+位移32]</td>
            <td>$0F43</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄32&lt;=[寄16+位移16]</td>
            <td>$0F43</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNB</td>
            <td>不低于传送</td>
            <td>寄32&lt;=[寄32+位移32]</td>
            <td>$0F43</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄16&lt;=寄16</td>
            <td>$0F44</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄32&lt;=寄32</td>
            <td>$0F44</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄16&lt;=[寄16]</td>
            <td>$0F44</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄16&lt;=[寄32]</td>
            <td>$0F44</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄32&lt;=[寄16]</td>
            <td>$0F44</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄32&lt;=[寄32]</td>
            <td>$0F44</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄16&lt;=[寄16+位移8]</td>
            <td>$0F44</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄16&lt;=[寄32+位移8]</td>
            <td>$0F44</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄32&lt;=[寄16+位移8]</td>
            <td>$0F44</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄32&lt;=[寄32+位移8]</td>
            <td>$0F44</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄16&lt;=[寄16+位移16]</td>
            <td>$0F44</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄16&lt;=[寄32+位移32]</td>
            <td>$0F44</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄32&lt;=[寄16+位移16]</td>
            <td>$0F44</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVE</td>
            <td>相等传送</td>
            <td>寄32&lt;=[寄32+位移32]</td>
            <td>$0F44</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄16&lt;=寄16</td>
            <td>$0F45</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄32&lt;=寄32</td>
            <td>$0F45</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄16&lt;=[寄16]</td>
            <td>$0F45</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄16&lt;=[寄32]</td>
            <td>$0F45</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄32&lt;=[寄16]</td>
            <td>$0F45</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄32&lt;=[寄32]</td>
            <td>$0F45</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄16&lt;=[寄16+位移8]</td>
            <td>$0F45</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄16&lt;=[寄32+位移8]</td>
            <td>$0F45</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄32&lt;=[寄16+位移8]</td>
            <td>$0F45</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄32&lt;=[寄32+位移8]</td>
            <td>$0F45</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄16&lt;=[寄16+位移16]</td>
            <td>$0F45</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄16&lt;=[寄32+位移32]</td>
            <td>$0F45</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄32&lt;=[寄16+位移16]</td>
            <td>$0F45</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNE</td>
            <td>不等传送</td>
            <td>寄32&lt;=[寄32+位移32]</td>
            <td>$0F45</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄16&lt;=寄16</td>
            <td>$0F46</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄32&lt;=寄32</td>
            <td>$0F46</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄16&lt;=[寄16]</td>
            <td>$0F46</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄16&lt;=[寄32]</td>
            <td>$0F46</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄32&lt;=[寄16]</td>
            <td>$0F46</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄32&lt;=[寄32]</td>
            <td>$0F46</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄16&lt;=[寄16+位移8]</td>
            <td>$0F46</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄16&lt;=[寄32+位移8]</td>
            <td>$0F46</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄32&lt;=[寄16+位移8]</td>
            <td>$0F46</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄32&lt;=[寄32+位移8]</td>
            <td>$0F46</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄16&lt;=[寄16+位移16]</td>
            <td>$0F46</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄16&lt;=[寄32+位移32]</td>
            <td>$0F46</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td noWrap>CMOVNA</td>
            <td>不高于传送</td>
            <td>寄32&lt;=[寄16+位移16]</td>
            <td>$0F46</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVNA</td>
            <td noWrap>不高于传送</td>
            <td>寄32&lt;=[寄32+位移32]</td>
            <td>$0F46</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄16&lt;=寄16</td>
            <td>$0F47</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄32&lt;=寄32</td>
            <td>$0F47</td>
            <td>11</td>
            <td>1</td>
            <td>3</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄16&lt;=[寄16]</td>
            <td>$0F47</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄16&lt;=[寄32]</td>
            <td>$0F47</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄32&lt;=[寄16]</td>
            <td>$0F47</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄32&lt;=[寄32]</td>
            <td>$0F47</td>
            <td>00</td>
            <td>1</td>
            <td>5</td>
            <td>无</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄16&lt;=[寄16+位移8]</td>
            <td>$0F47</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>8086</td>
            <td>无</td>
            <td>$6667</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄16&lt;=[寄32+位移8]</td>
            <td>$0F47</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄32&lt;=[寄16+位移8]</td>
            <td>$0F47</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄32&lt;=[寄32+位移8]</td>
            <td>$0F47</td>
            <td>01</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$6667</td>
            <td>无</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄16&lt;=[寄16+位移16]</td>
            <td>$0F47</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td noWrap>8086</td>
            <td>无</td>
            <td noWrap>$6667</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄16&lt;=[寄32+位移32]</td>
            <td>$0F47</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$67</td>
            <td>$66</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td>寄32&lt;=[寄16+位移16]</td>
            <td>$0F47</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td>$66</td>
            <td>$67</td>
        </tr>
        <tr>
            <td>CMOVA</td>
            <td>高于传送</td>
            <td noWrap>寄32&lt;=[寄32+位移32]</td>
            <td>$0F47</td>
            <td>10</td>
            <td>1</td>
            <td>5</td>
            <td>9</td>
            <td>无</td>
            <td>无</td>
            <td>1</td>
            <td>386</td>
            <td noWrap>$6667</td>
            <td>无</td>
        </tr>
    </tbody>
</table>
<img src ="http://www.cppblog.com/tgh621/aggbug/60721.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/tgh621/" target="_blank">大海</a> 2008-09-02 17:59 <a href="http://www.cppblog.com/tgh621/archive/2008/09/02/60721.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>