1. A method for processing multiple arbitrary sized data elements in a register, comprising: creating a mask register that defines a set of arbitrary sized segments for a register; providing a segmented data register containing a plurality of arbitrary sized data elements arranged in segments in accordance with the mask register; and simultaneously operating on each of the of the data elements in the segmented data register in response to a machine instruction.