ASSUME: Assume Logical Segment Name:-
The ASSUME directive which is used to inform the assembler, the specified names of the logical segments to be consider for different segments which is used in the program. In the assembly language program, each of thesegment is given a particular name. For instance, the code segment can be given the name CODE; data segment can be allotted the name DATA etc. The statement ASSUME CS: CODE directs the assembler that the machine codes are available in a segment named CODE, and so the CS register is to be loaded having the address (segment) allotted by operating system for the label CODE, while loading. IN the same manner, ASSUME DS : DATA denote to the assembler that the data items related to the program, are available in a logical segment named DATA, and the DS register can be initialised by the segment address value decided by the operating system for the data segment, whereas loading. It then assumed the segment DATA as a default data segment for each memory operation, that is related to the data and the segment CODE as a source segment for the machine codes of the program. The ASSUME statement is necessary at the starting of each assembly language program, without which a message 'CODE/DATA EMITTED WITHOUT SEGMENT' may be issued by an assembler.