mmx

mmx

MMX 是Multi Media eXtensions(多媒体扩展)的缩写,是第六代CPU晶片的重要特点。MMX技术是在CPU中加入了特地为影片信号(Video Signal),音频信号(Audio Signal)以及图像处理(Graphical Manipulation)而设计的57条指令,因此,MMX CPU极大地提高了电脑的多媒体(如身曆声、影片、三维动画等)处理功能。

  • 中文名称
    MMX
  • 外文名称
    MultiMedia eXtensions
  • 优    点
    极大提高了电脑的多媒体处理功能
  • 缺    点
    浪费大量的时间在资料的配对上

简介

      MMX技术是继Intel386(TM)处理器(将体系结构扩展至32位)之后对Intel体系结构的最重要的加强。这些指令集能够加速处理有关图形、影像、声音等的套用,MMX 加强了在多媒体处理功能的不足,它可以利用其内建的多媒体指令来模拟3D绘图的处理、 MPEG的压缩/解压缩。身曆声的音效等,只要是软体支持MMX CPU,即可以取代这些硬体的接口而达到多媒体的功效。

特徵

       MMX技术的基础是一项称为单指令、多资料(SIMD)的技术。它使得许多条信息可由一条单一指令来处理,这种平行操作使性能得以大幅度地提高。MMX技术被集成到Intel体系结构的处理器中,同时保持了与现有作业系统(如MS DOS,Windows3.1,Windows95,OS/2及UNIX)的充分兼容。除此之外,所有Intel体系结构的软体将能够在採用MMX技术的系统中运行。

       MMX的另一个特征是在计算结果超过实际处理能力的时候也能进行正常处理。若用传统的X86指令,计算结果一旦超出了CPU处理资料的限度,资料就要被截掉,而变成较小的数。MMX利用所谓的“饱和(Saturation)”功能,圆满的解决了这一问题。

        除了指令集中增加MMX指令(多媒体增强指令集)外,还将CPU晶片内的L1快取由原来的16KB增加到32KB(16K指令+16K资料),因此MMX CPU比普通CPU在运行含有MMX指令的程式时,处理多媒体的能力上提高了60%左右。目前CPU基本都具备MMX技术,除P55C和Pentium ⅡCPU还有K6、K6 3D、MII等。

缺点

        由于MMX的运算指令必须在资料配对整齐的时候才能使用,所以使用MMX指令要比普通的汇编指令多余许多分组配对的指令,如果运算不是特别的整齐的话,就要浪费大量的时间在资料的配对上,所以说MMX指令也不是万能的,也有其很大的缺陷。同时MMX指令在处理16位资料的时候才能发挥最大的作用,处理8位资料要有一点技巧。而处理32位资料,MMX指令几乎没有什麽加速能力。(考虑分组耗时)

基本指令集

拷贝指令

        movq:64位资料拷贝,如果记忆体8位对齐的话,是一个64位写,否则2个32位写。

        movd:32位资料拷贝,注意:如果从记忆体向MMX暂存器拷贝,MMX高32位清零!

分组指令

        分组指令是MMX特有的,所以对于它我们要特别的关注。分组指令基本上可以分为2类,一类是不带符号紧缩的,一类是带符号紧缩的。现在我们分别予以介绍:

        ①punpcklbw / punpcklwd / punpckldq (l表示低位分组,bw8位,wd16位,dq32位):它是简单的将两个MMX暂存器的低32位交错组合为一个64位资料。所以它是不能将长资料转换为短资料的。

        ②packuswb 将16位资料转换为无符号的8位资料。所以可以将两个MMX暂存器不交错的合为一个64位资料。

        ③packsswb/packssdw 将32位-》16位,16位-》8位,都是有符号的资料。

运算指令

        加法运算指令:paddb(w)(d):没有越界保护的加法,当越界的时候仅仅丢弃超出範围的高位比特,(b)(w)(d)分别为8,16,32位加法;paddsb(w):具有越界保护的有符号加法,当上溢的时候为0x7fff,下溢的时候为0x8000;paddusb(w):具有越界保护的无符号加法,当上溢的时候为0x7fff,下溢的时候为0x0。

        减法运算指令同上;add改为sub。

        乘法指令:pmullw / pmulhw 是4个16位资料的乘法,pmullw中是结果的低16位,pmulhw是结果的高16位。pmaddwd 乘加指令。

其他

        还有一个MMX的含意:(Matrix Math eXtensions)矩阵数学扩展。

        罗马数位中“MMX”表示“2010”。

        在红色警戒的游戏中“MMX”扩展名的档案表示能被红色警戒2和尤裏的复仇都能识别的地图档案。

相关词条

相关搜索

其它词条