1. A computer implemented method for shuffling packed data elements comprising: decoding a single instruction specifying a single field of per-lane control bits, a source operand and a destination operand, said source and destination operands having corresponding pluralities of multi-bit lanes, each multi-bit lane being divided into corresponding pluralities of portions, each of said corresponding portions including a substantially similar plurality of data elements; responsive to decoding the single instruction and the single field of per-lane control bits, selecting a substantially similar set of data elements from any data elements in the corresponding portions of every multi-bit lane of the source operand; and copying each data element of the selected set of data elements to any specified data fields located in the corresponding portions of every multi-bit lane of the destination operand.