 Content-addressable memory is a form of direct hardware-level support for associative arrays.Associative arrays have many applications including such fundamental programming patterns as memoization and the decorator pattern.The name does not come from the associative property known in mathematics.