entirely correctlybut it is close enough for practical purposesand it is the responsibility of the programmer to ensure that meaningless values never occur during the execution of program the following short excerpt from program shows the use of record variables its purpose is to count the number of persons represented by the array variable family that are both female and born after the year var countintegerfamilyarray of personcount : for : to - do if ~family[imale (family[ibirthdate year then inc(countend end the record structure and the array structure have the common property that both are random-access structures the record is more general in the sense that there is no requirement that all constituent types must be identical in turnthe array offers greater flexibility by allowing its component selectors to be computable values (expressions)whereas the selectors of record components are field identifiers declared in the record type definition representation of arraysrecordsand sets the essence of the use of abstractions in programming is that program may be conceivedunderstoodand verified on the basis of the laws governing the abstractionsand that it is not necessary to have further insight and knowledge about the ways in which the abstractions are implemented and represented in particular computer neverthelessit is essential for professional programmer to have an understanding of widely used techniques for representing the basic concepts of programming abstractionssuch as the fundamental data structures it is helpful insofar as it might enable the programmer to make sensible decisions about program and data design in the light not only of the abstract properties of structuresbut also of their realizations on actual computerstaking into account computer' particular capabilities and limitations the problem of data representation is that of mapping the abstract structure onto computer store computer stores are -in first approximation -arrays of individual storage cells called bytes they are understood to be groups of bits the indices of the bytes are called addresses var storearray storesize of byte the basic types are represented by small number of bytestypically or computers are designed to transfer internally such small numbers (possibly of contiguous bytes concurrently"in parallelthe unit transferable concurrently is called word representation of arrays representation of an array structure is mapping of the (abstractarray with components of type onto the store which is an array with components of type byte the array should be mapped in such way that the computation of addresses of array components is as simple (and therefore as efficientas possible the address of the -th array component is computed by the linear mapping function *swhere is the address of the first componentand is the number of words that component occupies assuming that the word is the smallest individually transferable unit of storeit is evidently highly desirable that be whole numberthe simplest case being if is not whole number (and this is the normal