Nothing Special   »   [go: up one dir, main page]

Module 5 - Week 7 and 8 - Platform Technologies PDF

Download as pdf or txt
Download as pdf or txt
You are on page 1of 46

Elective 1 – Platform Technologies

1. Title of the Module


Chapter 6: Computer Software, Programming Languages, and Program
Development
2. Introduction
In this module, the learners will learn about computer software such as its
classifications, differences and their uses in our day-to-day tasks. It explains how software
can be useful among various types of users from technical support to a typical end-user.
Programs or software are also introduced and discussed in this module, it will give an
information to the leaners about how programs work and how they are developed by
programmers through carefully following the software/program development life cycle
(SDLC). This module also introduces the debug program its role and use in the computer
system so that students will better understand how the computer hardware and its
programs work together to perform specified tasks.

3. Learning Outcome
In this module, learners are expected to:

• Define and classify software


• Explain the software development life cycle.
• Discuss programming concepts.
• Define and use the debug program.
• Enumerate and apply the different debug commands.
• Solve and perform simple exercises using debug program.

ISUE–CCSICT –IM-092 - Instruction Material Page 1


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
4. Learning Content
Topics for Module 5 - Computer Software, Programming Languages, and Program
Development
Topic 1: Classification of Software
The term 'software' refers to the set of electronic program instructions or data a
computer processor reads in order to perform a task or operation. In contrast, the term
'hardware' refers to the physical components that you can see and touch, such as the
computer hard drive, mouse, and keyboard.
Software, instructions that tell a computer what to do. Software comprises the
entire set of programs, procedures, and routines associated with the operation of a
computer system. The term was coined to differentiate these instructions
from hardware—i.e., the physical components of a computer system. A set of instructions
that directs a computer’s hardware to perform a task is called a program, or software
program.
The two main types of software are system software and application software.
System software controls a computer’s internal functioning, chiefly through an operating
system, and also controls such peripherals as monitors, printers, and storage
devices. Application software, by contrast, directs the computer to execute commands
given by the user and may be said to include any program that processes data for a user.
Application software thus includes word processors, spreadsheets, database
management, inventory and payroll programs, and many other “applications.” A third
software category is that of network software, which coordinates communication between
the computers linked in a network.
Software is typically stored on an external long-term memory device, such as a
hard drive or magnetic diskette. When the program is in use, the computer reads it from
the storage device and temporarily places the instructions in random access memory
(RAM). The process of storing and then performing the instructions is called “running,” or
“executing,” a program. By contrast, software programs and procedures that are

ISUE–CCSICT –IM-092 - Instruction Material Page 2


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
permanently stored in a computer’s memory using a read-only (ROM) technology are
called firmware, or “hard software.”

Different Types of Software


Typically, there are two major classifications of software, namely System Software
and Application Software.

1. System Software
A system software aids the user and the hardware to function and interact
with each other. Basically, it is a software to manage computer hardware behavior
so as to provide basic functionalities that are required by the user. In simple words,
we can say that system software is an intermediator or a middle layer between the
user and the hardware. This computer software sanctions a platform or
environment for the other software to work in. This is the reason why system
software is very important in managing the entire computer system. When you first
turn on the computer, it is the system software that gets initialized and gets loaded
in the memory of the system. The system software runs in the background and is
not used by the end-users. This is the reason why system software is also known
as ‘low-level software’.

ISUE–CCSICT –IM-092 - Instruction Material Page 3


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Some common system software examples are:
Operating System: It is the most prominent example of System Software. It is a
collection of software that handles resources and provides general services for the other
applications that run over them. Although each Operating System is different, most of
them provide a Graphical User Interface through which a user can manage the files and
folders and perform other tasks. Every device, whether a desktop, laptop or mobile phone
requires an operating system to provide the basic functionality to it. As an OS essentially
determines how a user interacts with the system, therefore many users prefer to use one
specific OS for their device. There are various types of operating system such as real-
time, embedded, distributed, multiuser, single-user, internet, mobile, and many more. It
is important to consider the hardware specifications before choosing an operating system.
Some examples of Operating systems given below:
• Android
• CentOS
• iOS
• Linux
• Mac OS
• MS Windows
• Ubuntu
• Unix
Device Drivers: It is a type of software that controls particular hardware which is
attached to the system. Hardware devices that need a driver to connect to a system
include displays, sound cards, printers, mice and hard disks. Further, there are two types
of device drivers: Kernel Device Drivers and User Device Driver. Some examples of
device drivers are:
• BIOS Driver
• Display Drivers
• Motherboard Drivers
• Printer Drivers
ISUE–CCSICT –IM-092 - Instruction Material Page 4
ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
• ROM Drivers
• Sound card Driver
• USB Drivers
• VGA Drivers
• Virtual Device Drivers
Firmware: Firmware is the permanent software that is embedded into a read-only
memory. It is a set of instructions permanently stored on a hardware device. It provides
essential information regarding how the device interacts with other hardware. Firmware
can be considered as ‘semi-permanent’ as it remains permanent unless it is updated
using a firmware updater. Some examples of firmware are:
• BIOS
• Computer Peripherals
• Consumer Applications
• Embedded Systems
• UEFI
Programming Language Translators: These are mediator programs on which
software programs rely to translate high-level language code to simpler machine-level
code. Besides simplifying the code, the translators also do the following:
• Assign data storage
• Enlist source code as well as program details
• Offer diagnostic reports
• Rectify system errors during the runtime
• Examples of Programming Language Translators are Interpreter, Compiler
and Assemblers.
Utility: Utility software is designed to aid in analyzing, optimizing, configuring and
maintaining a computer system. It supports the computer infrastructure. This software
focuses on how an OS functions and then accordingly it decides its trajectory to smoothen
the functioning of the system. Softwares like antiviruses, disk cleanup & management

ISUE–CCSICT –IM-092 - Instruction Material Page 5


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
tools, compression tools, defragmenters, etc are all utility tools. Some examples of utility
tools are:
• Avast Antivirus
• Directory Opus
• McAfee Antivirus
• Piriform CCleaner
• Razer Cortex
• Windows File Explorer
• WinRAR
• WinZip

2. Application Software
Application Software, also known as end-user programs or productivity
programs are software that helps the user in completing tasks such as doing online
research, jotting down notes, setting an alarm, designing graphics, keeping an
account log, doing calculations or even playing games. They lie above the system
software. Unlike system software, they are used by the end-user and are specific
in their functionality or tasks and do the job that they are designed to do. For
example, a browser is an application designed specifically for browsing the internet
or MS Powerpoint is an application used specifically for making presentations.
Application Software or simply apps can also be referred to as non-essential
software as their requirement is highly subjective and their absence does not affect
the functioning of the system. All the apps that we see on our mobile phones are
also examples of Application Software. There is certain software that is exclusively
made for app development like Meteor and Flutter. These are examples of
Application software too.

There are various types of application software:

ISUE–CCSICT –IM-092 - Instruction Material Page 6


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Word Processors: These applications for documentation. Along with that it also
helps I storing, formatting and printing of these documents. Some examples of word
processors are:
• Abiword
• Apple iWork- Pages
• Corel WordPerfect
• Google Docs
• MS Word

Database Software: This software is used to create and manage a database. It is


also known as the Database Management System or DBMS. They help with the
organization of data. Some examples of DBMS are:
• Clipper
• dBase
• FileMaker
• FoxPro
• MS Access
• MySQL
Multimedia Software: It is the software that is able to play, create or record
images, audio or video files. They are used for video editing, animation, graphics, and
image editing, some examples of Multimedia Software are:
• Adobe Photoshop
• Inkscape
• Media Monkey
• Picasa
• VLC Media Player
• Windows Media Player
• Windows Movie Maker

ISUE–CCSICT –IM-092 - Instruction Material Page 7


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Education and Reference Software: These types of software are specifically
designed to facilitate learning on a particular subject. There are various kinds of tutorial
software that fall under this category. They are also termed as academic software. Some
examples are:
• Delta Drawing
• GCompris
• Jumpstart titles
• KidPix
• MindPlay
• Tux Paint

Graphics Software: As the name suggests, Graphics Software has been devised
to work with graphics as it helps the user to edit or make changes in visual data or images.
It comprises of picture editors and illustration software. Some examples are:
• Adobe Photoshop
• Autodesk Maya
• Blender
• Carrara
• CorelDRAW
• GIMP
• Modo
• PaintShop Pro

Web Browsers: These applications are used to browse the internet. They help the
user in locating and retrieving data across the web. Some examples of web browsers are:
• Google Chrome
• Internet Explorer

ISUE–CCSICT –IM-092 - Instruction Material Page 8


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
• Microsoft Edge
• Mozilla Firefox
• Opera
• Safari
• UC Browser

Other than these, all the software that serves a specific purpose fall under the
category of Application Software.
However, there exists one more classification of the software. The software can
also be classified based on their availability and shareability.

This classification is as given below:


1. Freeware
Freeware software is available without any cost. Any user can download it
from the internet and use it without paying any fee. However, freeware does not
provide any liberty for modifying the software or charging a fee for its distribution.
Examples are:
• Adobe Reader
• Audacity
• ImgBurn
• Recuva
• Skype
• Team Viewer
• Yahoo Messenger

ISUE–CCSICT –IM-092 - Instruction Material Page 9


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
2. Shareware
It is a software that is freely distributed to users on a trial basis. It usually
comes with a time limit and when the time limit expires, the user is asked to pay
for the continued services. There are various types of shareware like Adware,
Donationware, Nagware, Freemium, and Demoware (Cripplewareand Trialware).
Some examples of shareware are:
• Adobe Acrobat
• Getright
• PHP Debugger
• Winzip

ISUE–CCSICT –IM-092 - Instruction Material Page 10


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
3. Open-source
These kinds of software are available to users with the source code which
means that a user can freely distribute and modify the software and add additional
features to the software. Open-Source software can either be free or chargeable.
Some examples of open-source software are:
• Apache Web Server
• GNU Compiler Collection
• Moodle
• Mozilla Firefox
• Thunderbird

4. Software
They are also known as Closed-source software. These types of
applications are usually paid and have intellectual property rights or patents over
the source code. The use of these is very restricted and usually, the source code
is preserved and kept as a secret.

ISUE–CCSICT –IM-092 - Instruction Material Page 11


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Topic 2: Programming Languages
A Program is a set of instructions which the computer follows in processing data.
It tells the computer how to receive, process, and output the data. Programs are written
in high-level languages like COBOL, FORTRAN, PASCAL, BASIC etc... These are
converted into machine readable form by means of computer programs.
A programming language is an artificial language that can be used to control the
behavior of a machine, particularly a computer. Programming languages are defined by
syntactic (organized) and semantic (significant) rules which describe their structure and
meaning respectively. Many programming languages have some form of written
specification of their syntax and semantics; some are defined only by an official
implementation.
Programming languages are used to facilitate communication about the task of
organizing and manipulating information, and to express algorithms precisely. Some
authors restrict the term "programming language" to those languages that can express
all possible algorithms; sometimes the term "computer language" is used for more limited
artificial languages.
Thousands of different programming languages have been created so far, and new
languages are created every year.
An ARTIFICIAL LANGUAGE is a language created by a person or a group of
people for a certain purpose, usually when this purpose is hard to achieve by using a
natural language.
People express themselves using a language with many words. Computers use a
simple language consisting of only 1s and 0s, with a 1 meaning "on" and a 0 meaning
"off." Trying to talk to a computer in its own language would be like trying to talk to your
friends using Morse code—it can be done, but why would you?
A programming language acts as a translator between you and the computer.
Rather than learning the computer's native language (known as machine language), you
can use a programming language to instruct the computer in a way that is easier to learn
and understand.

ISUE–CCSICT –IM-092 - Instruction Material Page 12


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
HOW PROGRAMMING WORKS?
On its own, a computer isn't very smart.
A computer is essentially just a big bunch of tiny electronic switches that are either
on or off. By setting different combinations of these switches, you can make the computer
do something, for example, display something on the screen or make a sound. That's
what programming is at its most basic—telling a computer what to do.
Of course, understanding which combination of switches will make the computer
do what you want would be a daunting task—that's where programming languages come
in.

MACHINE LANGUAGES, ASSEMBLY LANGUAGES, AND HIGH-LEVEL


LANGUAGES
Programmer write instructions in various programming languages, some directly
understandable by the computer and others that require intermediate translation steps.
Hundreds of computer languages are in use today. These may divided into three general
types.
1. Machine Languages
2. Assembly Languages
3. High-level Languages

Machine Languages – is the “natural language” of a particular computer. It is defined by


a hardware design of that computer. Machine languages generally consist of strings of
numbers (ultimately reduce to1s and 0s) that instruct computers to perform their most
elementary operations one at a time. Machine languages are machine independent, i.e.,
a particular machine language can be used only one type of a computer. Machine
languages are cumbersome for humans, as can be seen by the following section of a
machine language program that adds overtime pay to base pay and stores the result in
gross pay.
1001 0011 1100 0101

ISUE–CCSICT –IM-092 - Instruction Material Page 13


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
0110 1010 1001 1111
Assembly Languages – Instead of using the strings of numbers that computers could
directly understand, programmers began using English-like abbreviations represent the
elementary operations of the computer.
Translator programs called assemblers were developed to convert assembly
language programs to machine language at computer speeds. The following section of
an assembly language program also adds overtime pay to base pay and stores the result
in gross pay, but more clearly than its machine language equivalent:
LOAD BASEPAY
ADD OVERPAY
STORE GROSSPAY
Although such code is clearer to humans, it is incomprehensible to computers until
translated to machine language.

High-level Languages – were developed in which single statements accomplish


substantial tasks. It also developed to speed the programming process because it allow
programmers to write instructions that look almost like everyday English and contain
commonly used mathematical notations.
GrossPay = basePay + overtimePay
Translator programs called compilers convert high-level language programs into
machine language.

COMPUTER ORGANIZATION
Regardless of differences in physical appearance, virtually every computer may
be envisioned as being divided into six logical units or sections. These are:
1. Input Unit – This is the “receiving” section of the computer. It obtains information
(data and computer programs) from various input devices and places this
information at the disposal of the other units so that the information may be
processed.

ISUE–CCSICT –IM-092 - Instruction Material Page 14


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
2. Output Unit – this is the “shipping” section of the computer. It takes information
that has been processed by the computer and places it on various output devices
to make the information available for use outside the computer.
3. Memory Unit – This is the rapid access, relatively low-capacity “warehouse”
section of the computer. It retains information that has been entered through the
input unit so that the information may be made immediately available for
processing when it is needed.
4. Arithmetic and Logic Unit (ALU) – This is the “manufacturing” section of the
computer. It is responsible for performing calculations such as addition,
subtraction, multiplication and division. It contains the decision mechanisms that
allow the computer, for example, to compare two items from the memory unit to
determine whether or not they are equal.
5. Central Processing Unit (CPU) – This is the “administrative” section of the
computer. It is computer’s coordinator and is responsible for supervising the
operation of the other sections.
6. Secondary Storage Unit – This is the long-term, high-capacity “warehousing”
section of the computer. Program or data not actively being used by the other units
are normally placed on secondary storage devices (such as disks) until they are
again needed, possibly hours, days, months, or even years later.

GENERATION OF PROGRAMMING LANGUAGES

Terms to be defined first


Program – series of instructions for completion of a specific task or for
performance of an activity. A list of instructions that a computer follows to perform
a task.
Compiler – A program that translates a high-level language, such as Basic, into
machine language

ISUE–CCSICT –IM-092 - Instruction Material Page 15


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
First Generation
The most fundamental way to program a computer, using instructions made up
entirely of strings of 0sand 1s. The key concept is that, language designs were based
directly on available hardware. Language names are acronyms and are typically spelled
with all capital letters.

Second Generation
A programming language that is very similar to machine language, but uses
symbols instead of binary number. A programmer is still forced to think in terms of the
small, incremental steps of the machine’s language.
Example of a 2G programming language is the Algol 60.

Third Generation
A programming language whose statements are translated into machine language
instruction. Examples of high level languages are BASIC, FORTRAN, COBOL, and
PASCAL.
A high-level programming language is a programming language that is more user-
friendly. Instructions in this language must be translated by a compiler or interpreter
before they can be processed.
First and second and third generation languages are all procedural languages
because the programmer must write each step and must use logical control structures to
indicate the or order in which the instruction are to be executed.

Fourth Generation
Nonprocedural languages are easier to code but it gives you less control over how
each task is actually performed.
Example: SQL
Features of 4Gls:
• Easy to learn, understand.

ISUE–CCSICT –IM-092 - Instruction Material Page 16


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
• Convenient for accessing database.
• Focuses on maximizing human productivity rather than minimizing
computer time.
• Nonprocedural
• Available as package software that is then used to develop custom
applications.

Fifth Generation
Nonprocedural languages they are most often used to access database or to build
expert systems.
Example is the Prolog.

Topic 3: Program Development Process


The various stages in the development of a computer program are :
1. Problem Definition
2. Program Design
3. Coding
4. Debugging
5. Testing
6. Documentation
7. Maintenance

The Software Development Life Cycle

ISUE–CCSICT –IM-092 - Instruction Material Page 17


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Problem Definition
The first step in the process of program development is the thorough
understanding and identification of the problem for which is the program or software is to
be developed. In this step the problem has to be defined formally.
All the factors like Input/output, processing requirement, memory requirements,
error handling, interfacing with other programs have to be taken into consideration in this
stage.

Program Design
The next stage is the program design. The software developer makes use of tools
like algorithms and flowcharts to develop the design of the program.
Algorithm
An algorithm is a step-by-step description of how to arrive at a solution in
the most easiest way. Algorithms are not restricted to computer world only. In fact,
we use them in everyday life.

Flowchart
A flowchart is a diagram that shows
the logic of the program. A flowchart is a
formalized graphic representation of a
logic sequence, work or manufacturing
process, organization chart, or similar
formalized structure. The purpose of a
flow chart is to provide people with a
common language or reference point
when dealing with a project or process.

ISUE–CCSICT –IM-092 - Instruction Material Page 18


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Coding
Once the design process is complete, the actual computer program is written, i.e.
the instructions are written in a computer language.
Coding is generally a very small part of the entire program development process
and also a less time-consuming activity in reality. In this process all the syntax errors i.e.
errors related to spelling, missing commas, undefined labels etc. are eliminated.
For effective coding some of the guide lines which are applied are :
• Use of meaningful names and labels of variables,
• Simple and clear expressions,
• Modularity with emphasis on making modules generalized,
• Making use of comments and indenting the code properly,
• Avoiding jumps in the program to transfer control.

Debugging
At this stage the errors in the programs are detected and corrected. This stage of
program development is an important process. Debugging is also known as program
validation.
Some common errors which might occur in the programs include:
• Un initialization of variables.
• Reversing of order of operands.
• Confusion of numbers and characters.
• Inverting of conditions e.g. jumping on zero instead of on not zero.

Testing
The program is tested on a number of suitable test cases. A test plan of the
program has to be done at the stage of the program design itself. This ensures a thorough
understanding of the specifications. The most trivial and the most special cases should
be identified and tested. It is always useful to include the maximum and minimum values
of all variables as test data.

ISUE–CCSICT –IM-092 - Instruction Material Page 19


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Testing a program requires three separate activities: desk checking, translation
and debugging.
Desk Checking
Process of sitting in a desk and checking the source code, proofreading it
for obvious syntax errors as well as looking for logical errors which are not
immediately detectable.
Types of errors
Syntax Errors. Violations of the rules of a specific programming
language.
Logical Errors. Mistakes in the algorithm or program design which
are not easily detected.
Translation
It is the conversion of the source code to the internal instructions that the
computer required. During translation, another computer program called the
translator checks for and finds all syntax errors which may be corrected once the
computer issues diagnostic messages which inform the user of the errors.

Debugging
Refers to the process of detecting, locating and correcting logic errors
(bugs) by submitting a translated program to the computer for execution and
seeing what happens. For this purpose, valid test data must be administered to
see how the program will fare in a similar situation.

Documentation
Documentation is a very essential step in the program development.
Documentation help the users and the people who maintain the software. This ensures
that future modification if required can be done easily. Also, it is required during
redesigning and maintenance.
Documentation also contains technical information such as where and who
created the program, who contact when there’s a problem with the program and
instructions on the use and maintenance of the program.

ISUE–CCSICT –IM-092 - Instruction Material Page 20


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Maintenance
Updating and correction of the program for changed conditions and field
experience is accounted for in maintenance. Maintenance becomes essential in following
situations:
Change in specification,
Change in equipment, and
Errors which are found during the actual execution of the program.

Topic 4: Software Tools


A software or a programming tool is a set of computer programs that are used by
the developers to create, maintain, debug, or support other applications and programs.
Software development tools are simply tools (generally software themselves) that
programmers practice to create other software. For Example – language libraries, code
editors, debuggers, etc. Any software deploy tool that enables a programmer to build
stable software matching the needs or goals of a customer is placed into this category.
Agile development tools can be of different types like linkers, compilers, code
editors, GUI designers, assemblers, debuggers, performance analysis tools, and many
others. There are some factors that need to consider while selecting the corresponding
development tool, based on the type of design
Few of such factors are displayed below:
• Company criteria
• Usefulness of tool
• Integration of one tool with another
• Choosing an appropriate environment
• Learning curve
Why Do Software Development Tools Matter?
All professionals need software designing tools in order to do their jobs. A
carpenter needs an assortment of hammers, saws, planes, tape measures and the like.
An auto mechanic needs wrenches and sockets, ratchets and impact tools. A plumber

ISUE–CCSICT –IM-092 - Instruction Material Page 21


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
needs pipe wrenches, brazing tools, saws, etc. Same way, software developers need the
right software planning tools for accomplishing their respective assignments. Software
development tools play a very important role in the IT field, although they are less
substantial than the tools used by other professionals.

Software development tools can be things like interpreters that work directly with
code, but they can also be tools that help to make the lives of developers simpler and
easier. For instance, while a user panel assigned to answering the questions of
programmers and sharing knowledge might not have a direct influence on the
development of a particular piece of software, but it does provide relevant solutions for
developers who necessitate answers to vital questions.

So, you can find a very wide variety of other options in the category of software
development tools. Anything that might help to boost the efficiency and accuracy can be
conceivably be added to this category, including communication tools like Slack, libraries
like Stack Overflow, and repositories like GitHub.

In other words, the selection of software engineering tools to be used in its


development process can completely shape or break a project. Once the targeted
ecosystem and programming language(s) are chosen, and the requirements and end
goals are also well-enough understood, the next task is starting the work of a software
development project is to choose the tools that will be utilized throughout the process. It’s
also important to be knowledgeable of the types of tools that are available for
employment, their benefits, and the implications for using them.

Where Are Development Tools Found?


You can find software development tools in many different places, and in
numerous different configurations. For instance, APIs comprises of tools that enable
software developers to achieve a specific goal, such as programming language libraries.
SDKs include a very wide range of programming tools that allow programmers to create
software for specific platforms and systems. Integrated development environments
ISUE–CCSICT –IM-092 - Instruction Material Page 22
ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
provide entire toolbars for programmers, allowing them to create programs in a single
environment, test them in the same environment and even deploy them at the opportune
time.

Assembler
An assembler translates a program written in assembly language into machine
language and is effectively a compiler for the assembly language, but can also be used
interactively like an interpreter. Assembly language is a low-level programming language.
Low-level programming languages are less like human language in that they are more
difficult to understand at a glance; you have to study assembly code carefully in order to
follow the intent of execution and in most cases, assembly code has many more lines of
code to represent the same functions being executed as a higher-level language. An
assembler converts assembly language code into machine code (also known as object
code), an even lower-level language that the processor can directly understand.
The Assembler is used to translate the program written in Assembly language into
machine code. The source program is a input of assembler that contains assembly
language instructions. The output generated by assembler is the object code or machine
code understandable by the computer.

Assembly language code is more often used with 8-bit processors and becomes
increasingly unwieldy as the processor’s instruction set path becomes wider (e.g., 16-bit,
32-bit, and 64-bit). It is not impossible for people to read machine code, the strings of
ones and zeros that digital devices (including processors) use to communicate, but it’s
likely only read by people in cases of computer forensics or brute-force hacking.
Assembly language is the next level up from machine code, and is quite useful in extreme
cases of debugging code to determine exactly what’s going on in a problematic execution,

ISUE–CCSICT –IM-092 - Instruction Material Page 23


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
for instance. Sometimes compilers will “optimize” code in unforeseen ways that affect
outcomes to the bafflement of the developer or programmer such that it’s necessary to
carefully follow the step-by-step action of the processor in assembly code, much like a
hunter tracking prey or a detective following clues.

Compiler
Compilers convert high-level language code to machine (object) code in one
session. Compilers can take a while, because they have to translate high-level code to
lower-level machine language all at once and then save the executable object code to
memory. A compiler creates machine code that runs on a processor with a specific
Instruction Set Architecture (ISA), which is processor-dependent. For example, you
cannot compile code for an x86 and run it on a MIPS architecture without a special
compiler. Compilers are also platform-dependent. That is, a compiler can convert C++,
for example, to machine code that’s targeted at a platform that is running the Linux OS.
A cross-compiler, however, can generate code for a platform other than the one it runs
on itself.

A cross-compiler running on a Windows machine, for instance, could generate


code that runs on a specific Windows operating system or a Linux (operating system)
platform. Source-to-source compilers translate one program, or code, to another of a
different language (e.g., from Java to C). Choosing a compiler then, means that first you
need to know the ISA, operating system, and the programming language that you plan to
use. Compilers often come as a package with other tools, and each processor
manufacturer will have at least one compiler or a package of software development tools
(that includes a compiler). Often the software tools (including compiler) are free; after all,

ISUE–CCSICT –IM-092 - Instruction Material Page 24


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
a CPU is completely useless without software to run on it. Compilers will report errors
after compiling has finished.

Interpreter
The translation of single statement of source program into machine code is done
by language processor and executes it immediately before moving on to the next line is
called an interpreter. If there is an error in the statement, the interpreter terminates its
translating process at that statement and displays an error message.
Compilers translate code all at once and the processor then executes upon the
machine language that the compiler produced. If changes are made to the code after
compilation, the changed code will need to be compiled and added to the compiled code
(or perhaps the entire program will need to be re-compiled.) But an interpreter, although
skipping the step of compilation of the entire program to start, is much slower to execute
than the same program that’s been completely compiled.
The interpreter moves on to the next line for execution only after removal of the
error. An Interpreter directly executes instructions written in a programming or scripting
language without previously converting them to an object code or machine code.
Example: Perl, Python and Matlab.

Difference between Compiler and Interpreter:


COMPILER INTERPRETER
A compiler is a program which coverts the entire source interpreter takes a source program and runs
code of a programming language into executable it line by line, translating each line as it
machine code for a CPU. comes to it.
Compiler takes large amount of time to analyze the Interpreter takes less amount of time to
entire source code but the overall execution time of the analyze the source code but the overall
program is comparatively faster. execution time of the program is slower.
Compiler generates the error message only after Its Debugging is easier as it continues
scanning the whole program, so debugging is translating the program until the error is met
comparatively hard as the error can be present any
where in the program.
Generates intermediate object code. No intermediate object code is generated.
Examples: C, C++, Java Examples: Python, Perl

ISUE–CCSICT –IM-092 - Instruction Material Page 25


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Editor
A code editor is the place where programmers spend most of their time.
There are two main types of code editors: IDEs and lightweight editors. Many
people use one tool of each type.
IDE
The term IDE (Integrated Development Environment) refers to a powerful
editor with many features that usually operates on a “whole project.” As the name
suggests, it’s not just an editor, but a full-scale “development environment.”
An IDE loads the project (which can be many files), allows navigation
between files, provides autocompletion based on the whole project (not just the
open file), and integrates with a version management system (like git), a testing
environment, and other “project-level” stuff.
Examples of IDE:
• Visual Studio Code (cross-platform, free).
• WebStorm (cross-platform, paid).
For Windows, there’s also “Visual Studio”, not to be confused with “Visual
Studio Code”. “Visual Studio” is a paid and mighty Windows-only editor, well-suited
for the .NET platform. It’s also good at JavaScript. There’s also a free
version Visual Studio Community.
Many IDEs are paid, but have a trial period. Their cost is usually negligible
compared to a qualified developer’s salary, so just choose the best one for you.

Lightweight editors
“Lightweight editors” are not as powerful as IDEs, but they’re fast, elegant
and simple.
They are mainly used to open and edit a file instantly.
The main difference between a “lightweight editor” and an “IDE” is that an
IDE works on a project-level, so it loads much more data on start, analyzes the

ISUE–CCSICT –IM-092 - Instruction Material Page 26


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
project structure if needed and so on. A lightweight editor is much faster if we need
only one file.
In practice, lightweight editors may have a lot of plugins including directory-
level syntax analyzers and autocompleters, so there’s no strict border between a
lightweight editor and an IDE.
The following options deserve your attention:
• Atom (cross-platform, free).
• Visual Studio Code (cross-platform, free).
• Sublime Text (cross-platform, shareware).
• Notepad++ (Windows, free).
• Vim and Emacs are also cool if you know how to use them.

Topic 5: Basic DOS Commands


Stands for "Disk Operating System." DOS was the first operating system used
by IBM-compatible computers. It was originally available in two versions that were
essentially the same, but marketed under two different names. "PC-DOS" was the version
developed by IBM and sold to the first IBM-compatible manufacturers. "MS-DOS" was
the version that Microsoft bought the rights to, and was bundled with the first versions of
Windows.
DOS uses a command line, or text-based interface, that allows the user to type
commands. By typing simple instructions such as pwd (print working directory)
and cd (change directory), the user can browse the files on the hard drive, open files, and
run programs. While the commands are simple to type, the user must know the basic
commands in order to use DOS effectively (similar to Unix). This made the operating
system difficult for novices to use, which is why Microsoft later bundled the graphic-
based Windows operating system with DOS.
The first versions of Windows (through Windows 95) actually ran on top of the DOS
operating system. This is why so many DOS-related files (such as .INI, .DLL,
and .COM files) are still used by Windows. However, the Windows operating system was

ISUE–CCSICT –IM-092 - Instruction Material Page 27


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
rewritten for Windows NT (New Technology), which enabled Windows to run on its own,
without using DOS. Later versions of Windows, such as Windows 2000, XP, and Vista,
also do not require DOS.
DOS is still included with Windows, but is run from the Windows operating system
instead of the other way around. The DOS command prompt can be opened in Windows
by selecting "Run..." from the Start Menu and typing cmd.
Some basic DOS commands are:
Directory Commands
• DIR : To list all or specific files of any directory on a specified disk.
• MD : To make directory or subdirectory on a specified disk/drive.
• CD or CHDIR : Change DOS current working directory to specified
directory on specified disk or to check for the current directory on the
specified or default drive.
• RMDIR or RD : Removes a specified sub-directory only when it is
empty. This command cannot remove root directory (C:\) or current
working directory.
• TREE : Displays all of the directory paths found on the specified
drive.
• PATH : Sets a sequential search path for the executables files, if the
same are not available in the current directory.
• SUBST : Substitutes a string alias for the pathname and creates a
virtual drive.
File Management Commands:
• COPY : Copies one or more files from source disk/drive to the
specified disk/drive.
• XCOPY : Copies files and directories, including lower-level
directories if they exists.
• DEL : Removes specified files from specified disk/drive.
• REN : Changes the name of a file(Renaming).
ISUE–CCSICT –IM-092 - Instruction Material Page 28
ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
• ATTRIB : Sets or shows file attributes (read, write, hidden, Archive).
• BACKUP : Stores or back up one or more files/directories from
source disk/drive to other destination disk/drive.
• RESTORE : Restores files that were backed up using BACKUP
command.
• EDIT : Provides a full screen editor to create or edit a text file.
• FORMAT : Formats a disk/drive for data storage and use.
General Commands:
• TIME : sets or displays the system time.
• DATE : Sets or displays system date.
• TYPE : Displays the contents of at the specified file.
• PROMPT : Customizes the DOS command prompt.
If users requires help on any DOS commands he/she may type help and
command name at the command prompt.

Topic 6: Introduction to Debug


Debug – is a software that is classified as debugger which is used for testing and
debugging executable programs. A feature of DEBUG is that it displays all program code
and data in hexadecimal format. And any data you enter into memory must also be in
hex form. It also provides a single-step mode which allows you to execute a program one
instruction at a time so that you can view the effect of each instruction on memory
locations and registers.

Commands in Debug
• A (Assemble)
Allows you to create program in mnemonic or symbolic code. It also
translates this assembly source statements that you create into machine code.
Ex: -A 0100
• D (Display or Dump)
ISUE–CCSICT –IM-092 - Instruction Material Page 29
ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Displays the content of a portion memory in hex and ASCII forms starting
with the given address.
Ex: D 0200
• E (Enter)
Enables you to key in data or machine instructions into memory beginning
at a specific location address.
Ex: -E 0200
• G (Go)
Runs the program as a whole in memory and displays the output.
Ex: -G
• H (Hexarithmic)
Shows the sum and difference of two 4-bit hexadecimal numbers, coded as
H <hex value> <hex value>
Ex: -H 000C 0008
• N (Name)
Gives a name to your program, coded as N <path><filename>. The base
name of the filename must be eight characters long and the extension name is
.COM
Ex: N SAMPLE.COM
• Q (Quit)
Finishes the Debug session and exits back to DOS environment
Ex: -Q
• R (Registers)
Allows you to display all registers and their values. It also shows the next
instruction and permits you to change the value of a particular register.
Ex: -R
-R CX
• T (Trace)

ISUE–CCSICT –IM-092 - Instruction Material Page 30


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Runs the program in a single-step mode. It also displays the new values
of the registers and the next instructions to be executed.
Ex: -T
• U (Unassemble)
Lists all the instructions contained in the program beginning at the given
address. You can also specify the last address location.
Ex: -U 0100
-U 0100 0109
• W (Write)
Saves the program onto the disk storage.
Ex: -W

Basic Rules of Debug Commands


• It is not case sensitive.
• It assumes that all number are in hexadecimal format.
• You can enter a space only when it is needed to separate parameters of a
particular command.
• You should specify segments and offsets with a colon, in the form
<segment>:<offset>.

Starting and Quitting Debug


1. To invoke debug, type DEBUG on the C:\.
C:\ >DEBUG
2. Press enter key.
C:\ >DEBUG
-
3. The hyphen indicates you already invoked debug.
4. To exit from debug,
C:\ >DEBUG

ISUE–CCSICT –IM-092 - Instruction Material Page 31


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
-Q
C:\>

Topic 7: Entering and Displaying String


What is ASCII?
ASCII is a standard used to represent characters on electronic devices. To
understand how it works, you first need to be familiar with how a calculator
functions: in a computer, the computational processes are always based off a
binary system, meaning that zeroes and ones determine the processes. That is
the reason why ASCII is also built on this system. The original ASCII standard
defines different characters within seven bits – seven digits that indicate either a 0
or a 1. The eighth bit, which is one full byte, is traditionally used for checking
purposes. The ASCII-based extended versions use this exact bit to extend the
available characters to 256 (28).
Each character corresponds to a seven-digit sequence of zeroes and ones,
which can then be represented as a decimal number, or as a hexadecimal number.
The ASCII characters can be divided into several groups.
Control Characters (0–31 & 127): Control characters are not printable
characters. They are used to send commands to the PC or the printer and are
based on telex technology. With these characters, you can set line breaks or tabs.
Today, they are mostly out of use.
Special Characters (32–47 / 58–64 / 91–96 / 123–126): Special characters
include all printable characters that are neither letters nor numbers. These include
punctuation or technical, mathematical characters. ASCII also includes the space
(a non-visible but printable character), and, therefore, does not belong to the
control characters category, as one might suspect.
Numbers (30–39): These numbers include the ten Arabic numerals from 0-
9.

ISUE–CCSICT –IM-092 - Instruction Material Page 32


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Letters (65–90 / 97–122): Letters are divided into two blocks, with the first
group containing the uppercase letters and the second group containing the
lowercase.

The ASCII Table

Entering String on a Specified Location


To enter the string Hello World! in a specified memory location 0100, follow the
following steps:
Convert each character into its hexadecimal equivalent using the ASCII Table
reference.

H e l l o space W o r l d !
48 65 6C 6C 6F 20 57 6F 72 6C 64 21

ISUE–CCSICT –IM-092 - Instruction Material Page 33


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Add the last number 24h which is the equivalent of $ symbol. The $ symbol indicates that
it is already the end of the string.

H e l l o space W o r l d ! $
48 65 6C 6C 6F 20 57 6F 72 6C 64 21 24

Enter the hex codes using the command E and the offset address which is 0100. Press
the space every after hex code entered.

Displaying String on the Specified Location


To display string use the D command. Type D followed by the offset address (i.
e., D 0100). The output consists of three parts, the address column, hexadecimal
representation column and the ASCII representation column.

Topic 9: Basic Assembly instructions Used in Debug


MOV (Move data)
• It copies and transfers data between two registers, or between an
immediate data to a register.
Format: MOV <register>,<register>
MOV <register>, <immediate data>
Example: MOV AX,BX
MOV CX, 5083
MOV CL,DL
MOV BL,33
ADD (Add)
• It is used to get the sum of two registers or a register and an immediate
data, and stores the result to the left most register.

Format: ADD <register>,<register>

ISUE–CCSICT –IM-092 - Instruction Material Page 34


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
ADD <register>,<immediate data>

Example: ADD CX,BX


ADD AX,0308
ADD AL,BL
ADD DH, 95

SUB (Subtract)
• It is used to get the difference of two registers or a register and an immediate
data, and stores the result to the left most register.

Format: SUB <register>,<register>


SUB <register>,<immediate data>

Example: SUB CX,BX


SUB AX,0308
SUB AL,BL
SUB CL,95
MUL (Multiply)
• It is used to get the product of the given register and AX register, and
stores the result to AX register. If the product is greater than 16 bits, the
overflow is stored in DX register.

Format: MUL <register>

Example: MUL CX

DIV (Divide)

ISUE–CCSICT –IM-092 - Instruction Material Page 35


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
• It is used to divide the value of a given register and AX register, and
stores the quotient to AX and the remainder to DX registers respectively.

Format: DIV <register>

Example: DIV BX
INC (Increment)
• It is used to increase the value of the register by one (1).

Format: INC <register>

Example: INC AX
INC CH
DEC (Decrement)
• The opposite of INC, instead of increasing, it decreases the value of the
register by one (1)

Format: DEC <register>

Example: DEC AX
DEC CH
LOOP (Loop)
• It controls the execution of a program segment in a specified number of
times. The CX register should contain a count value before starting the
loop and automatically decrements by one (1). If CX is not equal to zero
(0), it transfers to its operand address which points to the start of the
loop; otherwise it drops through to the next instruction.

Format: LOOP <offset address>

ISUE–CCSICT –IM-092 - Instruction Material Page 36


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Example: LOOP 0108

Example of debug program

- A 0100
1035:0100 mov ax,D0C1
1035:0103 mov cx,0E05
1035:0105 add ax,cx
1035:0108 dec ax
1035:010A int 20
1035:010C
-

Executing each Instruction in Debug


To execute each instruction in debug, used the T command then press enter key
to run the instruction line by line. Debug displays the new contents of the registers and
the next instruction to be executed. Repeat pressing T until NOP is displayed. NOP (no-
op) this means it does nothing. Given the code below,
- A 0100
1035:0100 mov ax,D0C1
1035:0103 mov cx,0E05
1035:0105 add ax,cx
1035:0108 dec ax
1035:010A int 20
1035:010C
-T

AX=D0C1 BX=0000 CX=0000 DX=0000 …


Mov cx,0E05
-T
AX=D0C1 BX=0000 CX=0E05 DX=0000 …
Add ax,cx
-T
ISUE–CCSICT –IM-092 - Instruction Material Page 37
ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
AX=DEC6 BX=0000 CX=0E05 DX=0000 …
Dec ax
-T
AX=D0C0 BX=0000 CX=0E05 DX=0000 …
Int 20
-T
AX=D0C0 BX=0000 CX=0E05 DX=0000 …
NOP

Topic 10: Creating Complex Debug Program


Debug Programs
Example:
1. Using control characters (0A – Line Feed and 0D – Carriage Return) in a screen
display.
-A 0100
1358:0100 MOV AH, 02 ;request display character
1358:0102 MOV DL,49 ;character ‘I’
1358:0104 INT 21 ;call interrupt service
1358:0106 MOV DL, 0A ; line feed character
1358:0108 INT 21 ;call interrupt service
1358:010A MOV DL,0D ;carriage return character
1358:010C INT 21 ; call interrupt service
1358:010E MOV DL,53 ;character ‘S’
1358:0110 INT 21 ;call interrupt service
1358:0112 MOV DL,0A ;line feed character
1358:0114 INT 21 ;call interrupt service
1358:0106 MOV DL,0D ;carriage return character
1358:0118 INT 21 ;call interrupt service
1358:011A MOV DL,55 ;character ‘U’
1358:011C INT 21 ;call interrupt service
1358:011E INT 20 ;end

2. Displaying the same character (lowercase ‘z’) thirty times using loop on the screen.

-A 0100
1358:0100 MOV CX,001E ;setting the number of loops
1358:0103 MOV AH,2 ;request display character
1358:0105 MOV DL,7A ;character to display
1358:0107 INT 21 ;call interrupt service
1358:0109 LOOP 0107 ;go to offset 0107
1358:010B INT 20 ;end

ISUE–CCSICT –IM-092 - Instruction Material Page 38


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
3. Displaying the numbers from 0-9 vertically using LOOP.
-A 0100
1358:0100 MOV CX,000A
1358:0103 MOV AH,2
1358:0105 MOV DL,30
1358:0107 INT 21
1358:0109 MOV BL,DL
1358:010A MOV DL,0D
1358:010C INT 21
1358:010D MOV DL,0A
1358:010E INT 21H
1358:0110 MOV DL,BL
1358:0113 INC DL
1358:0115 LOOP 0107
1358:0117 INT 21
1358:0119 INT 20
1358:011B

ISUE–CCSICT –IM-092 - Instruction Material Page 39


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
5. Assessment Task

Assessment Task 1
TEST 1. TRUE OR FALSE: Read the statements carefully. Write T if is correct otherwise, write F
on the space before the number.
___1. Programs are set of instructions that performs specific task.
___2. Computers are made to perform instructions given to them.
___3. Digital representation means the manipulation of “on” and “off” signals to perform tasks.
___4. In hardware concepts, computer can directly accept and process instructions written in
any programming language.
___5. Anything that can be store electronically are called software.
___6. There are two categories of software, the system software and application software.
___7. In SDLC, planning phase is where system/program requirements are identified.
___8. The design phase in SDLC involves identification for the enhancement/s of the current
system being used.
___9. Algorithm is not a programming tool it just shows the sequence in solving the particular
problem.
___10. Implementation phase involves coding, testing and installation.
___11. Algorithm is defined as well-defined, simple mathematical and logical procedures that can
be followed to solve a problem in a finite number of steps.
___12. Instructions are statements that result to a Boolean value.
___13. Relational operator reverses the logic or result of a certain condition.
___14. A program has to be written using a programming language before a computer can
execute it.
___15. A high-level language uses English-like abbreviations in place of binary patterns.

ISUE–CCSICT –IM-092 - Instruction Material Page 40


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Laboratory Exercise # 1
Using Debug Commands
1. Use debug command to compute the sum and difference of 002C and 001F hex
numbers. Write your code on the space provided.

2. Show the registers and its contents provided by the microprocessor of your
computer. Write code and your output on the space provided.

3. Enter a value for BX, CX and DX registers. Write your code and output on the
space provided.

ISUE–CCSICT –IM-092 - Instruction Material Page 41


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Laboratory Exercise # 2

Enter and display your name, course, subject and section starting at memory location 0200.

ISUE–CCSICT –IM-092 - Instruction Material Page 42


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Laboratory Exercise # 3

1. Trace the contents of the AX, BX, CX, and DX registers of the given debug program.

- A 0100
MOV AX,1250
MOV BX,C0A1
MOV CX,0002
ADD BL,CL
SUB BH,AH
MOV DX,BX
INC CX
DEC DX
MUL CX

INSTRUCTION AX BX CX DX

MOV AX,1250

MOV BX,C0A1

MOV CX,0002

ADD BL,CL
SUB BH,AH

MOV DX,BX

INC CX

DEC DX

MUL CX

INT 20

ISUE–CCSICT –IM-092 - Instruction Material Page 43


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Laboratory Exercise # 4

Create a debug program and execute the whole program. Sample Output:

Zach Corpuz
ICT
I.S.U. - Ilagan

ISUE–CCSICT –IM-092 - Instruction Material Page 44


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
Laboratory Exercise # 5

1. Create a debug program using LOOP instruction that will display the given output
on the screen.

ZY_WV _TS_QP_NM_KJ_HG_ED_BA_

2. Create a debug program using loop instruction that will display a simple graphic.

ISUE–CCSICT –IM-092 - Instruction Material Page 45


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020
9. References (at least 3 references preferably copyrighted within the last 5 years,
alphabetically arranged)
Software, Encyclopaedia Britannica, Encyclopaedia Britannica, Inc.,Date
Published: 11 February 2020
URL: https://www.britannica.com/technology/software, Access Date: August 28,
2020

Scott Thornton, “What are compilers, translators, interpreters, and assemblers?


”, FEBRUARY 17, 2017, derived from https://www.microcontrollertips.com/compilers-
translators-interpreters-assemblers-faq/ DATE ACCESSED: September 2, 2020

https://squareboat.com/blog/different-types-of-software-with-examples

https://www.cseworldonline.com/articles/stages-of-program-development-
process.php

https://hzltenedero.wordpress.com/category/program-development-process/

https://www.geeksforgeeks.org/software-engineering-program-development-life-
cycle-pdlc/

http://whatis.techtarget.com/definition/0,,sid9_gci212134,00.html

https://www.goodfirms.co/glossary/software-tools/

https://www.geeksforgeeks.org/language-processors-assembler-compiler-and-
interpreter/

https://techterms.com/definition/dos#:~:text=Stands%20for%20%22Disk%20Operatin
g%20System,used%20by%20IBM%2Dcompatible%20computers.&text=DOS%2
0uses%20a%20command%20line,the%20user%20to%20type%20commands.

https://www.c3scripts.com/tutorials/msdos/commands.html

Rajesh J. Solanki, “Operating Systems (DOS/WINDOWS)”, Bioinformatics Centre


Institute of Microbial Technology, Sector 39-A, Chandigarh, Retrieved from
http://crdd.osdd.net/raghava/slides/prephd/doslec.htm Date: September 2, 2020

https://www.ionos.com/digitalguide/server/know-how/ascii-codes-overview-of-all-
characters-on-the-ascii-table/

http://www.asciitable.com/

ISUE–CCSICT –IM-092 - Instruction Material Page 46


ISUE__ __ Syl ___
Revision: 02
Effectivity: August 1, 2020

You might also like