You are on page 1of 37

Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

Expt Title LO
no
1 Study of PC Motherboard Technology (South Bridge and North LO1
Bridge), Internal Components and Connections used in computer
system

2 Verify the truth table of various logic gates (basic and universal LO2
gates)

3 Realize Half adder and Full adder LO2

4 Implementation of MUX and DeMUX LO2

5 Build a program for 8 bit addition and subtraction LO3

6 Build a program for 8 bit multiplication and division LO3

7 Develop Program to find even and odd numbers from a given list LO4

8 Program to find largest and smallest numbers from a given list LO4

9 Program to write numbers in ascending and descending order from LO4


a given list

10 Build a program Check whether a given string is a palindrome or LO5


not.

11 Generate the first ‘n’ Fibonacci numbers. LO5

12 Study of Interfacing with 8086 microprocessors: 2. Interfacing LO6


keyboard matrix

Subject: Microprocessor Lab (ITL-403)


Year/ Sem: SE/ IV Academic Year : 2020-21

Name: Insha Mulla


Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.1

AIM: To study PC Motherboard Technology (South Bridge


and North Bridge), Internal Components and Connections
used in computer system.

THEORY:
DEFINITION:
The motherboard is the main circuit board of your
computer and is also known as the mainboard or logic
board. It is a printed circuit board containing the principal
components of a computer or other device, with connectors
for other circuit boards to be slotted into.

COMPONENTS OF MOTHERBOARD:
1. Central Processing Unit (CPU):
Also known as the microprocessor or the processor,
the CPU is the computer's brain. It is responsible for
fetching, decoding, and executing program
Year/ Sem: SE/ IV Academic Year : 2020-21

instructions as well as performing mathematical and


logical calculations.
Examples:
Intel Core i7 (600, 700, 800, 900 series)
Intel Core i5 (400, 500 series)
Intel Core i3 (300 series)
Intel Pentium (P6000 series)
Intel Celeron (P4000 series)

2. Northbridge:
This allows communication between the CPU and
the system memory and PCI-E slots. It is a focal
Point of Motherboard and It is also called as Memory
Controller Hub.

3. Southbridge:
This is the controller for components such as the PCI
slots, onboard audio, and USB connections.

4. Random Access Memory (RAM):


Random Access Memory, or RAM, usually refers to
computer chips that temporarily store dynamic data
to enhance computer performance while you are
working. Random Access Memory is volatile,
meaning it loses its contents once power is turned
off. When a computer shuts down properly, all data
located in RAM is returned to permanent storage on
the hard drive or flash drive. At the next boot-up,
RAM begins to fill with programs automatically
loaded at startup, a process called booting. Later on,
Year/ Sem: SE/ IV Academic Year : 2020-21

the user opens other files and programs that are still
loaded in memory.

5. Basic Input/Output System (BIOS):


BIOS stands for Basic Input/Output System. BIOS is
a "read-only" memory, which consists of low-level
software that controls the system hardware and acts
as an interface between the operating system and the
hardware.

The system BIOS is a ROM chip on the motherboard


used during the startup routine (boot process) to
check out the system and prepare to run the
hardware. The BIOS is stored on a ROM chip
because ROM retains information even when no
power is being supplied to the computer.

6. The CMOS Battery:


The Abbreviation of CMOS Battery is
Complementary Metal Oxide Semiconductor
Random Access Memory (CMOS RAM).
Motherboards also include a small separate block of
memory made from CMOS RAM chips which are
kept alive by a battery (known as a CMOS battery)
even when the PC’s power is off. This prevents
reconfiguration when the PC is powered on. CMOS
devices require very little power to operate.

The CMOS RAM is used to store basic information


about the PC’s configuration for instance: -
Year/ Sem: SE/ IV Academic Year : 2020-21

Floppy disk and hard disk drive types


Information about CPU
RAM size
Date and time
Serial and parallel port information
Plug and Play information
Power Saving settings

7. Cache Memory:
Cache memory is a small block of high-speed
memory (RAM) that enhances PC performance by
pre-loading information from the (relatively slow)
main memory and passing it to the processor on
demand.

8. Expansion Bus:
An expansion bus is an input/output pathway from
the CPU to peripheral devices and it is typically
made up of a series of slots on the motherboard.
Expansion boards (cards) plug into the bus.
Expansion buses enhance the PCs capabilities by
allowing users to add missing features in their
computers by slotting adapter cards into expansion
slots.

9. The Computer Chip-sets:


A chipset is a group of small circuits that coordinate
the flow of data to and from a PC's key components.
These key components include the CPU itself, the
Year/ Sem: SE/ IV Academic Year : 2020-21

main memory, the secondary cache, and any devices


situated on the buses.

A chipset also controls data flow to and from hard


disks and other devices connected to the IDE
channels.

10.The CPU Clock:


The CPU clock synchronizes the operation of all
parts of the PC and provides the basic timing signal
for the CPU. Using a quartz crystal, the CPU clock
breathes life into the microprocessor by feeding it a
constant flow of pulses.

Connectors in Mother Board:


There are two primary types of connectors found internally:
1. Socket connectors:
The Serial ATA or SATA connector is used as an
interface for connecting a host bus adapter to a mass
storage device or optical drive. This connector was
designed to replace the older connectors, 34-pin, 40-
pin, etc. This connection type is designed to
communicate at much higher speeds than what were
possible with the older connection styles. This
connection is sometimes referred to as the SATA "L"
due to the shape of the connector.
Year/ Sem: SE/ IV Academic Year : 2020-21

2. Power connectors:
Every PC power supply has special connectors that
attach to the motherboard, giving power to the
system processor, memory, and all slotted add-on
boards (ISA, PCI, AGP). Attaching these connectors
improperly can have a devastating effect on your PC,
including burning up both your power supply and
motherboard. The following sections detail the
motherboard power connectors used by various
power supplies.

DIAGRAM:
Year/ Sem: SE/ IV Academic Year : 2020-21

CONCLUSION: We studied about motherboard, its


connection and its component and learnt more about it.

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.2

AIM: To verify the truth table of various logic gates (basic


and universal gates)

THEORY: A logic gate is an idealized model of


computation or physical electronic device implementing a
Boolean function, a logical operation performed on one or
more binary inputs that produces a single binary output.
Depending on the context, the term may refer to an ideal
logic gate, one that has for instance zero rise time and
Year/ Sem: SE/ IV Academic Year : 2020-21

unlimited fan-out, or it may refer to a non-ideal physical


device (see Ideal and real op-amps for comparison).

Logic gates are primarily implemented using diodes or


transistors acting as electronic switches, but can also be
constructed using vacuum tubes, electromagnetic relays
(relay logic), fluidic logic, pneumatic logic, optics,
molecules, or even mechanical elements. With
amplification, logic gates can be cascaded in the same way
that Boolean functions can be composed, allowing the
construction of a physical model of all of Boolean logic,
and therefore, all of the algorithms and mathematics that
can be described with Boolean logic. Logic circuits include
such devices as multiplexers, registers, arithmetic logic
units (ALUs), and computer memory, all the way up
through complete microprocessors, which may contain
more than 100 million gates. In modern practice, most
gates are made from MOSFETs (metal–oxide–
semiconductor field-effect transistors). Compound logic
gates AND-OR-Invert (AOI) and OR-AND-Invert (OAI)
are often employed in circuit design because their
construction using MOSFETs is simpler and more efficient
than the sum of the individual gates.
Year/ Sem: SE/ IV Academic Year : 2020-21

TRUTH TABLES:

OUTPUT / RESULT:

CONCLUSION: We can verify different logic gates using


stimulator and truth tables.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.3

AIM: To realize Half adder and Full adder

THEORY: An adder is a digital logic circuit in electronics


that is extensively used for the addition of numbers. In
many computers and other types of processors, adders are
even used to calculate addresses and related activities and
calculate table indices in the ALU and even utilized in
other parts of the processors. These can be built for many
numerical representations like excess-3 or binary coded
decimal. Adders are basically classified into two types:
Half Adder and Full Adder.
The half adder circuit has two inputs: A and B, which add
two input digits and generates a carry and a sum. The full
adder circuit has three inputs: A and C, which add three
input numbers and generates a carry and sum. This article
gives detailed information about what is the purpose of a
half adder and full adder in tabular forms and even in
circuit diagrams too. It is already mentioned that the main
and crucial purpose of adders is addition.

TRUTH TABLES:
Year/ Sem: SE/ IV Academic Year : 2020-21

OUTPUT/RESULT:

CONCLUSION: We can analyze Half adder and Full


adder using truth table and stimulator.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.4

AIM: To implement of MUX and DeMUX.

THEORY: Multiplexer means many into one. A


multiplexer is a circuit used to select and route any one of
the several input signals to a single output. A simple
example of a non-electronic circuit of a multiplexer is a
single pole multi-position switch. Multi-position switches
are widely used in many electronics circuits. However,
circuits that operate at high speed require the multiplexer to
be automatically selected. A mechanical switch cannot
perform this task efficiently. Therefore, multiplexer is used
to perform high speed switching are constructed of
electronic components. Multiplexers can handle two type
of data i.e., analog and digital. For analog application,
multiplexer is built using relays and transistor switches. For
digital application, they are built from standard logic gates.
The multiplexer used for digital applications, also called
digital multiplexer, is a circuit with many input but only
one output. By applying control signals (also known as
Year/ Sem: SE/ IV Academic Year : 2020-21

Select Signals), we can steer any input to the output. Some


of the common types of multiplexer are 2-to-1, 4-to-1, 8-to-
1, 16-to-1 multiplexer.Demultiplexer means one to many.
A demultiplexer is a circuit with one input and many
outputs. By applying control signal, we can steer any input
to the output. Few types of demultiplexer are 1-to 2, 1-to-4,
1-to-8 and 1-to 16 demultiplexer. Demultiplexer is used to
connect a single source to multiple destinations. The main
application area of demultiplexer is communication system,
where multiplexers are used. Most of the communication
system are bidirectional i.e., they function in both ways
(transmitting and receiving signals). Hence, for most of the
applications, the multiplexer and demultiplexer work in
sync. Demultiplexer are also used for reconstruction of
parallel data and ALU circuits.

CIRCUIT DIAGRAMS:

MUX:
Year/ Sem: SE/ IV Academic Year : 2020-21

DEMUX:

OUTPUT/RESULT:
Year/ Sem: SE/ IV Academic Year : 2020-21

CONCLUSION: We can implement Multiplexer and


Demultiplexer using stimulator.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.5

AIM: To build a program for 8 bit addition and subtraction

ALGORITHM:
Addition:
Step 1 : Start the microprocessor
Step 2 : Initialize the carry as ‘Zero’
Step 3 : Load the first 8 bit data into the accumulator
Step 4 : Copy the contents of accumulator into the register
‘B’
Step 5 : Load the second 8 bit data into the accumulator.
Step 6 : Add the 2 - 8 bit data and check for carry.
Step 7 : Jump on if no carry
Step 8 : Increment carry if there is
Step 9 : Store the added request in accumulator
Step 10 : More the carry value to accumulator
Step 11 : Store the carry value in accumulator
Step 12 : Stop the program execution.

Subtraction:
Step 1 : Start the microprocessor
Year/ Sem: SE/ IV Academic Year : 2020-21

Step 2 : Initialize the carry as ‘Zero’


Step 3 : Load the first 8 bit data into the accumulator
Step 4 : Copy the contents of contents into the register ‘B’
Step 5 : Load the second 8 bit data into the accumulator.
Step 6 : Subtract the 2 8 bit data and check for borrow.
Step 7 : Jump on if no borrow
Step 8 : Increment borrow if there is
Step 9 : 2’s compliment of accumulator is found out
Step 10 : Store the result in the accumulator
Step 11 : More the borrow value from ‘c’ to accumulator
Step 12 : Store the borrow value in the accumulator
Step 13 : Stop program execution.

FLOWCHART:
Year/ Sem: SE/ IV Academic Year : 2020-21

PROGRAM:

OUTPUT/RESULT:

CONCLUSION: The assembly language program for 8 bit


addition and subtraction of two numbers was executed
Successfully by using micro processing kit.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.6

AIM: To build a program for 8 bit multiplication and


division.

ALGORITHM:
Multiplication:
Step 1 : Start the microprocessor
Step 2 : Get the 1st 8 bit numbers
Step 3 : Move the 1st 8it number to register ‘B’
Step 4 : Get the 2nd 8 bit number
Step 5 : Move the 2nd 8 bit number to register ‘C’
Step 6 : Initialize the accumulator as zero
Step 7 : Initialize the carry as zero
Step 8 : Add both register ‘B’ value as accumulator
Step 9 : Jump on if no carry
Step 10 : Increment carry by 1 if there is
Step 11 : Decrement the 2nd value and repeat from step 8,
till the 2nd value becomes zero.
Step 12 : Store the multiplied value in accumulator
Step 13 : Move the carry value to accumulator
Step 14 : Store the carry value in accumulator
Year/ Sem: SE/ IV Academic Year : 2020-21

Division:
Step 1 : Start the microprocessor
Step 2 : Initialize the Quotient as zero
Step 3 : Load the 1st 8 bit data
Step 4 : Copy the contents of accumulator into register ‘B’
Step 5 : Load the 2nd 8 bit data
Step 6 : Compare both the values
Step 7 : Jump if divisor is greater than dividend
Step 8 : Subtract the dividend value by divisor value
Step 9 : Increment Quotient
Step 10 : Jump to step 7, till the dividend becomes zero
Step 11 : Store the result (Quotient) value in accumulator
Step 12 : Move the remainder value to accumulator
Step 13 : Store the result in accumulator
Step 14 : Stop the program execution

FLOWCHART:
Multiplication:
Year/ Sem: SE/ IV Academic Year : 2020-21

Division:

PROGRAM:

OUTPUT/RESULT:

CONCLUSION: The assembly language program for 8 bit


multiplication and division of two numbers was executed
Successfully by using micro processing kit.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.7

AIM: To develop Program to find even and odd numbers


from a given list.

ALGORITHM:
Step 1: Load the number from memory
Step 2: AND 01H with Acc content
Step 3: If Z = 0, it is Even
Step 4: Load 01H to indicate it is Odd
Step 5: Jump to store
Step 6: Load FFH to indicate it is Even
Step 7: Store the result into memory
Step 8: Terminate the program

FLOWCHART:
Year/ Sem: SE/ IV Academic Year : 2020-21

PROGRAM:

OUTPUT/RESULT:

CONCLUSION: The assembly language program to


check for even and odd number in a given list was executed
Successfully by using micro processing kit.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.8

AIM: To write a program to find largest and smallest


numbers from a given list.

ALGORITHM:
Step 1: Get the size of array
Step 2: Point to actual array
Step 3: Load the first number into B
Step 4: Decrease C
Step 5: Point to next location
Step 6: Get the next number from memory to Acc
Step 7: Compare Acc and B
Step 8: if B > A, then skip (for largest). If B <= A, then
skip (for smallest)
Step 9: If CY is 0 (for largest). If CY is 1 (for smallest),
update B
Step 9: Decrease C
Step 10: When count is not 0, go to LOOP
Step 11: Point to destination address
Step 12: Store the maximum number(largest). minimum
number (smallest)
Year/ Sem: SE/ IV Academic Year : 2020-21

Step 13: Terminate the program

FLOWCHART:

PROGRAM:

OUTPUT/RESULT:

CONCLUSION: The assembly language program to find


largest and smallest number in a given list was executed
Successfully by using micro processing kit.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.9

AIM: Program to write numbers in ascending and


descending order from a given list.

ALGORITHM:
Step 1: Load data from offset 500 to register CL (for
count).
Step 2: Travel from starting memory location to last and
compare two numbers if first number is greater than second
number then swap them. For descending, first number is
smaller than the second
Step 3: First pass fixes the position for last number.
Step 4: Decrease the count by 1.
Step 5: Again, travel from starting memory location to
(last-1, by help of count) and compare two numbers if first
number is greater than second number then swap them. For
descending, first number must be smaller then the second
one.
Step 6: Second pass fix the position for last two numbers.
Step 7: Repeat.
Step 8: Terminate the program.
Year/ Sem: SE/ IV Academic Year : 2020-21

FLOWCHART:

PROGRAM:

OUTPUT/RESULT:

CONCLUSION: The assembly language program to


arrange numbers into ascending and descending order was
executed Successfully by using micro processing kit.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.10

AIM: To build a program and check whether a given string


is a palindrome or not.

ALGORITHM:
Step 1: Create a string
Step 2: Traverse to the end of the string
Step 3: Get the address of the end of the string, DI
Step 4: Load the starting address of the string, SI
Step 5: Compare the value stored at the address
Step 6: Increment the pointer, SI
Step 7: Decrements the pointer, DI
Step 8: Compare again the value stored at SI and DI
Step 9: Repeat the steps until SI<=DI
Step 10: If all the characters match print string is
palindrome else print not palindrome
Step 11: Terminate the program.

FLOWCHART:
Year/ Sem: SE/ IV Academic Year : 2020-21

PROGRAM:

OUTPUT/RESULT:

CONCLUSION: The assembly language program to


check whether the given string is palindrome or not was
executed Successfully by using micro processing kit.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.11

AIM: To generate the first ‘n’ Fibonacci numbers.

ALGORITHM:
Step 1: Move the value stored at offset 00H into CX(this
will act as the counter), and decrement it by 2 (because we
need to explicitly load the first 2 elements of the sequence)
Step 2: Move 00H into AL
Step 3: Move 500 into SI
Step 4: Move AL into [SI]
Step 5: Increment both AL and SI by 1, and store AL’s
value in [SI] (with this, we have loaded the first 2 elements
of the sequence into the memory)
Step 6: Move [SI-1]th value into AL
Step 7: Move [SI]th value into AH0
Step 8: Move 00H into BH
Step 9: Add BH and AH (result stored in BH)
Step 10: Add BH again with AL
Step 11: Increment SI by 1
Step 12: Store BH into [SI]
Step 13: Loop back to Step 6 till counter becomes 0
Year/ Sem: SE/ IV Academic Year : 2020-21

Step 14: Stop

FLOWCHART:

PROGRAM:

OUTPUT/RESULT:

CONCLUSION: The assembly language program to print


Fibonacci sequence was executed Successfully by using
micro processing kit.
Year/ Sem: SE/ IV Academic Year : 2020-21

Subject: Microprocessor Lab (ITL-403)


Name: Insha Mulla
Roll Number: 34 Exam No.: 192054201

EXPERIMENT NO.12

AIM: Study of Interfacing with 8086 microprocessors: 2.


Interfacing keyboard matrix.

THEORY:

Interfacing a Microprocessor to Keyboard:


When you press a key on your computer, you are activating
a switch. There are many different ways of making these
switches. An overview of the construction and operation of
some of the most common types.
1)Mechanical key switches: In mechanical-switch keys,
two pieces of metal are pushed together when you press the
key. The actual switch elements are often made of a
phosphor-bronze alloy with gold platting on the contact
areas. The key switch usually contains a spring to return the
key to the non-pressed position and perhaps a small piece
of foam to help damp out bouncing. Some mechanical key
Year/ Sem: SE/ IV Academic Year : 2020-21

switches now consist of a molded silicon dome with a


small piece of conductive rubber foam short two trace on
the printed-circuit board to produce the key pressed signal.
Mechanical switches are relatively inexpensive but they
have several disadvantages. First, they suffer from contact
bounce. A pressed key may make and break contact several
times before it makes solid contact. Second, the contacts
may become oxidized or dirty with age so they no longer
make a dependable connection.
Higher- quality mechanical switches typically have a rated
life time of about 1 million keystrokes. The silicone dome
type typically last 25 million keystrokes.
2)Membrane key switches: These switches are really a
special type of mechanical switches. They consist of a
three-layer plastic or rubber sandwich. The top layer has a
conductive line of silver ink running under each key
position. The bottom layer has a conductive line of silver
ink running under each column of keys.
Once we are sure that one of key in the key board is
pressed next our aim is to identify that key. To do this we
firstly check for particular row and then we check the
corresponding column the key board. Once we get the row
next out job is to find out the column of the pressed key.
The column is detected by contents in the input ports with
the help of a counter. The content of the input port is
rotated with carry until the carry bit is set. The contents of
the counter is then compared and displayed in the display.
This display is designed using a seven segment display and
a BCD to seven segment decoder IC 7447. The BCD
equivalent number of counter is sent through output part of
8051 displays the number of pressed key.
Year/ Sem: SE/ IV Academic Year : 2020-21

• To give directions or data values to users, many


microprocessor-controlled instruments and machines need
to display letters of the alphabet and numbers. In systems
where a large amount of data needs to be displayed a CRT
is used to display the data. In system where only a small
amount of data needs to be displayed, simple digit-type
displays are often used.
• There are several technologies used to make these digit-
oriented displays but we are discussing only the two major
types.
• These are light emitting diodes (LED) and liquid-crystal
displays (LCD).
• LCD displays use very low power, so they are often used
in portable, battery-powered instruments. They do not emit
their own light; they simply change the reflection of
available light. Therefore, for an instrument that is to be
used in low-light conditions, you have to include a light
source for LCDs or use LEDs which emit their own light.
Year/ Sem: SE/ IV Academic Year : 2020-21

DIAGRAM:
Year/ Sem: SE/ IV Academic Year : 2020-21

CONCLUSION: Studied about interfacing of 8086


microprocessor and its keyboard matrix.

You might also like