The data structures provided by high-level languages, such as arrays, records, strings, sets, lists, stacks, queues, and trees, are collections of elements of the primitive data types. There are no assembly language instructions for manipulating any of these high-level structures.
The operations associated with the structures are constructed from assembly language instructions applied to the primitive data types. The compiler for a high-level language defines the data structures and operations that can be performed in the language and translates these operations into assembly language.