SSSE3

SSSE3是Intel命名的SSE3指令集的擴充，不使用新的號碼是因為SSSE3比較像是加強版的SSE3，以至於推出SSSE3之前，SSE4的定義容易被混淆。在公開Intel的Core微架構的時候，SSSE3出現在Xeon 5100與Intel Core 2行動版與桌上型處理器上。

SSSE3包含了16個新的不同於SSE3的指令。每一個都能夠運作於64位元的MMX暫存器或是128位元XMM暫存器之中。因此，有些Intel的文件表示有32個新指令。之前的SIMD指令由舊排到新依序是MMX、3DNow!（AMD開發的）、SSE、3DNow! Professional、SSE2與SSE3。

 支援SSSE3指令集的處理器 

Intel：
Xeon 5100系列
Xeon 5300系列
Xeon 3000系列
Core 2
Core i3
Core i5
Core i7
Core i9
Pentium Dual-Core
Celeron 4xx的Conroe-L
Celeron Dual Core系列
Celeron M 500系列
Atom
AMD
AMD Bulldozer
AMD Bobcat
AMD Ryzen
VIA：
Nano

 新增的指令 
在以下的列表中，satsw(X)（飽和爲有符號字（saturate to signed word）的簡寫），任取有號整數X，如果X小於-32768時就代表-32768，X大於32767時就代表32767 ，其餘數值不變。在一般的Intel架構上，字節（byte）表示8位元，字（word）是16位元，而雙字（dword）是32位元；暫存器表示MMX或是XMM向量暫存器。

 PSIGNB, PSIGNW, PSIGND 包裹式有符號整型取反 如果另一個暫存器中的整形爲負，那麼將目標暫存器中的數取反。 PABSB, PABSW, PABSD 包裹式絕對值 將源暫存器中的數取絕對值並放到目標暫存器中。 PALIGNR 包裹式右移 將兩個暫存器的值串起來，然後根據編碼到指令中的立即數將暫存器中的值右移。 PSHUFB 包裹式將任意字節重新排布到目的暫存器 如果源暫存器高位被置1，就把目的暫存器賦值爲0,否則根據源操作數的低4位選擇目的操作數，將其拷貝到目的操作數的相應位置。 PMULHRSW  包裹式捨入相乘 將兩個暫存器中的16位word處理成-1到1間的15位定點數(例如0x4000被處理成0.5，0xa000 處理成−0.75), 並且將他們捨入相乘。 PMADDUBSW  相乘並相加包裹式整型然後飽和 將兩個暫存器中的8位整型相乘並相加，然後飽和成有符號整型。（也就是 [a0 a1 a2 …] pmaddubsw [b0 b1 b2 …] = [satsw(a0b0+a1b1) satsw(a2b2+a3b3) …]） PHSUBW, PHSUBD  包裹式水平相減 將兩個暫存器 A = [a0 a1 a2 …] 和 B = [b0 b1 b2 …] 相減輸出 [a0−a1 a2−a3 … b0−b1 b2−b3 …] PHSUBSW  包裹式水平相減並且飽和爲有符號字 類似PHSUBW, 但是輸出的是[satsw(a0−a1) satsw(a2−a3) … satsw(b0−b1) satsw(b2−b3) …] PHADDW, PHADDD 包裹式有符號相加 將兩個暫存器 A = [a0 a1 a2 …] 和 B = [b0 b1 b2 …] 相加然後輸出 [a0+a1 a2+a3 … b0+b1 b2+b3 …] PHADDSW  包裹式水平相加並且飽和爲有符號字 類似PHADDW, 但是輸出的是[satsw(a0+a1) satsw(a2+a3) … satsw(b0+b1) satsw(b2+b3) …]

 參見 
SSE
SSE2
SSE3
SSE4
SSE4A
SSE5
AVX
FMA
SIMD
3DNow! Professional
Intel Core 2

 外部連結 
移動型Core 2規格書
Intel白皮書，敘述存在的SSSE3與新的SSE4指令集
指令集的文件，列出SSSE3指令集的功能

Category:X86架構