很抱歉,此 PDF 仅供下载

英特尔® 64 位和 IA-32 架构开发人员手册:卷 2B

注:英特尔 64 位和 IA-32 架构软件开发人员手册分为 5 卷:基本架构,订购号 253665;指令集参考 A-M,订购号 253666;指令集参考 N-Z,订购号 253667;系统编程指南,第一部分,订购号 253668;系统编程指南,第二部分,订购号 253669。评估设计需求时请参考全部 5 卷。

PCMPESTRI / PCMPESTRM / PCMPISTRI / PCMPISTRM 的 IMM8 控制字节操作

本节中介绍的符号将在 PCMPESTRI、PCMPESTRM、PCMPISTRI、PCMPISTRM 的参考页面中引用。直接控制字节操作为上述 4 个 SSE4.2字符串文本处理指令所共有。本节将介绍这些共同操作。

4.1.1 一般说明

PCMPESTRI、PCMPESTRM、PCMPISTRI、PCMPISTRM 的操作,由各自操作码的组合以及对作为指令编码一部分的直接控制字节的解译来定义。

操作码控制输入字节或词语的相互关系(决定输入是否打断了字符串或字符串长度或者长度是否明确表达)以及目标输出(索引或掩码)。PCMPESTRM/PCMPESTRI/PCMPISTRM/PCMPISTRI 的 IMM8 控制字节,对大量可编程控制的指令功能进行编码。有些功能单独对应每条指令,而另一些功能则在部分几个或者全部 4 个指令间共用。本节介绍了共用于 4 条指令的功能。

将算术标记(ZF、CF、SF、OF、AF、PF)设置为这些指令的结果。然而,这些标记的含义已远远超过其原意,其目的是为两项输入间的关系增加更多额外信息。

PCMPxSTRx 指令在所有可能的字节或词语间执行算术比较,其中之一来自每个压缩输入的源操作数。然而,这些比较的布尔结果经过汇总,才能产生成为有意义的结果。IMM8 控制字节能够影响各个输入元素的解译,并且还能控制所使用的算术比较与特定汇总机制。

相关视频