Pascal Memory Management.

Can someone tell me what the rules are in pascal for assignment of
objects? specifically two questions:

Given: An array of objects of the new ansi string in delphi II.

1) What does an asssignment of the one array to another do
at the memory level?

2) What does an asssignment of a single element of on array to another
do at the memory level?

 I am interested in understanding if assigning one element to another
stomps over the previous memory that was in the element and thus
leaves that memory unfreeable. Does this happen when entire arrays
are assign to other entire arrays?

 Thanks,
 -Tom-