0% found this document useful (0 votes)
12 views4 pages

Lab Manual 1

The document discusses different types of registers found in a typical computer architecture and their purposes. It describes the program counter, data registers, address registers, accumulator, instruction register, temporary registers, and input/output registers. It also defines a multiplexer as a device that has multiple inputs and a single output line, using select lines to determine which input is connected to the output.

Uploaded by

millimalaika07
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views4 pages

Lab Manual 1

The document discusses different types of registers found in a typical computer architecture and their purposes. It describes the program counter, data registers, address registers, accumulator, instruction register, temporary registers, and input/output registers. It also defines a multiplexer as a device that has multiple inputs and a single output line, using select lines to determine which input is connected to the output.

Uploaded by

millimalaika07
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Gujrat Institute of Management Sciences

PMAS-ARID Agriculture University Rawalpindi

Computer Organization and Assembly Language


Course Code: CS-530
4th Semester, Computer Science
Course Instructor: Aliza Falak

Lab Manual, Week 1


Gujrat Institute of Management Sciences
PMAS-ARID Agriculture University Rawalpindi

Types and Purposes of Registers & Mux


In a Computer Organization course, understanding registers is fundamental as they play a crucial
role in the architecture and operation of a computer's CPU (Central Processing Unit). Registers
are small, high-speed storage locations within the CPU that hold data temporarily during
processing. Each register has a specific purpose and function in executing instructions and
managing data flow within the CPU. Here are the common types of registers found in a typical
computer architecture along with their purposes:
Program Counter
 The program is stored at the beginning of the memory with the first instruction at binary
address 0000, the second instruction at address 0001, the third at address 0010, and so on.
 The program counter, which is part of the control unit, counts from 0000 to 1111.
 Its job is to send to the memory the address of the next instruction to be fetched and
executed. It does this as follows.
(a) The program counter is reset to 0000 before each computer run.
(b) When the computer run begins, the program counter sends address 0000 to the
memory.
(c) The program counter is then incremented to get 0001.
(d) After the first instruction is fetched and executed, the program counter sends address 0001 to
the memory.
(e) Again, the program counter is incremented.
(f) After the second instruction is fetched and executed, the program counter sends
address 0010 to the memory.
 In this way, the program counter is keeping track of the next instruction to be fetched and
executed.
 The program counter is like someone pointing a finger at a list of instructions, saying do
this first, do this second do this third, etc.
 This is why the program counter is sometimes called a pointer; it points to an address in
memory where something important is being stored.
Data Registers
Data registers hold data that is being processed or manipulated by the CPU. They are used for
arithmetic operations, data movement, and temporary storage of operands and results.
Gujrat Institute of Management Sciences
PMAS-ARID Agriculture University Rawalpindi
Address Registers (Index Registers)
Address registers store memory addresses used for accessing data in memory. They are often
used in memory operations such as loading and storing data to/from memory.
Accumulator
The accumulator register is a special-purpose register in the CPU that is used for performing
arithmetic and logic operations. It holds one of the operands during arithmetic or logic
operations, and it typically stores the result of the operation as well. The accumulator is often
used as a temporary storage location for intermediate results in arithmetic calculations.
Instruction Register
The instruction register (IR) holds the currently fetched instruction from memory. It serves as a
buffer between the CPU and memory, allowing the CPU to fetch instructions and decode them
for execution. The IR holds the opcode (operation code) of the instruction, which determines the
operation to be performed, as well as any operands or addressing modes associated with the
instruction.
Temporary Register
Temporary registers, also known as scratch registers or working registers, are general-purpose
registers used for temporary storage of data during computation. They are often used to hold
intermediate results or operands during arithmetic and logic operations.
Description: Temporary registers are not dedicated to specific tasks like the accumulator or
instruction register. Instead, they can be used for various purposes depending on the
requirements of the program being executed. Temporary registers are typically part of the CPU's
register file and are accessible to the CPU's arithmetic and logic units.
Input and Output Registers:
Input and output (I/O) registers are used for communication between the CPU and external
devices such as peripherals, memory-mapped I/O devices, or input/output ports. Input registers
receive data from external devices, while output registers transmit data to external devices.
Description: Input and output registers serve as buffers between the CPU and external devices,
allowing data to be transferred between the CPU and peripherals in a controlled manner. Input
registers hold data received from external devices until it can be processed by the CPU, while
output registers hold data generated by the CPU until it can be transmitted to external devices.
Multiplexer
Multiplexer is a device that has multiple inputs and a single line output. The select lines
determine which input is connected to the output, and also to increase the amount of data that can
be sent over a network within certain time. It is also called a data selector.
Gujrat Institute of Management Sciences
PMAS-ARID Agriculture University Rawalpindi

You might also like