Professional Documents
Culture Documents
World University of Bangladesh: Assignment
World University of Bangladesh: Assignment
Assignment
On
Submitted to:
Shamsun Nahar
Lecture
World University of Bangladesh
Submitted by:
Assembly language is used because it can be executed on processors which don’t have any high-
level language compilers. To make it clearer, devices such as mobiles phones, dish washers,
washing machines, water heaters, table fans and such are often required computer instructions in
assembly language because the code is a standalone item that can be executed without the
overheads of a full computer system. This may actually decrease the cost of a business in order to
operate an embedded system that does not need a yearly change or update in the software.
• Assembly language is typically used in a system's boot code, the low-level code that
initializes and tests the system hardware prior to booting the operating system and is often
stored in ROM.
• Assembly language is often used for low-level code, for instance for operating system
kernels, which cannot rely on the availability of pre-existing system calls and must indeed
implement them for the particular processor architecture on which the system will be
running.
• Some compilers translate high-level languages into assembly first before fully compiling,
allowing the assembly code to be viewed for debugging and optimization purposes.
• Some compilers for relatively low-level languages, such as Pascal or C, allow the
programmer to embed assembly language directly in the source code. Programs using such
facilities can then construct abstractions using different assembly language on each
hardware platform.
• Assembly language is useful in reverse engineering. Many programs are distributed only
in machine code form which is straightforward to translate into assembly language by a
disassembler, but more difficult to translate into a higher-level language through a
decompiler.
• Assembly language is used to enhance speed of execution, especially in early personal
computers with limited processing power and RAM.
• Assemblers can be used to generate blocks of data, with no high-level language overhead,
from formatted and commented source code, to be used by other code.
• Assembly language is often used to crack program/software to bypass getting a
license/paying money. So, most software companies use assembly language in order to
protect them from cracking.
• Viruses are written in assembly for stealth and more effectiveness. So, some components
of anti-viruses are also written in Assembly.
• An expert assembly language programmer can often produce code that is much smaller and
much faster than a high-level language programmer can.
• Some procedures need complete access to the hardware, something usually impossible in
high-level languages comparing to the assembly language.
• A compiler must either produce output used by an assembler or perform the assembly
process itself - and someone has to program the compiler.
• Assembly code protects software execution against different types of attacks.
• Assembly Language is used for direct hardware manipulation, access to specialized
processor instructions, or to address critical performance issues.
• The device service routine that is usually written in assembly language which controls the
operation of the floppy disk drive.