Professional Documents
Culture Documents
Organisation
By
Maganda Evans Tabingwa
BIT, MSE, PhD-MIS (Cont..)
INTRODUCTION
HI ALL
NAME:
MAGANDA EVANS TABINGWA
QUALIFICATIONS:
BIT, MSE & PhD Student-MIS (Walden University)
TEACHING EXPERIENCE:
15 YEARS
TEACHING EXPERIENCE TRACK…
DIGITAL LOGIC
ARTIFICIAL INTELLIGENCE
MULTIMEDIA SYSTEMS
E-COMMERCE
ETC
MY PASSION
SERVICE TO:
FAMILY
PANAFRICANISM
HUMANITY
MY PERSONAL WHY
Tanya Innovations Africa & Tanya Innovations Academy
YouTube
www.tanyainnovations.com
Overview
General learning Outcomes for Employability,
Entrepreneurship & Ethical leadership
Communication skills
Collaboration & Teamwork
Critical thinking skills
Creativity and Design thinking
Digital Literacy
Learning how to learn
Entrepreneurship
Time Management
Ethical Leadership
Specific learning Outcomes
Resources
Electronic books
Online MOOC
Online Tutorial
To command the computer, you need to speak its language and the instructions are the words
of a computer’s language and the instruction set is basically its vocabulary.
ISA is the portion of the machine which is visible to either the assembly language
programmer or a compiler writer or an application programmer.
It is the only interface that you have, because the instruction set architecture is the
specification of what the computer can do and the machine has to be fabricated in such a way
that it will execute whatever has been specified in your ISA.
ISA
Let us assume you have a high-level program written in C which is independent of the architecture on
which you want to work.
This high-level program has to be translated into an assembly language program which is specific to a
particular architecture
Human like High level language cant be understood by computer which only understands machine
language of 1’s and 0’s.
So this assembly language will have to be finely translated into machine language, object code which
consists of zeros and ones.
So the translation from your high-level language to your assembly language and the binary code will have
to be done with the compiler and the assembler.
ISA Taxonomy
Addressing Modes
Addressing Memory
The tasks carried out by a computer program consist of a sequence of small steps, such as;
multiplying two numbers,
moving a data from a register to a memory location,
testing for a particular condition like zero,
reading a character from the input device or
sending a character to be displayed to the output device, etc..
Types of Instructions
Since, both the instructions as well as data are stored in memory, the processor needs to read
the instructions and data from memory.
Therefore, two basic operations involving the memory are needed, namely;
Load (or Read or Fetch) and
Store (or Write).
Data Transfer Instructions…..
The Load operation transfers a copy of the data from the memory to the processor
and the Store operation moves the data from the processor to memory.
Other data transfer instructions are needed to transfer data from one register to
another or from/to I/O devices and the processor.
Data Manipulation Instructions
They perform operations on data and indicate the computational capabilities for the processor.
Arithmetic operations include addition (with and without carry), subtraction (with and without
borrow), multiplication, division, increment, decrement and finding the complement of a number.
The logical and bit manipulation instructions include AND, OR, XOR, Clear carry, set carry, etc.
Similarly, you can perform different types of shift and rotate operations.
Sequential flow of instructions
instructions that are stored in consequent locations are executed one after the other.
program sequencing and control instructions that help you change the flow of the program
Move N, R1
Clear R0
LOOP Determine address of “Next” number and add “Next” number to R0
Decrement R1
Branch > 0, LOOP
Move R0, SUM
The loop is a straight-line sequence of instructions executed as many times as needed
Branch instructions
This type of instruction loads a new value into the program counter.
As a result, the processor fetches and executes the instruction at this new address,
called the branch target, instead of the instruction at the location that follows the
branch instruction in sequential address order.
Input and Output instructions are used for transferring information between the
registers, memory and the input / output devices.
Compiler Interpreter
A compiler scans whole program and Is much slower than compiler because
then check it for syntactic and semantic scan and translate only one statement of
error, once the code is checked for errors, the program at a time. Therefore,
it is converted into an object code. Then, interpreters convert the source code into
it can be processed by the machine to machine code during the execution of the
perform the corresponding task. program.
Compiler…. Interpreter….
Takes less execution time hence preferred for Takes more execution time hence not
production. preferred for production. It is ideal for use in
a programming and development
environment.
Compilers that translate source code to
machine code target specific operating systems
and computer architectures. An interpreter is highly useful for scripting
and other small programs since it reads and
Some compilers can translate source code into then executes code in a single process. As a
another high-level programming language, result, it’s frequently seen on Web servers that
rather than machine code or byte code (Referred run a lot of executable scripts. It’s also used
to as transpiler,transcompiler, source-to-source during the development stage of software to
translator or it might go by another name. For test small bits of code one at a time rather
example, a developer might use a transpiler to than compiling the entire program each time.
convert COBOL to Java.
Compiler & Interpreter ……
Compiler Interpreter
Errors detected: Errors detected:
Compiler can check syntactic and Interpreter checks the syntactic errors only
semantic errors in the program
simultaneously
Size:
Size:
Compiler are smaller in size.
Compiler are larger in size.
Flexibility:
Flexibility:
Interpreters are flexible
Compilers are not flexible.