 Welcome to the session on Assembler Directives of 8086 microprocessor. At the end of the session, students will be able to develop programming skills in assembly language. Let us see first what is assembly language. Assembly language is a low level programming language and is written for programming for computers, microprocessors, microcontrollers and other ICs. Now if you are looking for assembler directive, it is a statement to give direction to the assembler to perform some task of the assembly process and it controls the organization of the program. So it provides necessary information to the assembler to understand assembly language programming and generate necessary machine code indicates how an operand or a section of the program is to be processed by the assembler. And it consists of two types of statements that is assembly programming consists of two types of statements instructions and directives. Directives are translated to the machine code by the assembler but directives are not translated to the machine codes. Here some of the important assembler directives are given. So out of that data declaration directives under that some simple directives are there like DB, DW, DD, DQ, DT, then assume, N directive, EQ directive, PROC, segment, group, include, external public name, label, etc. We have some directives. So let us check briefly one by one. So in data declaration the very first one DB, the DB directive is used to declare a byte. A byte is made up of 8 bits. For example, if there is a variable or a declaration price which is of data type DB and the value for that price is 49 and 98 and 29. So here we declare array of 3 bytes named price and initialize them with specified value. The next DW, the DW directive is used to declare a word type variable. So a word occupies of 16 bits or 2 bytes. In the example, if you are looking words is a type of data is DW and the value for this is 1, 2, 3, 4, 3, 4, 5, 6. So here we declared an array of 2 words and initialize them with the specified value. The next is DD. The DD directive is used to declare a double word. So double word is made up with 32 bits or 2 words or 4 bytes. And if you are looking the example array DD and the value is 2, 5, 6, 2, 9, 2, 6, 1. So this will define a double word named array and initialize a double word with the specific value when the program is loaded into memory to be run. So next one is DQ that is defining the cod word. The directive is used to tell the assembler to declare a variable 4 words in length or to reserve 4 words storage in memory. So here we have an example big number DQ which is a very big number that is nothing but 4 words storage. The next is DT that is defining 10 bytes. So the DD directive is used to tell the assembler to declare a variable which is of 10 bytes in length or to reserve 10 bytes of storage in memory. Now we will move for the next directive assume. The assume directive is used to tell the assembler that the name of the logical segment should be used for a specified segment and the 8086 was directly with only 4 visible segments and they are like code segment, data segment, stack segment and extra segment. And in example if you are looking assume cs colon code. So this tells the assembler that the logical segment named code contains the instruction statements for the program and should be treated as a code segment. So here if you are looking the next directive EQU, this EQU directive is used to give a name to some value or to a symbol. Each time the assembler finds the name in the program it will replace the name with the value or symbol you given to that name. For example, if you are looking factor EQU 03H. So here the advantage of using EQU is used many number of times in a program and you want to change the value all you had to do so to change the EQU statement at beginning and it will changes the rest of all. So the end directive, end is end program, end p is end procedure and end s is a end of segment. So end is nothing but it signifies the end of the program model and the assembler will ignore any statement after an end directive. But about the end p, end p is specifically used for ending the procedure indicates the end of a procedure and end s it indicates the end of logical segment. Now we are moving what is PROC or the procedure directive. The PROC directive is used to identify the start of the procedure and the term near or far is used to specify the type of the procedure. For example, if you are declaring smart PROC far this identifies that the start of procedure named as smart and instruct the assembler that the procedure is far. So you have a question please think and write the answer. Question is the directive that marks the end of an assembly language program is you have the options end s and end s and end none of the mention. So please take a pause of your video and write your answer. So your answer is B and the answer is end. So the directive end is used to denote the completion of the program. Now the next our directives are group include. Group is nothing but it can be used to tell the assembler to group the logical segments named after the directive into one logical group. And the examples are like a small system group code data stack segment. And the next one is include it is used to tell the assembler to insert a block of source code from the named file into the current source module. And this shortens the source module and an alternative is used of editor block command to cop the file into the current source module. So the next directive extom it is used to tell the assembler that name or label following the directives are in some other assembly module. For example if you call a procedure which is a program module assembled at a different times from that which contains the call instruction. And you must tell the assembler that the procedure is external for the assembler. So which will put information in the object code file so that the linker can connect the two module together. The same way there is a one more directive public the public directive is used to instruct the assembler that a specified name or label will be accessed from other module. So the next our name is used to give a specific name to each assembly module when program consists of several modules are written. And label it is an assembler assemblies a section of a data declaration or a instruction statements. So, directives are also called a pseudo operation that controls the assembly process and they indicate how an operand or section of a program to be processed by the assembler. So these are the my references thank you.