<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.jackslab.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-cn">
		<id>http://wiki.jackslab.org/index.php?action=history&amp;feed=atom&amp;title=IA32_SSE3_%E7%B2%BE%E8%A6%81</id>
		<title>IA32 SSE3 精要 - 版本历史</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.jackslab.org/index.php?action=history&amp;feed=atom&amp;title=IA32_SSE3_%E7%B2%BE%E8%A6%81"/>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=IA32_SSE3_%E7%B2%BE%E8%A6%81&amp;action=history"/>
		<updated>2026-09-11T05:48:02Z</updated>
		<subtitle>本wiki的该页面的版本历史</subtitle>
		<generator>MediaWiki 1.19.2</generator>

	<entry>
		<id>http://wiki.jackslab.org/index.php?title=IA32_SSE3_%E7%B2%BE%E8%A6%81&amp;diff=3108&amp;oldid=prev</id>
		<title>Comcat：/* 指令列表 */</title>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=IA32_SSE3_%E7%B2%BE%E8%A6%81&amp;diff=3108&amp;oldid=prev"/>
				<updated>2014-11-11T04:34:49Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;指令列表&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;←上一版本&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;2014年11月11日 (二) 04:34的版本&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第71行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第71行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; architectures for loads that cross cacheline boundaries. It can be helpful for video compression tasks.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; architectures for loads that cross cacheline boundaries. It can be helpful for video compression tasks.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * MOVDDUP, MOVSHDUP, MOVSLDUP - These are also used for complex numbers, and can be helpful for wave calculation like sound.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * MOVDDUP, MOVSHDUP, MOVSLDUP - These are also used for complex numbers, and can be helpful for wave calculation like&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;/ins&gt;sound.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * FISTTP - Like the older x87 FISTP instruction, but ignores the floating point control register's rounding mode&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * FISTTP - Like the older x87 FISTP instruction, but ignores the floating point control register's rounding mode&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Comcat</name></author>	</entry>

	<entry>
		<id>http://wiki.jackslab.org/index.php?title=IA32_SSE3_%E7%B2%BE%E8%A6%81&amp;diff=3107&amp;oldid=prev</id>
		<title>Comcat：/* 指令列表 */</title>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=IA32_SSE3_%E7%B2%BE%E8%A6%81&amp;diff=3107&amp;oldid=prev"/>
				<updated>2014-11-11T04:34:33Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;指令列表&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;←上一版本&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;2014年11月11日 (二) 04:34的版本&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第68行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第68行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160;  o Output: { A0 - A1, A2 - A3, B0 - B1, B2 - B3 }&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160;  o Output: { A0 - A1, A2 - A3, B0 - B1, B2 - B3 }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * LDDQU - This is an alternative misaligned integer vector load that has better performance on NetBurst architectures for loads that cross cacheline boundaries. It can be helpful for video compression tasks.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * LDDQU - This is an alternative misaligned integer vector load that has better performance on NetBurst&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;/ins&gt;architectures for loads that cross cacheline boundaries. It can be helpful for video compression tasks.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * MOVDDUP, MOVSHDUP, MOVSLDUP - These are also used for complex numbers, and can be helpful for wave calculation like sound.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * MOVDDUP, MOVSHDUP, MOVSLDUP - These are also used for complex numbers, and can be helpful for wave calculation like sound.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * FISTTP - Like the older x87 FISTP instruction, but ignores the floating point control register's rounding mode settings and uses the &amp;quot;chop&amp;quot; (truncate) mode instead. Allows omission of the expensive loading and re-loading of the control register in languages such as C where float-to-int conversion requires truncate behaviour by standard.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; * FISTTP - Like the older x87 FISTP instruction, but ignores the floating point control register's rounding mode&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;  &lt;/ins&gt;settings and uses the &amp;quot;chop&amp;quot; (truncate) mode instead. Allows omission of the expensive loading and &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;  &lt;/ins&gt;re-loading of the control register in languages such as C where float-to-int conversion requires truncate&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;  &lt;/ins&gt;behaviour by standard.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Comcat</name></author>	</entry>

	<entry>
		<id>http://wiki.jackslab.org/index.php?title=IA32_SSE3_%E7%B2%BE%E8%A6%81&amp;diff=3106&amp;oldid=prev</id>
		<title>Comcat：以“== 简介 ==  SSE3 系 Intel Streaming SIMD Extensions 的第3次扩展，相较于 SSE2，Intel 新加入了 13 条指令。其最早于 2004 年在 Pentium 4 Presc...”为内容创建页面</title>
		<link rel="alternate" type="text/html" href="http://wiki.jackslab.org/index.php?title=IA32_SSE3_%E7%B2%BE%E8%A6%81&amp;diff=3106&amp;oldid=prev"/>
				<updated>2014-11-11T04:33:10Z</updated>
		
		<summary type="html">&lt;p&gt;以“== 简介 ==  SSE3 系 Intel Streaming SIMD Extensions 的第3次扩展，相较于 SSE2，Intel 新加入了 13 条指令。其最早于 2004 年在 Pentium 4 Presc...”为内容创建页面&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== 简介 ==&lt;br /&gt;
&lt;br /&gt;
SSE3 系 Intel Streaming SIMD Extensions 的第3次扩展，相较于 SSE2，Intel 新加入了 13 条指令。其最早于 2004 年在 Pentium 4 Prescott 中引入，后续 IA32 的 CPU 都支持之&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 支持 SSE3 的 CPU ==&lt;br /&gt;
&lt;br /&gt;
* AMD:&lt;br /&gt;
    o Athlon 64 (since Venice Stepping E3 and San Diego Stepping E4)&lt;br /&gt;
    o Athlon 64 X2&lt;br /&gt;
    o Athlon 64 FX (since San Diego Stepping E4)&lt;br /&gt;
    o Opteron (since Stepping E4)&lt;br /&gt;
    o Sempron (since Palermo Stepping E3)&lt;br /&gt;
    o Turion 64&lt;br /&gt;
    o Turion 64 X2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Intel:&lt;br /&gt;
    o Celeron D&lt;br /&gt;
    o Pentium 4 (since Prescott)&lt;br /&gt;
    o Pentium D&lt;br /&gt;
    o Intel Core Duo&lt;br /&gt;
    o Intel Core 2 Duo&lt;br /&gt;
    o Intel Core 2 Extreme&lt;br /&gt;
    o Xeon (since Nocona)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* VIA/Centaur:&lt;br /&gt;
    o C7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Transmeta&lt;br /&gt;
    o Efficeon TM88xx (NOT Model Numbers TM86xx)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 指令列表 ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=bash&amp;gt;&lt;br /&gt;
Arithmetic&lt;br /&gt;
&lt;br /&gt;
    * ADDSUBPD - ( Add-Subtract-Packed-Double )&lt;br /&gt;
       o Input - { A0, A1 }, { B0, B1 }&lt;br /&gt;
       o Output - { A0 - B0, A1 + B1 }&lt;br /&gt;
&lt;br /&gt;
    * ADDSUBPS - ( Add-Subtract-Packed-Single )&lt;br /&gt;
       o Input: { A0, A1, A2, A3 }, { B0, B1, B2, B3 }&lt;br /&gt;
       o Output: { A0 - B0, A1 + B1, A2 - B2, A3 + B3 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
AOS ( Array Of Structures )&lt;br /&gt;
&lt;br /&gt;
    * HADDPD - ( Horizontal-Add-Packed-Double )&lt;br /&gt;
       o Input: { A0, A1 }, { B0, B1 }&lt;br /&gt;
       o Output: { A0 + A1, B0 + B1 }&lt;br /&gt;
&lt;br /&gt;
    * HADDPS ( Horizontal-Add-Packed-Single )&lt;br /&gt;
       o Input: { A0, A1, A2, A3 }, { B0, B1, B2, B3 }&lt;br /&gt;
       o Output: { A0 + A1, A2 + A3, B0 + B1, B2 + B3 }&lt;br /&gt;
&lt;br /&gt;
    * HSUBPD - ( Horizontal-Subtract-Packed-Double )&lt;br /&gt;
       o Input: { A0, A1 }, { B0, B1 }&lt;br /&gt;
       o Output: { A0 - A1, B0 - B1 }&lt;br /&gt;
&lt;br /&gt;
    * HSUBPS - ( Horizontal-Subtract-Packed-Single )&lt;br /&gt;
       o Input: { A0, A1, A2, A3 }, { B0, B1, B2, B3 }&lt;br /&gt;
       o Output: { A0 - A1, A2 - A3, B0 - B1, B2 - B3 }&lt;br /&gt;
&lt;br /&gt;
    * LDDQU - This is an alternative misaligned integer vector load that has better performance on NetBurst architectures for loads that cross cacheline boundaries. It can be helpful for video compression tasks.&lt;br /&gt;
&lt;br /&gt;
    * MOVDDUP, MOVSHDUP, MOVSLDUP - These are also used for complex numbers, and can be helpful for wave calculation like sound.&lt;br /&gt;
&lt;br /&gt;
    * FISTTP - Like the older x87 FISTP instruction, but ignores the floating point control register's rounding mode settings and uses the &amp;quot;chop&amp;quot; (truncate) mode instead. Allows omission of the expensive loading and re-loading of the control register in languages such as C where float-to-int conversion requires truncate behaviour by standard.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Intel Instructions&lt;br /&gt;
&lt;br /&gt;
    * MONITOR, MWAIT - These optimize multi-threaded applications, giving processors with Hyper-Threading better performance.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Comcat</name></author>	</entry>

	</feed>