Programming with an assembler-microprocessor, Assembly Language

Assignment Help:

Programming with an assembler

The procedure of hand-coding 8086 programs is somewhat tiresome; hence generally a programmer may find it hard to get a correct listing of the machine codes. Additionally the procedure of it is time consuming. This programming procedure is called as machine level programming. The clear disadvantages of machine level programming are as given:

1. The process is complex and time consuming.

2. The chances of error being committed are more at the machine level in hand-coding and entering the program byte-by-byte into the system.

3. Debugging a program at the machine level is harder.

4. The programs are not understood by everybody and the results are not stored in a user-friendly form.

A program which is called 'Assembler' is used to convert the mnemonics of instructions along with the data into their corresponding object code modules. Further these object code modules may be converted in executable code by using the linker and loader programs. This type of programming is known assembly level programming. In assembly language programming, directly the mnemonics are used in the user programs. Assembler performs the task of coding.

The Advantages of assembly language over the machine language are as given:

1.) The programming in assembly language is not as complicated as in machine language because the function of coding is performed by an assembler.

2.) The chances of being error are less because the mnemonics are used instead of numerical opcodes. It is not hard to enter an assembly language program.

3.) As the mnemonics are purpose-suggestive the debugging is simpler.

4.) The address and constants locations may be labeled with suggestive labels hence imparting friendlier interface to user. Advanced assemblers provide services like, lists, marmoset. Making the task of programming is much easier.

5.) The memory control is in the hands of users as in machine language.

6.) The results may be stored in a more user-friendly form.

7.) The flexibility of programming is more in assembly language programming as compared to machine language because of the advanced facilities available with the modern assemblers.

Basically, the assembler is a program that converts an assembly input file also known as source file to an object file that further can be converted into machine codes or an executable file by using a linker. The fresh versions of the assembler are designed with many facilities like numerical processor assemblers, macro assemblers, and functions procedures and so on.

As this is concerned, we will consider the assembly language programming by using Microsoft Macro Assembler (MASM). There are a number of assemblers available like TASM, MASM and DOS assembler. MASM is one of the famous assemblers which are used along with a LINK program to structure the codes generated by MASM in the form of an executable file. The MASM reads source program as its input and provides an object file. The LINK accepts the object file generated by MASM as input and generates an EXE file.

Whereas writing a program, for an assembler, your first step shall be to use a text editor and type the program listing prepared by you. Then examine the listing typed by you for any syntax error and typing mistake. Before you quit the editor program, don't forget to save it. Once you save the text file with any name (permissible on operating system), you are free to begin the assembly process. A number of text editors exist in the market, for example Turbo C [TC], Norton's editor [NE], EDLIN, etc. Throughout from this book, the NE is used. Any other free form editor can be used for a better user-friendly environment. Therefore for writing a program in assembly language, one will required NE editor, MASM assembler, and linker and DEBUG usefulness of DOS. In the following section, the procedures of opening a file for a program, assembling, executing and checking its result are explained for beginners.

 


Related Discussions:- Programming with an assembler-microprocessor

Div-idiv-arithmetic instruction-microprocessor, DIV: Unsigned Division:- T...

DIV: Unsigned Division:- This instruction performs unsigned division operation. It divides an unsigned word or double word by a 16-bit or 8-bit operand. The dividend might be in t

Interrupt system based on 8259 a-microprocessor, Interrupt System Based on ...

Interrupt System Based on Single 8259 A The 8259A is contained in a 28-pin dual-in-line package that need only a + 5-V supply voltage.  Its organization is shown in given figur

Program on fibonacci series , Write a program to calculate the first 20 num...

Write a program to calculate the first 20 numbers of Fibonacci series. Use the stack (memory) to store the calculated series. Your debugger output should look like the following sc

Convert from C to 8086 assembly language, Trying to convert small programs ...

Trying to convert small programs from C to 8086 assembly language using emu 8086 emulator. I converted to low level C, but struggling with converting to the Assembly language.

Input output interface-microprocessor, I/O interface I/O  devices such ...

I/O interface I/O  devices such as displays and keyboards  establish  communication of computer with outside world. Devices may be interfaced in 2 ways Memory mapped I/O and I/

Movsw/movsb-string manipulation instruction-microprocessor, MOVSW/MOVSB : ...

MOVSW/MOVSB : Move String Word or String Byte: Imagine a string of bytes, stored in a set  of consecutive memory locations is to be moved to another set of  the destination locati

#title.Statement of the Problem., Can you write for me an essay, topic is: ...

Can you write for me an essay, topic is: Statement of the Problem. Length: 270 words. I will send you the Formula for the Problem Statement on your Email attachment. Do you agree?

Cisc characteristics-microprocessor, CISC Characteristics : The design...

CISC Characteristics : The design of an instruction  set for a computer  might take into consideration  not only machine language constraints,  but  also  the  requirements  i

Program for dispaying lcd characters, #include"lcd.asm"       ; assembly fi...

#include"lcd.asm"       ; assembly file is included for displaying lcd characters Main: PORTA EQU 0xF80  ; PORTS PORTB EQU 0xF81 PORTC EQU 0xF82 PORTD EQU 0xF83 R

Dma-how dma works-microprocessor, DMA DMA stands for Direct Memory ...

DMA DMA stands for Direct Memory Access It is uses same Address/Data lines on ISA bus It controls the ISA bus instead of the processor ("bus master") Floppy

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd